所需模块

①安装PIL:pip install Pillow(之前的博客中有写过)

②安装pytesser3:pip install pytesser3

③安装pytesseract:pip install pytesseract

④安装autopy3:

先安装wheel:pip install wheel

下载autopy3-0.51.1-cp36-cp36m-win_amd64.whl【点击打开链接】

执行命令:pip install E:\360安全浏览器下载\autopy3-0.51.1-cp36-cp36m-win_amd64.whl

##使用pip install autopy3时会报错如下:

④安装Tesseract-OCR:百度直接搜索Tesseract-OCR下载即可,Windows环境安装tesseract-ocr 4.00并配置环境变量

64位的安装包http://digi.bib.uni-mannheim.de/tesseract/tesseract-ocr-setup-4.00.00dev.exe

简体字识别包:https://raw.githubusercontent.com/tesseract-ocr/tessdata/4.00/chi_sim.traineddata

这里要说明的是安装Tesseract-OCR后,其不会被默认添加至环境变量path中,已导致如下报错:

解决办法有两种:(先找到Tesseract-OCR安装文件夹,再找到tesseract.exe文件)

我这里的绝对路径是:D:\python\Tesseract-OCR\tesseract.exe,环境变量路径则是:D:\python\Tesseract-OCR

①将此路径添加至环境变量path中(不过我是这么做的,但是PyCharm仍旧报错)

②找到pytesseract.py文件

我这里是C:\Users\admin\AppData\Local\Programs\Python\Python36\Lib\site-packages\pytesseract\pytesseract.py

将文件中的tesseract_cmd修改为上方的绝对路径

打开命令终端,输入:tesseract -v,可以看到版本信息

实例演示

进入正题,如何识别图像中文字

上原图:(这句是海上钢琴师中的一句经典台词)

接下来我们要通过python的pytesseract来识别图片中的字符了

#   _*_ coding:utf-8 _*_

import pytesseract
from PIL import Image __author__ = 'admin' im = Image.open(r'C:\Users\admin\Desktop\example.png')
print(pytesseract.image_to_string(im))

如果报错:

则修改代码如下:

import pytesseract
from PIL import Image tessdata_dir_config = '--tessdata-dir "C:\\Program Files (x86)\\Tesseract-OCR\\tessdata"'
im = Image.open(r'./tupian.png') print(pytesseract.image_to_string(im, config=tessdata_dir_config))

如果要显示中文:

from PIL import Image
import pytesseract
text = pytesseract.image_to_string(Image.open('./XLF5G7F6SHFCO4G0.jpg'),lang='chi_sim')
print(text)

结束

图像_pytesseract的更多相关文章

  1. C#中如何调整图像大小

    在本篇文章中,我将介绍如何在C#中来调整你想要的图像大小.要实现这一目标,我们可以采取以下几个步骤: 1.首先要获取你想要调整大小的图像: string path = Server.MapPath(& ...

  2. 基于window7+caffe实现图像艺术风格转换style-transfer

    这个是在去年微博里面非常流行的,在git_hub上的代码是https://github.com/fzliu/style-transfer 比如这是梵高的画 这是你自己的照片 然后你想生成这样 怎么实现 ...

  3. 超全面的.NET GDI+图形图像编程教程

    本篇主题内容是.NET GDI+图形图像编程系列的教程,不要被这个滚动条吓到,为了查找方便,我没有分开写,上面加了目录了,而且很多都是源码和图片~ (*^_^*) 本人也为了学习深刻,另一方面也是为了 ...

  4. git图像化界面GUI的使用

    GIT学习笔记 一.        基础内容 1.git是一个版本控制软件,与svn类似,特点是分布式管理,不需要中间总的服务器,可以增加很多分支. 2.windows下的git叫msysgit,下载 ...

  5. CSharpGL(24)用ComputeShader实现一个简单的图像边缘检测功能

    CSharpGL(24)用ComputeShader实现一个简单的图像边缘检测功能 效果图 这是红宝书里的例子,在这个例子中,下述功能全部登场,因此这个例子可作为使用Compute Shader的典型 ...

  6. 【.net深呼吸】WPF异步加载大批量图像

    如何在WPF中加载大批量数据,并且不会阻塞UI线程,尤其是加载大量图片时,这活儿一直是很多朋友都相当关注的.世上没有最完美的解决之道,咱们但求相对较优的方案. 经过一些试验和对比,老周找到了一种算是不 ...

  7. 了解HTML图像

    img <img>表示image图像,从技术上讲,<img>标签并不会在网页中插入图像,而是从网页上链接图像.<img> 标签创建的是被引用图像的占位空间. [必须 ...

  8. 四种比较简单的图像显著性区域特征提取方法原理及实现-----> AC/HC/LC/FT。

    laviewpbt  2014.8.4 编辑 Email:laviewpbt@sina.com   QQ:33184777 最近闲来蛋痛,看了一些显著性检测的文章,只是简单的看看,并没有深入的研究,以 ...

  9. 图像抠图算法学习 - Shared Sampling for Real-Time Alpha Matting

    一.序言   陆陆续续的如果累计起来,我估计至少有二十来位左右的朋友加我QQ,向我咨询有关抠图方面的算法,可惜的是,我对这方面之前一直是没有研究过的.除了利用和Photoshop中的魔棒一样的技术或者 ...

随机推荐

  1. Elasticsearch 学习资料

    Elasticsearch 学习资料 学习资料 网址 官方网站中文版 https://www.elastic.co/cn/ 全文搜索引擎 Elasticsearch 入门教程(阮一峰) http:// ...

  2. 代理模式proxy

    代理模式的共同优点如下: (1) 能够协调调用者和被调用者,在一定程度上降低了系统的耦合度. (2) 客户端可以针对抽象主题角色进行编程,增加和更换代理类无须修改源代码,符合开闭原则,系统具有较好的灵 ...

  3. laravel 事务处理

    //開啟事務 DB::beginTransaction(); try { //賬號密碼同步到後台登錄表 $user = new \App\Models\User; $user->name = $ ...

  4. Zuul 限流

    /** * 限流 */ @Component public class RateLimiterFilter extends ZuulFilter { //1秒钟100个令牌 private stati ...

  5. Set ARITHABORT Option设置为ON

    MSDN注释中提到,应该总是将Set ARITHABORT Option设置为ON,原因有四: 1,如果SSMS和application client的设置不同,那么会导致application cl ...

  6. ALGO-117_蓝桥杯_算法训练_友好数

    问题描述 有两个整数,如果每个整数的约数和(除了它本身以外)等于对方,我们就称这对数是友好的.例如: 9的约数和有:+= 4的约数和有:+= 所以9和4不是友好的. 220的约数和有: = 284的约 ...

  7. git 对比两个分支差异

    比如我们有 2 个分支:master, dev,现在想查看这两个 branch 的区别,有以下几种方式: 1.查看 dev 有,而 master 中没有的: git log dev ^master 同 ...

  8. 一个关于WCF调用远程链接返回405错误不允许使用此方法的问题

    最近在调试WCF的接口时一直返回“405不允许使用此方法”,这个问题困扰了大半天,网上查了各种办法,但是每个人遇到的问题不同还是不能解决. 最后无意之中发现问题所在,记录一下帮助后面的同学解决问题. ...

  9. 使用python操作word

    有两种方式: 使用win32com 使用docx 1.使用win32com扩展包 只对windows平台有效 代码: # coding=utf-8 import win32com from win32 ...

  10. C++进阶小结

    1.C++中类的不同存储区的对象的初始值 class test; class test { private: int i; int j; public: int geti() { return i; ...