0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

easyocr:超级简单且强大的OCR文本识别工具

科技绿洲 来源:Python实用宝典 作者:Python实用宝典 2023-10-30 09:30 次阅读

今天给大家介绍一个超级简单且强大的OCR文本识别工具: easyocr .

这个模块支持70多种语言的即用型OCR,包括中文,日文,韩文和泰文等。

下面是这个模块的实战教程

1.准备

开始之前,你要确保Pythonpip已经成功安装在电脑上,如果没有,可以访问这篇文章:超详细Python安装指南 进行安装。

如果你用Python的目的是数据分析,可以直接安装Anaconda:Python数据分析与挖掘好帮手—Anaconda,它内置了Python和pip.

此外,推荐大家用VSCode编辑器,它有许多的优点:Python 编程的最好搭档—VSCode 详细指南

请选择以下任一种方式输入命令安装依赖

  1. Windows 环境 打开 Cmd (开始-运行-CMD)。
  2. MacOS 环境 打开 Terminal (command+空格输入Terminal)。
  3. 如果你用的是 VSCode编辑器 或 Pycharm,可以直接使用界面下方的Terminal.
pip install easyocr

它会安装除了模型文件之外的所有依赖,模型文件则会在运行代码的时候下载

对于Windows,如果在安装 Torch 或 Torchvision 时报错了,请按照https://pytorch.org 的官方说明安装 Torch 和 Torchvision。

如果你想使用显卡进行计算,你需要搜索下载CUDA,并在Pytorch网站上,确保选择正确的CUDA版本。如果仅打算在CPU模式下运行,请选择CUDA = None。

2.实战教程

这个模块用起来真的非常简单,三行代码完事了:

import easyocr
reader = easyocr.Reader(['ch_sim','en'])
result = reader.readtext('test.png')

运行的过程中会安装所需要的模型文件,像下面这样:

图片

不过它的下载速度非常慢,而且经常会失败,因此这里给出第二个解决方案:先下载好模型文件,再将其放置到所需要的位置:

上滑查看更多

文字检测模型(CRAFT)(必须)

https://pythondict.com/go/?url=https://github.com/JaidedAI/EasyOCR/releases/download/pre-v1.1.6/craft_mlt_25k.zip

中文(简体)模型(识别中文必须)

https://pythondict.com/go/?url=https://github.com/JaidedAI/EasyOCR/releases/download/pre-v1.1.6/chinese_sim.zip

中国(传统)模型

https://pythondict.com/go/?url=https://github.com/JaidedAI/EasyOCR/releases/download/pre-v1.1.6/chinese.zip

拉丁模型

https://pythondict.com/go/?url=https://github.com/JaidedAI/EasyOCR/releases/download/pre-v1.1.6/latin.zip

日本模型

https://pythondict.com/go/?url=https://github.com/JaidedAI/EasyOCR/releases/download/pre-v1.1.6/japanese.zip

韩文模型

https://pythondict.com/go/?url=https://github.com/JaidedAI/EasyOCR/releases/download/pre-v1.1.6/korean.zip

泰文模型

https://pythondict.com/go/?url=https://github.com/JaidedAI/EasyOCR/releases/download/pre-v1.1.6/thai.zip

阿拉伯文模型

https://pythondict.com/go/?url=https://github.com/JaidedAI/EasyOCR/releases/download/pre-v1.1.6/arabic.zip

如果下载速度太慢,请在Python实用宝典公众号后台回复: easyocr , 下载我上传到微云网盘的文字检测模型(CRAFT)和中文简体模型文件包。

下载完模型后,将文件放到下面这个位置。

Windows:C:Users用户名.EasyOCRmodel
Linux~/ .EasyOCR / model

**如下图所示:
**

图片

重新执行脚本不会再提醒下载模型了:

import easyocr
reader = easyocr.Reader(['ch_sim'])
result = reader.readtext('test.png')
print(result)

我随便截了一个直播弹幕的图片保存在脚本所在的文件夹下,命名为test.png:

结果如下:

图片

基本上所有应该识别的文字都识别出来了,效果非常不错。

另外也可以看到,输出采用列表格式,每个item分别表示对应文字的边界框,识别文本结果和置信度。

这个模块还能识别多语种的情况:

我将这张图片命名为test2.jpg,修改代码中对应的图片名称:

import easyocr
reader = easyocr.Reader(['ch_sim','en'])
result = reader.readtext('test2.jpg')
print(result)

效果如下:

图片

这张图片很复杂,而且是中英文混杂在一起的情况,但是可以看到模型除了左上角的水印,图片中的文字基本都是识别出来了,尽管有部分文字识别错误,但还在可以接受的范围之内。

不过需要注意的是,虽然可以一次性识别许多种语言,但并非所有语言都可以一起用,通常是公共语言和一个特殊语种可以一起识别,相互兼容,比如英语和日语。

如果你的电脑没有GPU或者显存不足,可以加一个gpu=false的参数仅使用CPU运行:

reader = easyocr.Reader(['ch_sim','en'], gpu = False)

另外,这个模块还支持直接使用命令行运行,相当方便,大家可以试试:

