微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Python怎么使用EasyOCR工具识别图像文本

本文小编为大家详细介绍“Python怎么使用EasyOCR工具识别图像文本”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python怎么使用EasyOCR工具识别图像文本”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

什么是 EasyOCR ?

描述: EasyOCR 是一个用于从图像中提取文本的 python 模块, 它是一种通用的 OCR,既可以读取自然场景文本,也可以读取文档中的密集文本。目前支持 80 多种语言和所有流行的书写脚本,包括:拉丁文、中文、阿拉伯文、梵文、西里尔文等。

EasyOCR 是 PyTorch 实现的一个光学字符识别 (OCR) 工具。

Q: 使用 EasyOCR 可以干什么?

描述: EasyOCR 支持两种方式运行一种是常用的cpu,而另外一种是需要GPU支持并且需安装CUDA环境, 我们使用其可以进行图片中语言文字识别, 例如小程序图片识别、车辆车牌识别(即车债管理系统)。

安装 EasyOCR

在命令窗口中,使用 pip 安装 EasyOCR 稳定版本。

pip install easyocr

使用 EasyOCR

import easyocr

reader = easyocr.Reader(
    ['ch_sim', 'en'],
    gpu=False,
    model_storage_directory='model/.',
    user_network_directory='model/.',
)
result = reader.readtext('examples/chinese.jpg')

执行上面的代码时,会自动通过网络下载检测与识别模型到指定目录下。

  • ['ch_sim', 'en'],: 指定识别的语言

  • gpu=False,: 设置是否使用GPU (EasyOCR在GPU上运行效率更高, 没有GPU或者GPU内存不足时设置False)

  • model_storage_directory='model/.',: 检测与识别模型的存储路径 (没有设置时认存储在~/.EasyOCR/model目录)

识别结果 result一个列表,列表中的每一项都是一个长度为 3 的识别结果,例如 ([[189, 75], [469, 75], [469, 165], [189, 165]], '愚园路', 0.3754989504814148),它们分别是 边界框检测到的文本置信度 值。

easyocr-server

EasyOCR 服务器一个用于从图像中提取文本。它是一种通用的 OCR,既可以读取自然场景文本,也可以读取文档中的密集文本。目前支持 80+ 种语言,并且还在扩展。

安装步骤

步骤 0. 从 GitHub 下载 easyocr-server 并安装。

git clone https://github.com/hekaiyou/easyocr-server.git

步骤 1. 使用 PyPI 安装 easyocr、 bottle 和 gevent 模块。

cd easyocr-server
pip install -r requirements.txt

验证安装

python main.py
  • browser: http://localhost:8080/ocr/

  • CMD: curl http://localhost:8080/ocr/ -F "language=en" -F "img_file=@examples/english.png"

验证成功后,您应该能够在浏览器中看到打印的推理结果。

Python怎么使用EasyOCR工具识别图像文本

通过 Docker 部署服务

我们提供了一个 Dockerfile 来构建镜像。

docker build -t easyocr-server:latest .

运行它。

docker run -it -v {data_dir}:/workspace/model -p 8083:8080 easyocr-server:latest
Language Code Name
Abaza abq
Adyghe ady
Afrikaans af
Angika ang
arabic ar
Assamese as
Avar ava
Azerbaijani az
Belarusian be
Bulgarian bg
Bihari bh
Bhojpuri bho
Bengali bn
Bosnian bs
Simplified Chinese ch_sim
Traditional Chinese ch_tra
Chechen che
Czech cs
Welsh cy
Danish da
Dargwa dar
German de
English en
Spanish es
Estonian et
Persian (Farsi) fa
french fr
Irish ga
Goan Konkani gom
hindi hi
Croatian hr
Hungarian hu
Indonesian id
Ingush inh
Icelandic is
Italian it
Japanese ja
Kabardian kbd
Kannada kn
Korean ko
Kurdish ku
Latin la
Lak lbe
Lezghian lez
Lithuanian lt
Latvian lv
Magahi mah
Maithili mai
Maori mi
Mongolian mn
Marathi mr
Malay ms
Maltese mt
Nepali ne
Newari new
Dutch nl
norwegian no
Occitan oc
Pali pi
Polish pl
Portuguese pt
Romanian ro
Russian ru
Serbian (cyrillic) rs_cyrillic
Serbian (latin) rs_latin
Nagpuri sck
Slovak sk
Slovenian sl
Albanian sq
Swedish sv
Swahili sw
Tamil ta
TabasSaran tab
Telugu te
Thai th
Tajik tjk
Tagalog tl
Turkish tr
Uyghur ug
Ukranian uk
Urdu ur
Uzbek uz
Vietnamese vi

读到这里,这篇“Python怎么使用EasyOCR工具识别图像文本”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容文章,欢迎关注编程之家行业资讯频道。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