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 设置 ...
随机推荐
- 吃透Redis面试八股文
Redis连环40问,绝对够全! Redis是什么? Redis(Remote Dictionary Server)是一个使用 C 语言编写的,高性能非关系型的键值对数据库.与传统数据库不同的是,Re ...
- python pyinstaller库
简要 pyinstaller模块主要用于python代码打包成exe程序直接使用,这样在其它电脑上即使没有python环境也是可以运行的. 用法 一.安装 pyinstaller属于第三方库,因此在使 ...
- Python 函数返回值及传递列表
函数返回值 函数并非总是直接显示输出,它可以处理一些数据,并返回一个或一组值,函数返回的值被称为返回值. 使用return语句将值返回到调用函数的代码行中 # 返回简单值 def get_format ...
- 【Redis】数据类型介绍
一.字符 string Redis常用基本类型之一,存入Redis的所有key都是字符类型,常用于保存Session信息 字符类型 命令 含义 复杂度 set <key> <valu ...
- 🚀 jdbc-plus是一款基于JdbcTemplate增强工具包, 已实现分页、多租户、动态表名等插件,可与mybatis、mybatis-plus等混合使用
jdbc-plus简介 jdbc-plus是一款基于JdbcTemplate增强工具包, 基于JdbcTemplate已实现分页.多租户.动态表名等插件,可自定义扩展插件,可与mybatis.myba ...
- 2021-04-18:给定一个二维数组matrix,里面的值不是1就是0,上、下、左、右相邻的1认为是一片岛,返回matrix中岛的数量。
2021-04-18:给定一个二维数组matrix,里面的值不是1就是0,上.下.左.右相邻的1认为是一片岛,返回matrix中岛的数量. 福大大 答案2021-04-18: 并查集. 代码用gola ...
- Java 世界的法外狂徒:反射
概述 反射(Reflection)机制是指在运行时动态地获取类的信息以及操作类的成员(字段.方法.构造函数等)的能力.通过反射,我们可以在编译时期未知具体类型的情况下,通过运行时的动态查找和调用. 虽 ...
- springboot 多环境配置及配置文件的位置
了解即可
- 现代 CSS 解决方案:CSS 原生支持的三角函数
在 CSS 中,存在许多数学函数,这些函数能够通过简单的计算操作来生成某些属性值,例如 : calc():用于计算任意长度.百分比或数值型数据,并将其作为 CSS 属性值. min() 和 max() ...
- Python基础 - 算数运算符
算数运算符 运算符 描述 实例 + 加 - 两个对象相加 a + b 输出结果 30 - 减 - 得到负数或是一个数减去另一个数 a - b 输出结果 -10 * 乘 - 两个数相乘或是返回一个被 ...