easyocr -l ch_sim en -f test.png --detail=1 --gpu=True
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 模型
    +关注

    关注

    1

    文章

    3103

    浏览量

    48639
  • python
    +关注

    关注

    55

    文章

    4765

    浏览量

    84353
  • OCR
    OCR
    +关注

    关注

    0

    文章

    142

    浏览量

    16304
收藏 人收藏

    评论

    相关推荐

    首发 | 告别手动录入,开放平台OCR上线印刷文字识别

    的就是印刷字体的转化。二、印刷文字识别应用广泛正如文章开头我们提到的,生活中有很多需要将印刷字体转换为设备可编辑的文本场景。而作为OCR家族的重要成员,印刷文字识别在这时候就大有作为,
    发表于 05-17 15:18

    Python OCR 识别库-ddddocr

    ;, 'rb') as f: image = f.read()res = ocr.classification(image)print(res)识别结果3n3d8342总结ddddocr 让验证码变得如此简单
    发表于 03-30 17:26

    【KV260视觉入门套件试用体验】七、VITis AI字符和文本检测(OCR&Textmountain)

    _pt sample_ocr.jpg OCR 该网络用于光学字符识别,包括文本检测和文本识别
    发表于 09-26 16:31

    什么是OCR

    什么是OCR OCR的英文全称: OCR是英文Optical Character Recognition的缩写,意思是光学字符识别,也可简单
    发表于 04-10 12:55 6647次阅读

    基于FPGA的OCR文字识别技术的深度解析

    OCR在通用文字识别等场景下有广泛应用,基于FPGA异构加速的OCR识别相比CPU/GPU实现具有延时小、成本低的优势。我们设计了多FPGA芯片协同的异构加速架构,能快速适配业务
    发表于 01-26 12:19 3968次阅读

    关于开放平台OCR上线印刷文字识别的介绍

    我们为什么用OCR?因为可以快速将文字转为可在设备上编辑的数字文本。因此能够得到用户青睐的OCR小编认为应能够准确生成文本,所见即所得,同时对不同字体,不同环境,不同颜色形状的
    的头像 发表于 09-27 09:51 2598次阅读

    如何使用Python开发截图识别OCR的小工具

     你一定用过那种“OCR神器”,可以把图片中的文字提取出来,极大的提高工作效率。今天,我们就来做一款实时截图识别的小工具。顾名思义,运行程序时,可以实时的把你截出来的图片中的文字识别
    的头像 发表于 01-04 11:27 3463次阅读

    OCR识别技术

    在爬虫对验证码进行破解时,经常需要对图片中的文字内容进行识别,这时就需要用到OCR技术了,那么 OCR识别技术是如何实现对文字内容“即拍即得”的呢?
    的头像 发表于 03-12 09:07 4748次阅读

    机器视觉运动控制一体机应用例程|OCR字符识别应用

    应用背景 OCR字符识别的应用场景非常广泛,例如在生产型企业领域中,OCR具有多样性的应用,比如读取仪表仪器上的文本,进行实时监控、读取产品上的生产日期、批号,以此来获得产品的信息和可
    的头像 发表于 02-24 17:27 1356次阅读
    机器视觉运动控制一体机应用例程|<b class='flag-5'>OCR</b>字符<b class='flag-5'>识别</b>应用

    树洞OCR文字识别跨平台的OCR工具

    ./oschina_soft/tools-ocr.zip
    发表于 05-30 09:42 5次下载
    树洞<b class='flag-5'>OCR</b>文字<b class='flag-5'>识别</b>跨平台的<b class='flag-5'>OCR</b>小<b class='flag-5'>工具</b>

    OCR算法能较好识别水平排布的常规文本

    OCR技术发展到今天,对于常规文本识别已经达到了较高的准确率。
    的头像 发表于 08-08 16:04 1308次阅读

    OCR光学图文识别

    使用OCR功能,您可以简单地将扫描的PDF和基于图像的PDF转换为具有可编辑、可选择和可搜索内容的各种格式,例如MicrosoftOffice格式、PPT、页面或纯文本文档(TXT文件)。
    的头像 发表于 08-19 15:23 846次阅读

    OCR实战教程

    OCR 是光学字符识别(英语:Optical Character Recognition,OCR)是指对文本资料的图像文件进行分析识别处理,
    的头像 发表于 02-24 10:36 935次阅读
    <b class='flag-5'>OCR</b>实战教程

    介绍一款简单强大的时序图绘制工具

    Wavedrom 是一款功能强大简单易用的文本转图表工具,被广泛应用于生成时序图、波形图等交互式波形。其特点在于使用
    的头像 发表于 08-15 12:26 1.1w次阅读
    介绍一款<b class='flag-5'>简单</b><b class='flag-5'>强大</b>的时序图绘制<b class='flag-5'>工具</b>

    OCR如何自动识别图片文字

    OCR 是光学字符识别(英语:Optical Character Recognition,OCR)是指对文本资料的图像文件进行分析识别处理,
    的头像 发表于 10-31 16:45 726次阅读
    <b class='flag-5'>OCR</b>如何自动<b class='flag-5'>识别</b>图片文字