pytesseract and ddddocr
一.pytesseract
1.简介
Pytesseract是一个Python库,用于将图像中的文本转换为可编辑的字符串。它是基于Google的Tesseract OCR引擎开发的 。Tesseract是一个开源的OCR引擎,能够识别超过100种语言的文字。Pytesseract简化了与Tesseract的集成过程,并提供了一个简单的API,使得在Python中使用OCR功能变得更加容易
2.环境配置
1)下载程序并安装,下载地址:https://digi.bib.uni-mannheim.de/tesseract/

安装的时候记得勾选下载的语言,全选即可。
2)终端下载pytesseract库
pip install pytesseract
下载安装完成之后在当前项目下找到venv\Lib\site-packages\pytesseract\pytesseract.py文件,修改tesseract_cmd值

3.基本用法
我们要识别图片文字,最常用的方法就是image_to_string,语法如下,通常使用时传两个参数即可,要识别的图片和语言类型
def image_to_string(
image,
lang=None,
config='',
nice=0,
output_type=Output.STRING,
timeout=0,
):
下面看下实例
result_text = pytesseract.image_to_string("./img/img_5.png", lang='chi_sim')
# 输出结果
print(result_text)
如果涉及到识别的图片中存在多种语言,可以在lang中添加多种语言,用+号连接起来
import pytesseract
from PIL import Image
img = Image.open(url)
text = pytesseract.image_to_string(img, lang='chi_sim+eng') # 识别中文和英文
各种语言类型如下图
eng |
英文 |
chi_sim |
简体中文 |
chi_tra |
繁体中文 |
ara |
阿拉伯文 |
jpn |
日文 |
kor |
韩文 |
spa |
西班牙文 |
fra |
法文 |
| deu | 德文 |
| ita | 意大利文 |
| por | 葡挞文 |
| rus | 俄文 |
| vie | 越南文 |
| tha | 泰文 |
| tur | 土耳其文 |
| dan | 丹麦文 |
| nld | 荷兰文 |
| fin | 芬兰文 |
| nor | 挪威文 |
| swe | 瑞典文 |
| hun | 匈牙利文 |
| cze | 捷克文 |
| pol | 波兰文 |
| slk | 斯洛伐克文 |
| slv | 斯洛文尼亚文 |
| bul | 保加利亚文 |
| ell | 希腊文 |
| est | 爱沙尼亚文 |
| lit | 立陶宛文 |
| lav | 拉脱维亚文 |
| ron | 罗马尼亚文 |
| srp | 塞尔尼亚文 |
| ukr | 乌克兰文 |
| hin | 印地文 |
| ben | 孟加拉文 |
| mar | 马拉地文 |
| tam | 泰米尔文 |
| tel | 泰卢固问 |
| kan | 卡纳达文 |
| mal | 玛拉雅拉姆文 |
| orl | 奥里亚文 |
| pan | 旁遮普文 |
| guj | 古吉拉特文 |
| sin | 僧伽罗文 |
| mya | 缅甸文 |
二.ddddocr
1.简介
OCR是一种将印刷或手 写文本转换为可编辑文本的技术。ddddOCR利用深度学习算法识别图像中的字符,并将其转换为可编辑的文本。它可以应用于各种场景, 如扫描文档、图像识别、车牌识别等。ddddOCR具有高准确性和高效率,可以在短时间内处理大量的图像,并能够适应不同的字体和文字 样式。它可以应用于各种领域,如办公自动化、数据输入、图像处理等。
2.环境配置
pip install ddddocr
3.基本用法
import ddddocr ocr1 = ddddocr.DdddOcr() # 实例化
with open("./img_2.png", 'rb') as f:
img_bytes = f.read()
result_text = ocr1.classification(img_bytes)
print(result_text)
个人觉得ddddocr识别的特不准,毕竟是免费的,要想准确识别可以参考超级鹰:https://www.cnblogs.com/lihongtaoya/p/16727694.html
pytesseract and ddddocr的更多相关文章
- 关于在 mac上配置pytesseract的相关问题
因为踩了两个小时坑 特别是在配置依赖tesseract-ORC识别库时候的问题 特别麻烦 一定要用brewhome 一定要用brewhome 一定要用brewhome 重要的事情说三遍. 刚开始我在网 ...
- Tesseract pytesseract的安装和使用
Tesseract是开源的OCR引擎,可以识别的图片里的文字,支持unicode(UTF-8)编码,100多种语言,需要下载相应语言的训练数据. 安装: 有两种方法,一种是通过编译源码,比较麻烦.我使 ...
- pytesseract使用
1.安装pip install pytesseract 2.安装tesseract-ocr,下载地址:https://github.com/UB-Mannheim/tesseract/wiki,我安装 ...
- python识别验证码——PIL,pytesser,pytesseract的安装
1.使用Python识别验证码需要安装Python的图像处理模块(PIL.pytesser.pytesseract) (安装过程需要pip,在我的Python中已经安装pip了,pip的安装就不在赘述 ...
- python 验证码识别库pytesseract的使用
笔者环境 centos7 python3 pytesseract只是tesseract-ocr的一种实现接口.所以要先安装tesseract-ocr(大名鼎鼎的开源的OCR识别引擎). 依赖安装 yu ...
- python下调用pytesseract识别某网站验证码
一.pytesseract介绍 1.pytesseract说明 pytesseract最新版本0.1.6,网址:https://pypi.python.org/pypi/pytesseract Pyt ...
- 使用pytesseract出现的问题
dyld: Library not loaded: /usr/local/opt/jpeg/lib/libjpeg.8.dylib Referenced from: /usr/local/lib/li ...
- pytesseract在识别只有一个数字的图片时识别不出来
大家好,近期在做自动化测试时,遇到了一个问题需要通过识别图片来实现,遂用到了pytesseract模块和tesseract-ocr这个工具.在使用过程中发现,识别带有数字的图片时,如果这个图片上仅有一 ...
- mac使用pytesseract
import locale locale.setlocale(locale.LC_ALL, 'C') import pytesseract import pathlib import tracebac ...
- [python] python3.6 安装 pytesseract 出错
安装pytesseact出错, 下载 tesseract-ocr , 地址 https://github.com/tesseract-ocr/tesseract 修改pytesseract.py 设置 ...
随机推荐
- JS逆向实战13——某市公共资源交易中心Cookie混淆加密
"本文地址:https://www.cnblogs.com/zichliang/p/17346860.html 目标网站 aHR0cDovL2xkZ2d6eS5obmxvdWRpLmdvdi ...
- JVM有意思的图-持续更新
放一些JVM有意思的图 通过一行代码联想JVM:
- Python 函数及参数的使用
函数 带名字的代码块,用于完成具体的工作 关键字def定义一个函数,定义函数名,括号内是需要完成任务所需要的信息,最后定义冒号结尾 缩进构成函数体 函数调用,依次指定函数名以及冒号括起来的必要信息 d ...
- [C++核心编程] 2、引用
文章目录 2 引用 2.1 引用的基本使用 2.2 引用注意事项 2.3 引用做函数参数 2.4 引用做函数返回值 2.5 引用的本质 2.6 常量引用 2 引用 2.1 引用的基本使用 **作用: ...
- 从源码深入理解读写锁(golang-RWMutex)
环境:go 1.19.8 在读多写少的情况下,即使一段时间内没有写操作,大量并发的读访问也不得不在Mutex的保护下变成串行访问,这种情况下,使用Mutex,对性能影响比较大. 所以就要区分读写操作. ...
- PaddlePaddle 飞桨复现 ResNeXt
import paddle.nn as nn import paddle class BN_Conv2D(nn.Layer): """ BN_CONV_RELU &quo ...
- 2020-12-01:java中,什么是安全点和安全区域?
福哥答案2020-12-04: 安全点用户线程暂停,GC 线程要开始工作,但是要确保用户线程暂停的这行字节码指令是不会导致引用关系的变化.所以 JVM 会在字节码指令中,选一些指令,作为"安 ...
- 2022-02-28:k8s安装adminer,yaml如何写?
2022-02-28:k8s安装adminer,yaml如何写? 答案2022-02-28: yaml如下: apiVersion: apps/v1 kind: Deployment metadata ...
- 魔力屏障 (magic) 题解
魔力屏障 (magic) [问题描述] 小 Z 生活在神奇的魔法大陆上.今天他的魔法老师给了它这样一个法阵作为它 的期末考试题目: 法阵由从左至右 n 道魔力屏障组成,每道屏障有一个临界值 a,如果它 ...
- DevOps| 研发效能和PMO如何合作共赢?
项目经理(PMO)对于大组织.跨团队高效协同有着不可替代的作用.跳出组织架构的束缚,横向推动公司级别的大项目向前推进,跟进进展和拿到结果,PMO的小伙伴有着独特的优势. 我之前写过小团队如何高效协作的 ...