1. 安装 tesseract

github官方tesseract下载
本想安装长期支持版本4.0 LSTM,但在其官网上只找到了5.0.0版本的安装二进制exe文件。又不想源码编译安装那么麻烦,所以就使用5.0.0了。

(后来发现,Tesseract本身没有windows的安装包,不过它指定了一个第三方的封装的windows安装包,在其wiki上有说明,大家可直接到这个地址进行下载:https://digi.bib.uni-mannheim.de/tesseract/ 可以下载其他版本(含4.0)的windows安装包)

已经将下载的tesseract-ocr-w64-setup-v5.0.0-alpha.20210506.exe上传至网盘。
网盘分享
链接:https://pan.baidu.com/s/1d7yQSoIzbwx-SBX35GiORA
提取码:dpzt
复制这段内容后打开百度网盘手机App,操作更方便哦

安装过程中注意在语言栏勾选中文(chi_sim简体中文, chi_tra传统中文),之后在安装中会自动联网下载中文相关的推理模型文件等等。
安装完毕后,请在系统环境变量中添加tesseract安装路径,否则后续会出现模块缺失Not Found报错!

2. 安装 tesseract

python 安装 pytesseract

pip install pytesserac

3. 识别

若无cv2模块请使用pip install opencv-python安装,详情请参照Python安装opencv库

import cv2
import numpy as np
import pytesseract as pt
import matplotlib.pyplot as pltimg_path = r'D:\test\\jys.png'
#******************* 读取图片为灰度格式并查看 ********************#
img = cv2.imread(img_path,0)
#plt.imshow(img, cmap = 'gray', interpolation = 'bicubic')
#plt.show()#*************** 读取图片中的文字并输出(打印出来)***************#
text = pt.image_to_string(img, lang="chi_sim")
print(type(text),len(text))
print(text)

成功读取出了图片中的文字,这时文字以字符串形式保存,下面我们把它转换为列表(list)。
#********** 将读取后的文字与标点符号以列表(list)形式输出 **********#
print(text.split())
该部分将输出:
[ ‘床’, ‘前’, ‘明’, ‘月’, ‘光’, …]
转化为列表后进一步分析,如自言语言处理,将变得非常方便。

====================================

若图片较为复杂一些,可能识别不出来,可能是图片中的“噪音”降低了文字的可辨识度。

让我们对图片进行黑白二值化处理,提高文字的可辨识度。

#************ 将图像进行黑白二值处理提高文字的可辨识度 ************#ret,img2 = cv2.threshold(np.array(img), 20, 20, cv2.THRESH_BINARY)
plt.imshow(img2, cmap = 'gray', interpolation = 'bicubic')
plt.xticks([]), plt.yticks([])
plt.show()
text2 = pt.image_to_string(img2, lang="chi_sim")
print(type(text2),len(text2))
print(text2)

本文部分内容参照:https://zhuanlan.zhihu.com/p/267410483

Python读取图片中的文字(OCR)相关推荐

  1. python读取图片上的文字_Python帮你读取图片中的文字(OCR)

    此文主要介绍如何通过Python读取图片中的文字(光学字符识别,OCR) 第一步 安装 tesseract 安装过程中注意勾选中文(chi_sim, chi_tra). 第二步 python 安装 p ...

  2. C# 扫描并读取图片中的文字

    本文介绍如何通过C# 程序来sql教程扫描并读取图片中的文字,这里以创建一个.Net Core程序为例.下面是具体java基础教程步骤,供参考. 程序测试环境: Visual Studio版本要求不低 ...

  3. C# 扫描并读取图片中的文字(.NET Core)

    本文介绍如何通过C# 程序来扫描并读取图片中的文字,这里以创建一个.Net Core程序为例.下面是具体步骤,供参考. 程序测试环境: Visual Studio版本要求不低于2017 图片扫描工具: ...

  4. 如何用Python识别图片中的文字?

    如何用Python识别图片中的文字? 转:https://mp.weixin.qq.com/s/wXDJoAAI8y1mtbUuwATngQ 以下文章来源于微信公众号:新建文件夹X ,作者ZackSo ...

  5. 用 Python 识别图片中的文字

    一.前言 不知道大家有没有遇到过这样的问题,就是在某个软件或者某个网页里面有一篇文章,你非常喜欢,但是不能复制.或者像百度文档一样,只能复制一部分,这个时候我们就会选择截图保存.但是当我们想用到里面的 ...

  6. python提取图片中的文字自动填表_如何 提取图片中的文字?这款Python 库 4行代码搞定!...

    OCR是什么? 有一款软件叫扫描全能王,想必一些小伙伴听过,这是一个OCR集成软件,可以将图像内容扫描成文字. 所以说,OCR作用是对文本资料的图像文件进行分析识别处理,获取文字及版面信息. OCR的 ...

  7. python批量识别图片中文字_如何用Python识别图片中的文字?

    一.前言 不知道大家有没有遇到过这样的问题,就是在某个软件或者某个网页里面有一篇文章,你非常喜欢,但是不能复制.或者像百度文档一样,只能复制一部分,这个时候我们就会选择截图保存.但是当我们想用到里面的 ...

  8. python保存图片到指定路径_用 Python 识别图片中的文字

    (给Python开发者加星标,提升Python技能) 来源:ZackSock 一.前言 不知道大家有没有遇到过这样的问题,就是在某个软件或者某个网页里面有一篇文章,你非常喜欢,但是不能复制.或者像百度 ...

  9. python识别图片文字_如何利用Python识别图片中的文字

    一.前言 不知道大家有没有遇到过这样的问题,就是在某个软件或者某个网页里面有一篇文章,你非常喜欢,但是不能复制.或者像百度文档一样,只能复制一部分,这个时候我们就会选择截图保存.但是当我们想用到里面的 ...

最新文章

  1. erhai系统使用_web
  2. android 程序类图,Android模板设计模式之 - 构建整个应用的BaseActivity
  3. SQL编程where子句与操作符
  4. functor_纯Java中的Functor和Monad示例
  5. [转] webpack之plugin内部运行机制
  6. Ubuntu16.04安装(QQ.exe)
  7. python球的体积公式_鬼斧神工:求n维球的体积
  8. 数据挖掘之七种常用的方法
  9. php ajax jquery瀑布流,jQuery瀑布流插件——jQuery.Waterfall
  10. Spring学习笔记4
  11. python的十句名言_经典十句名言
  12. 工控安全之系统加固篇
  13. Div Scroll Bar (用层模拟滚动条)
  14. python得垃圾回收机机制gc
  15. 移动通信调制技术的进展 转
  16. web开发与django认识 MVC和MVT的区别 路由的匹配
  17. 接口测试、APP和web测试流程(面试简化)
  18. MATLAB下实现巴特沃斯低通滤波器并对图像滤波
  19. 光敏电阻控制继电器(STM32F103C8T6)
  20. 苏杰的产品创新课/图书/企业服务,双11价格确实便宜

热门文章

  1. leafler如何清除地图上的图标点
  2. 三极管的缺点MOS管来补,把MOS管当作开关驱动大功率器件
  3. 如何用Java设计一个简单的窗口界面(初级二)
  4. LQR控制器——简单实现与仿真
  5. 自动驾驶(七十二)---------LQR控制算法
  6. 小白开发微信小程序52--测试小程序
  7. JSP内置对象和四大作用域
  8. hasnext() java_关于Java:为什么HasNeXT()false,但hasNextLine() 是真的?
  9. arm linux alsa驱动使用 usb 声卡
  10. Java游戏开发框架LGame-0 2 8版发布(含JavaSE及Android版,已有文档)