今天前同事欧工求助说要实现图片文字识别,并要给出文字座标,看似比较复杂。不过试了下tesseract ,还真可以。
yum install tesseract -y
如果没有安装epel源的要先安装。
当然,也可以源码安装,地址:https://github.com/tesseract-ocr/tesseract
再运行命令:
tesseract yourPic.png output
就会自动在当前目录下识别图片yourPic.png里的文字,并成生一个output.txt文件,里面就是图片里的文字。
以下是随便截的一张带文字的图片:
通过tesseract识别的结果:
基本上正确率还是挺不错。
如果需要显示座标,可以加参数makebox:
tesseract yourPic.png output makebox
此时在当前目标底下还会生成文件output.box,里面有识别到的每个字的座标。
如果需要识别中文,可以下载中文数据包放进相当的数据目录。
下载地址:https://github.com/tesseract-ocr/tessdata/blob/master/chi_sim.traineddata
CentOS默认路径数据目录为:/usr/share/tesseract/tessdata/
然后运行命令时在后面加上-l lang (比如简体中文为-l chi_sim)
如果识别率不够高的话,可以自己做训练:https://github.com/tesseract-ocr/langdata
也可以参考:http://blog.csdn.net/yasi_xi/article/details/8763385
原文出自:
http://blog.too2.net/?p=181
转载请注明转自:辛碌力成【http://blog.too2.net】
发表评论