基于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 ...
随机推荐
- 【Agile123】Automated Test in Agile
https://www.infoq.com/articles/thoughts-on-test-automation-in-agile Start Small Balance the cost vs. ...
- Linux禁用root账户ssh登录
前言 今天登录服务器的时候,控制台输出如下信息 There were 48990 failed login attempts since the last successful login. Last ...
- Docker实战(五)之端口映射与容器互联
除了网络访问外,Docker还提供了两个很方便的功能来满足服务访问的基本需求:一个是允许映射容器内应用的服务端口到本地宿主主机;另一个是互联机制实现多个容器间通过容器名来快速访问. 1.端口映射实现访 ...
- 使用CSS3的“transition ”属性控制长宽度的缓慢变化
有时候我们可能会想要改变某个资源信息的长宽度,比如改变某个div的宽度,而且需要让这个宽度缓慢改变,而不是突然就改变了.这时候你可能会想到使用jquery的animate()函数,不过这个方法既得引用 ...
- Jenkins+github的一次定时构建示例
首先说明,我的电脑环境是windows,所以以下的示例是基于windows10 X64. 一.新建任务,填写名称,选择类型,点击左下角的[确定] 二.配置 1.General 2.源码管理 之前在gi ...
- 怎么用CIFilter给图片加上各种各样的滤镜_2
上一篇讲了怎么找到能用的的滤镜和大概怎么去寻找... 这里接着说如何详细地给图片加滤镜效果..前的准备工作... . 1. 在找到想用的滤镜名字之后.须要知道这个滤镜究竟须要什么參数. . 例如以下图 ...
- laravel5.5源码笔记(七、数据库初始化)
laravel中的数据库也是以服务提供者进行初始化的名为DatabaseServiceProvider,在config文件的providers数组中有写.路径为vendor\laravel\frame ...
- PHP中的call_user_func()与call_user_func_array()简单理解
原文地址:http://small.aiweimeng.top/index.php/archives/52.html call_user_func:把一个参数作为回调函数调用 用法说明: call_u ...
- Visual Studio 2010 Express for Windows Phone 永久免费序列号
Visual Studio 2010 Express for Windows Phone 永久免费序列号:YDK44-2WW9W-QV7PM-8P8G8-FTYDF
- 20155222 c语言实现pwd命令
20155222 c语言实现linux的pwd命令 1.学习pwd命令在Linux层次结构中,用户可以在被授权的任意目录下利用mkdir命令创建新目录,也可以利用cd命令从一个目录转换到另一个目录.然 ...