python图像识别技术,python图像识别与提取特征部分教程

  python图像识别技术,python图像识别与提取特征部分教程

  附Java/C/C/机器学习/算法与数据结构/前端/Android /Python/程序员必读书籍完整列表:

  书单导航页(点击

  【Java】学习之路,最全的50本吐血整理技术书籍从入门到进阶(珍藏版)

  【算法数据结构ACM】50本(珍藏版)从入门到进阶吐血整理。

  【数据库】18本从入门到进阶的必备技术书籍,网盘,吐血整理网盘(珍藏版)

  【Web前端】从HTML到JS到AJAX到HTTP,从框架到全栈帮你少走弯路(典藏版)

  【python】书籍已全部整理完毕(从初级到高级)(珍藏版)【机器学习】Python整理技术书籍(从初级到高级)(珍藏版)

  【C语言】推荐书籍带你走丹尼尔之路从初级到高级(珍藏版)

   [Android]入门进阶推荐书籍整理pdf书单整理(典藏版)[架构师]史诗之路必读书籍整理四维中的血液系列80本(典藏版) [C]从入门到进阶整理血液成为神的推荐书单100本(典藏版)极客侠栈 即可打开个人博客):极客侠栈[iOS] -

  Python图像识别一般基于tesseract,在爬虫中广泛用于处理验证码。

  安装教程网上大多是类似的,但是在Windows下真的很麻烦,涉及到各种路径,环境变量,甚至不同于linux的路径分隔符,所以这里的安装是基于__Centos7__。

  

  yum install-y automake autoconf libtool gcc gcc-c1. 依赖安装

  Leptonica主要用于图像处理和图像分析。

  原则上所有库文件都可以直接用yum安装。如果想要具体的版本,可以去官方源码下载相应的版本然后编译WGET http://www . lepton ICA . org/source/lepton ICA-1 . 74 . 4 . tar . gztar-ZXVF lepton ICA-1 . 74 . 4 . tar . gzcd lepton ICA-1 . 74 . 4/。/以相应的方式配置Make Make Install2. 安装leptonica

  其他版本可以在这里下载编译,直接使用的文件也有。

  yum安装宇宙魔方3. 安装tesseract

  宇宙魔方-版本4. 验证安装

  去tesseract-ocr/tessdata下载对应的语言包,然后移动到tessdata目录。可以使用whereis tesseract来检查具体的目录。我的是/usr/share/tesseract/tessdata/

  mv *。trained data/usr/local/share/Tess data/5. 语言包下载

  Tesla CT-list-langs使用# tesseract用法:tessera CT-help -help-PSM -help-OEM -version tessera CT-list-langs[-Tess data-dirpath]tessera CT-print-parameters[选项.][配置文件.]tesse ract imagename stdin output base stdout[选项.][配置文件.] OCR选项:- tessdata-dir PATH指定tessdata路径的位置。- user-words PATH指定用户单词文件的位置。- user-patterns PATH指定用户模式文件的位置。-l LANG[ LANG]指定用于OCR的语言。-c VAR=配置变量的值集值。允许多个c参数。- psm NUM指定页面分段模式。- oem NUM Spec Ifocr引擎模式,注意:这些选项必须出现在任何配置文件之前。语法tessera CT imagename输出基础[-l lang][-PSM page mode][配置文件.]

  Imagename:图像名称outputbase:指定输出。如果你想直接输出而不是保存到一个文件,那么就使用stdout,否则这个参数会被用作保存结果的文件的前缀。-l指定语言文件。默认情况下,使用英文tesseract - print-parameters:查看更多参数信息。使用-c指定单个参数的值,或者在命令末尾将配置写入配置文件。(支持多个配置文件。)psm识别图像。0:定向脚本。

  1:使用OSD进行自动分页

  2:自动分页,但不使用OSD或OCR(光学字符识别)

  3:全自动分页,但不使用OSD(默认)

  4:假设一个可变大小的文本列。

  5:假设单个统一的文本块是垂直对齐的。

  6:假设一个统一的文本块。

  7:将图像视为单行文本。

  8:将图像视为一个单词。

  9:把一个图像想象成一个圆圈里的一个单词。

  0:将图像视为单个字符。

  Python安装了Tesseract后可以很容易的被Python调用,但是需要pillow和pytesseract的支持。

  用python翻译image _ to _ data(image,lang=none,config= ,nice=0,output _ type=output.string)

  Image对象,PIL Image/NumPy数组由Tesseract处理的图像的lang字符串,Tesseract语言代码字符串config字符串,任何其他配置字符串,如config=PSM 6 语言文件都可以叠加。用“”隔开,我们也可以在这里设置tessdata路径,用config可以做更多的配置,包括config和psm。例子类似于tesseract:流程:打开图片,配置,转换。可以通过Image的open或者cv2的imread打开图片,然后对图片进行对比度增强和降噪,效果会更好。

  从PIL导入image导入pytesseraclatclass Languages:CHS= chi _ sim ENG= ENG def img _ to _ str(image _ path,lang=Languages。ENG):return pytesserac t . image _ to _ string(image . open(image _ path),lang)print(img _ to _ str( pic/numu . png ,lang=Languages。ENG))print(img _ to _ str( pic/pro . png ,lang=Languages。ENG))

  简单的文字识别效果不错,但是设计有很多空行,符号等就不那么好了。从准确度上来说,可以通过训练字体达到想要的效果,然后使用re等各种库对得到的文本进行操作,实际上re的应用相当广泛。2.但是在验证码方面效果很好,tesserocr在验证码方面也比较。识别中文时可能会出现编码错误,这也是识别的漏洞之一。网上帅缘分说的改变文字编码似乎解决不了问题,所以还是不建议直接转换长文字图片。图形处理也可以借鉴一些各种平台的API,百度、腾讯、美团都有支持。

  历史提交的图片或压缩文件

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: