本地部署EasyOCR.md
1. 安装Python
下载并安装Python。
2. 创建虚拟环境
python -m venv test_EasyOCR
3. 激活虚拟环境
在windows下使用命令
test_EasyOCR\Scripts\activate
在linux系统下使用命令
source test_EasyOCR/bin/activate
4. 安装easyOCR
先升级pip
python -m pip install --upgrade pip -i https://pypi.tuna.tsinghua.edu.cn/simple
然后安装,一共有4个依赖包,执行命令一起安装
pip install torch torchvision torchaudio easyocr -i https://pypi.tuna.tsinghua.edu.cn/simple
注意:如果你的电脑上已经有了torch,
那么在安装easyOCR时,需要添加参数–no-deps,
以避免版本冲突。
5.下载模型
到页面 https://www.jaided.ai/easyocr/modelhub/ 下载 2rd Generation Models
下的english_g2
和zh_sim_g2
,以及Text Detection Models
下的CRAFT
,点击即可。
下载之后,将文件解压得到.pth
后缀的文件并放到用户目录中,其中:
- Windows电脑放在
C:\Users\yourname.EasyOCR\model
,其中yourname
是登录用户名。比如,如果用户名是administrator,那么就是C:\Users\Administrator\.EasyOCR\model
- Linux电脑放在
/home/yourname/.EasyOCR/model
中,其中yourname
是登录用户名。比如,如果用户名是xx,那么就是/home/xx/.EasyOCR/model
请确保这个路径存在!
6. 使用
编写python代码
import easyocr
reader = easyocr.Reader(['ch_sim','en']) # 只需要运行一次就可以将模型加载到内存中
# reader = easyocr.Reader(['ch_sim','en'],gpu = False) # 如果您没有GPU或GPU的内存不足,则可以通过添加gpu = False在CPU模式下运行它
result = reader.readtext('chinese.jpg')
# result = reader.readtext('chinese.jpg', detail = 0) # 将detail设置为0,以简化输出。
print(result)
注意:
在运行上面的例子时,有可能会提示Downloading recognition model, please wait. This may take several minutes depending upon your network connection.
这是因为使用ch_sim
参数时,我们刚才下载的3个模型不够,它会自己再下载另一个模型(需要联网),模型文件是zh_sim_g2.pth
。
7. 将EasyOCR安装到没有互联网环境的电脑上
- 在已经部署好EasyOCR的联网环境的电脑上执行命令
pip list --format=freeze > requirements.txt
pip download -d easyOCR_packagesDir -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
- 将
easyOCR_packagesDir
文件夹和requirements.txt
文件以及刚才提到的4个模型文件复制到没有联网的电脑上 - 在没有联网的电脑上执行命令创建虚拟环境
python -m venv test_EasyOCR
然后进行离线安装,以下是windows电脑上的命令,其中的path/to
是虚拟环境的路径,比如:F:\python_envs\
path/to/test_EasyOCR/Scripts/python.exe -m pip install --no-index --find-links=easyOCR_packagesDir -r requirements.txt
- 存放模型
将拷贝过来的4个.pth格式的模型文件放到指定的位置(见上文)。
此时,可以在这台没有互联网环境的电脑上进行图片中文字的识别。