【导语】:EasyOCR 是一个用 Python 编写的 OCR 库,用于辨认图像中的文字并输入为文本,反对 80 多种语言。
简介
EasyOCR 是 python 中一个不错的 OCR 库,在GitHub已有 10.3K star。目前反对80多种语言,包含中文、日文、韩文和泰文等。
下载安装
- 我的项目地址:https://github.com/JaidedAI/E...
- 教程地址:https://www.jaided.ai/easyocr...
- API文档:https://www.jaided.ai/easyocr...
EasyOCR装置办法很简略,间接应用pip装置,有以下两种装置命令:
- 装置稳固版本
pip install easyocr
- 装置最新版本
pip install git+git://github.com/jaidedai/easyocr.git
须要留神的是,如果在Windows下装置,须要先装置 torch 和 torchvision(装置办法详见官网网址 https://pytorch.org)。在 pytorch 网站上,肯定要抉择正确的CUDA版本。如果只想在CPU模式下运行,请抉择 CUDA = None。
另外,开发者还提供了docker文件,详见:https://github.com/JaidedAI/E...
简略应用
装置好环境后,应用以下命令进行体验图片辨认:
import easyocr # 创立reader对象,指定语言为简写中文 # 该命令只须要运行一次就能够将model加载到内存中 reader = easyocr.Reader(['ch_sim','en']) # 读取图像 result = reader.readtext('chinese.jpg')
其中 chinese.jpg 为
输入为列表格局,每个我的项目别离代表边界框、文本和自信级别:
[([[189, 75], [469, 75], [469, 165], [189, 165]], '愚园路', 0.3754989504814148), ([[86, 80], [134, 80], [134, 128], [86, 128]], '西', 0.40452659130096436), ([[517, 81], [565, 81], [565, 123], [517, 123]], '东', 0.9989598989486694), ([[78, 126], [136, 126], [136, 156], [78, 156]], '315', 0.8125889301300049), ([[514, 126], [574, 126], [574, 156], [514, 156]], '309', 0.4971577227115631), ([[226, 170], [414, 170], [414, 220], [226, 220]], 'Yuyuan Rd.', 0.8261902332305908), ([[79, 173], [125, 173], [125, 213], [79, 213]], 'W', 0.9848111271858215), ([[529, 173], [569, 173], [569, 213], [529, 213]], 'E', 0.8405593633651733)]
能够通过应用detail = 0简化输入:
reader.readtext('chinese.jpg', detail = 0)
输入后果如下:
['愚园路', '西', '东', '315', '309', 'Yuyuan Rd.', 'W', 'E']
如果没有GPU或者GPU内存不足,能够通过增加GPU = False在CPU模式下运行:
reader = easyocr.Reader(['ch_sim','en'], gpu = False)
另外,也能够通过命令行应用如下:
$ easyocr -l ch_sim en -f chinese.jpg --detail=1 --gpu=True
疾速体验
不想在本地装置环境的敌人能够在开发者提供的colab地址上体验:https://colab.fan/easyocr
小秋在colab上尝试了几张图,成果如下:
- 辨认泰文图片
辨认后果:
[([[142, 232], [500, 232], [500, 361], [142, 361]], '', 0.10795291513204575), ([[177, 483], [385, 483], [385, 573], [177, 573]], '', 0.5405621528625488)]
- 辨认日文图片
辨认后果:
[([[71, 49], [489, 49], [489, 159], [71, 159]], 'ポ<捨て禁止!', 0.6339455246925354), ([[95, 149], [461, 149], [461, 235], [95, 235]], 'NOLITTER', 0.32494133710861206), ([[80, 232], [475, 232], [475, 288], [80, 288]], '清潔できれいな港区を', 0.9784266948699951), ([[109, 289], [437, 289], [437, 333], [109, 333]], '港 区 MINATO CITY', 0.18789240717887878)]
- 辨认韩文图片
辨认后果
[([[129, 79], [292, 79], [292, 183], [129, 183]], '서울', 0.9718754291534424), ([[368, 101], [531, 101], [531, 201], [368, 201]], '평양', 0.9701955914497375), ([[159, 176], [258, 176], [258, 232], [159, 232]], 'Seoul', 0.8239477872848511), ([[342, 189], [539, 189], [539, 262], [342, 262]], 'Pyeongyang', 0.3527982532978058), ([[186, 276], [289, 276], [289, 333], [186, 333]], '56Km', 0.6299729943275452), ([[344, 288], [461, 288], [461, 344], [344, 344]], '205Km', 0.38107678294181824)]
结语
EasyOCR 就简略介绍到这里了,感兴趣的敌人能够到我的项目主页理解更多详情。
开源前哨
日常分享热门、乏味和实用的开源我的项目。参加保护 10万+ Star 的开源技术资源库,包含:Python、Java、C/C++、Go、JS、CSS、Node.js、PHP、.NET 等。