zoukankan      html  css  js  c++  java
  • Python2.7+pytesser图片文字识别功能

    原文地址:http://blog.csdn.net/lanfan_11/article/details/45558573

    原文已经写的很详细了,结合自己操作中的一些错误和感悟,整理了一下,形成了下面的文章。

    -----------------------------------------------------------------------------------------------------------------

    测试中需要将图片上的数字提取出来,和数据库的数字比较,判断图片上的数字是否正确。

    网上查了下相关资料,了解到pytesser是谷歌OCR开源项目的一个模块,在Python中导入这个模块即可将图片中的文字转换成文本。

    pytesser调用了tesseract。当在Python中调用pytesser模块时,pytesser又用tesseract识别图片中的文字。故安装的时候不需要安装tesseract。

    具体安装步骤如下:

    首先,安装Python2.7版本
    然后,安装PIL工具,下载的地址是:http://www.pythonware.com/products/pil/,pytesser的使用需要PIL库的支持。 选择安装python对应的版本。
    接着下载pytesser,下载的地址是:http://code.google.com/p/pytesser/downloads/list

    由于code.google.com网站关闭了,所以,只能在csdn上下载了。下面是csdn的下载网址:http://download.csdn.net/download/pyliang_2008/5564135

    最后,安装pytesser :
    1、解压pytesser ,将解压后的文件复制到Python装目录的Libsite-packages下,直接使用,比如我的安装目录是:C:Python27Libsite-packages。
    2、把2个目录添加到环境变量之中。 注:若不添加环境变量,仅仅是执行第3步,执行import pytesser的时候可以导入成功,但是不能使用模块的任何函数,使用时会报函数错误。
    C:Python27Libsite-packages
    C:Python27Libsite-packagespytesser-v0.0.1

    3、还要在C:Python27Libsite-packages下面添加.pth 文件(pytesser-v0.0.1.pth),这个文件里面,只有 “pytesser-v0.0.1”字符串。

     注:若只执行第2步,不执行第3步,则import pytesser时会提示没有此模块。

     另外: 为了美观,可以将pytesser-v0.0.1修改为pytesser。但是对应的相关位置都需要进行修改。

    完成以上步骤之后,就可以编写图片文本识别的Python脚本了。

    新建一个test.py的文件,复制下面的代码:

    1. from pytesser import *
    2. im = Image.open('D:\fonts_test.png')
    3. print im
    4. bg = Image.new("RGB",im.size,(255,255,255)) #转换图片格式,不转换提示错误
    5. print bg
    6. bg.paste(im,im)
    7. print im
    8. text = image_to_string(bg)
    9. print text
    10. #以下代码存在问题,未调试通过。
    11. text = image_file_to_string('fonts_test.png', graceful_errors=True)
    12. print "Using image_file_to_string():"
    13. print text

    将pytesser路径下的fonts_test.png 图片复制到test.py的存放位置,可以执行下试试效果。


  • 相关阅读:
    0723作业
    Kafka概述与设计原理
    Spring 装配Bean入门级
    logback节点配置详解
    Kafka问题排查(消费者自动关闭)
    .NET委托解析
    .NET可变性解析(协变和逆变)
    .NET泛型解析(下)
    .NET泛型解析(上)
    .NET动态调用WebService
  • 原文地址:https://www.cnblogs.com/morwind/p/6867547.html
Copyright © 2011-2022 走看看