基于Eclipse下的python图像识别菜鸟版(利用pytesseract以及tesseract)
这是我注册博客后写的第一篇博客,希望对有相关问题的朋友有帮助。
在图像识别前,首先我们要做好准备工作。
运行环境:windows7及以上版本
运行所需软件:(有基础的可以跳过这一段)eclipse,pydev,anaconda2,tesseract-ocr(图像识别引擎),pytesseract组件,PIL组件
操作:安装eclipse,在eclipse的help菜单栏中选择Eclipse Marketplace搜索pydev,安装pydev,下载anacondea2,下载安装tesseract(如果安装过程中有错请直接点跳过,因为那是选择的语言包无法下载的意思,因为这个软件的是国外公开的,相关资源的下载需要越狱)。
安装完上述软件后,在cmd即命令指示窗口中打开到anaconda2的Scripts下输入 pip install PIL,等安装好后再输入pip install pytesseract。
记得要在项目中添加上你要识别的英文图片(建议是像我给的这样的图片),名字随意吧,不过要记得改代码呦!图片展示:

接下来就是运行程序了以下是运行代码截图及结果。
这是识别的结果不过识别准确率非常差,而且目前只能识别英文,要识别中文的话需要相关语言包,具体如何操作我也不太懂(有用中文识别成功的朋友请不吝赐教)

上述是我在eclipse中运行的结果,当然不是直接运行代码就出来的了,是经历了一个历时极长且极度痛苦的纠错过程。
如果直接运行的结果是这样的,额,好吧调整过一次后不会再再出现那个错误了。
不过我大概还记得错误是这样的,
首先eclipse会报错在text=pytesseract.image_to_string(lena)这一行具体提示啥我忘了,
中间好像是提示pytesseract.py中某一行出错
最后显示win 2[error]就是这个错
我在查了多个网站后,找到了错误原因。具体操作是在pytesseract中修改
tesseract_cmd = 'tesseract.exe'中的tesseract.exe为tesseract在你本机上的路径载在前面加r如下图所示:
# CHANGE THIS IF TESSERACT IS NOT IN YOUR PATH, OR IS NAMED DIFFERENTLY
tesseract_cmd = r'C:\Program Files (x86)\Tesseract-OCR\tesseract.exe'
img_mode = 'RGB'
这样代码就能正常运行了。
其实也可以直接在tesseract中使用的
打开命令指示符
输入如下图所示的代码就行了,结果会在图片那一目录显示

然后桌面就会多一个result.txt来显示结果,如果有语言包且配置完备的朋友可以尝试一下用中文识别图片。个人提示一下如果是自己手敲代码的话看到-1要注意了很可能是-l(我是找的有点憔悴了)。
基于Eclipse下的python图像识别菜鸟版(利用pytesseract以及tesseract)的更多相关文章
- eclipse下的python环境安装
添加python开发环境到eclipse: 点击help--install New Software 点击add,弹出新窗口: Name:填PyDev Location:填 http://pyde ...
- 转 ——eclipse下进行Python开发 环境配置
python for eclipse插件安装1.下载python for eclipsepython for eclipse下载地址,如:org.python.pydev.feature-1.6.3. ...
- JETSON TK1 ~ 基于eclipse下开发ROS
此文档是在PC端开发后移植到TK1,并非在TK1上安装eclipse 官方使用IDE开发的文档: http://wiki.ros.org/IDEs 一:安装eclipse 1.下载eclipse安装包 ...
- Centos7下安装python环境
前言 centos7默认是装有pyhton的. #检查python版本 [root@oldboy_python ~ ::]#python -V Python 但是众所周知,python2版本到2020 ...
- Windows下安装Python及Eclipse中配置PyDev插件
最近开始接触Python,鉴于之前安装Java的教训,决定这次边安装Python,边写下历程,供日后反复使用. 在Python官网http://www.python.org/下载Python版本,鉴于 ...
- [z]Windows 下基于 Eclipse 的可视化远程 Linux C/C++ 开发环境搭建
http://blog.csdn.net/lostaway/article/details/8086056 1.简介 Windows 下远程 Linux 开发工具,比较著名的就是 WinGDB 和 M ...
- eclipse下python的selenium自动化环境的搭建
前提:安装python,我用的2.7.8版本,并在环境变量path里设置;E:\Python1.解压setuptools(Python包管理工具),cmd到目录执行python setup.py in ...
- eclipse下配置安装ssm图文教程(web版)
eclipse下配置安装ssm图文教程(web版) 一.安装所需jar包 1.1 mybatis安装包 可以进入GitHub的https://github.com/mybatis/mybatis-3 ...
- $Django 多表操作(增删改查,基于双下划线,对象的查询) 在Python脚本中调用Django环境
在Python脚本中调用Django环境. import osif __name__ == '__main__': os.environ.setdefault("DJANGO_SETTING ...
随机推荐
- 列表中不限制宽度,hover时,字体font-weight:bold,防止抖动
项目一个小问题困扰了很久,在一个没有限制宽度的列表容器中,如果给hover时,给字体➕'font-wieght:bold'容器就会变宽,然后移动的下一个容器,就会出现抖动,这样很是影响用户体验,于是在 ...
- Python之Tornadoweb框架使用
本文主要讲解Tornadoweb框架的安装和介绍及其简单使用. 一. 安装介绍 Tornado是一个Python Web框架和异步网络库,最初是在FriendFeed上开发的.通过使用非阻塞网络I / ...
- JAVA构造MAP并初始化MAP
第一种方法:static块初始化 public class Demo{ private static final Map<String, String> myMap; static { m ...
- java crm 进销存 springmvc SSM 项目 系统 源码
系统介绍: 1.系统采用主流的 SSM 框架 jsp JSTL bootstrap html5 (PC浏览器使用) 2.springmvc +spring4.3.7+ mybaits3.3 SSM ...
- JavaScript-闭包函数(理解)
JavaScript-闭包函数(理解) var foo = function (a) { return function inner () { console.log(a) } } var faa = ...
- 四层and七层负载均衡
四层负载/七层负载 在常规运维工作中,经常会运用到负载均衡服务.负载均衡分为四层负载和七层负载,那么这两者之间有什么不同? 废话不多说,详解如下: 1. 什么是负载均衡 1)负载均衡(Load ...
- Redis高级特性---------事务与持久化与发布订阅
一.redis事务的用法 1.开启事务:multi 2.提交事务:exec ( queued只是把指令放入队列中,没有执行) 3.取消事务:discard 4.redis事务不能保证同时成功或者失 ...
- kali linux修改更新源及更新
1.修改sources.list源文件: leafpad /etc/apt/sources.list #aliyun 阿里云 deb http://mirrors.aliyun.com/kali ka ...
- C语言学习记录_2019.02.23
char类型的输出: scanf("%d",&i);//i=49; char x=i; printf("x=%d\n",x); printf(" ...
- # 2017-2018-1 20155224 加分项-实现mypwd
2017-2018-1 20155224 加分项-实现mypwd 1. 学习pwd命令 pwd命令以绝对路径的方式显示用户当前工作目录.命令将当前目录的全路径名称(从根目录)写入标准输出.全部目录使用 ...