pytesseract识别中文并且获得识别的字符的位置信息,识别中文随便找找就能找到相关资料,但是获得位置信息的中文资料有点少呀,下面通过学习这个获得了怎么得到位置信息的方法了。总体来说有两个方法。一个是image_to_boxes,该方法只会返回识别后的位置信息,没有字符;另一个是image_to_data,它返回的信息就多了,位置信息,识别的字符等等(详情可以看上面的链接)。还需要注意的是,image_to_data可以通过output_put参数选择返回数据格式。

image_to_data(image, lang=None, config='', nice=0, output_type=Output.STRING, timeout=0)

实验性质的代码如下:

import cv2
import pytesseract
from pytesseract import Output
from PIL import Image
from PIL import ImageDraw
from PIL import ImageFont
import numpy as npdef recoText(im):"""识别字符并返回所识别的字符及它们的坐标:param im: 需要识别的图片:return data: 字符及它们在图片的位置"""data = {}d = pytesseract.image_to_data(im, output_type=Output.DICT, lang='chi_sim')for i in range(len(d['text'])):if 0 < len(d['text'][i]):(x, y, w, h) = (d['left'][i], d['top'][i], d['width'][i], d['height'][i])data[d['text'][i]] = ([d['left'][i], d['top'][i], d['width'][i], d['height'][i]])cv2.rectangle(im, (x, y), (x + w, y + h), (255, 0, 0), 1)# 使用cv2.putText不能显示中文,需要使用下面的代码代替#cv2.putText(im, d['text'][i], (x, y-8), cv2.FONT_HERSHEY_SIMPLEX, 0.3, (255, 0, 0), 1)pilimg = Image.fromarray(im)draw = ImageDraw.Draw(pilimg)# 参数1:字体文件路径,参数2:字体大小font = ImageFont.truetype("simhei.ttf", 15, encoding="utf-8")# 参数1:打印坐标,参数2:文本,参数3:字体颜色,参数4:字体draw.text((x, y-10), d['text'][i], (255, 0, 0), font=font)im = cv2.cvtColor(np.array(pilimg), cv2.COLOR_RGB2BGR)cv2.imshow("recoText", im)return dataif __name__ == '__main__':img = cv2.imread('2.png')#cv2.imshow("src", img)data = recoText(img)cv2.waitKey(0)cv2.destroyAllWindows()

效果如下(从图中可以看出自带的chi_sim识别字库识别效果不是很好呀):

pytesseract识别中文并获得中文的位置信息(Bounding Box)相关推荐

  1. Python使用正则表达式识别代码中的中文、英文和数字实例演示

    Python 正则表达式识别代码中的中文.英文和数字 识别中文 识别英文 识别数字 拓展 在文本处理和数据分析中,有时候需要从代码中提取出其中包含的中文.英文和数字信息.正则表达式是一种强大的工具,可 ...

  2. Golang中获取中文字符串的子串字符位置及截取子串

    Golang中获取中文字符串的子串字符位置及截取子串 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.cs ...

  3. 中文分词_中文分词及其应用

    一.中文分词原理 中文分词是指将一个汉字序列切分成一个一个单独的词.分词就是将连续的字序列按照一定的规范重新组合成词序列的过程.现有的分词方法可分为三大类,分别是基于字符串匹配的分词方法.基于理解的分 ...

  4. php 图片路径混淆,爬虫遇到了字符图片混淆。pytesseract识别图片字符

    本帖最后由 打字的小强 于 2020-6-11 14:05 编辑 最近爬虫遇到了字符图片混淆的反爬.如图所示,文字和图片混在一起,需要对图片进行识别,图片很小,这时候我就想到了pytesseract, ...

  5. 中文路径_中文分词的原理、方法与工具

    海德格尔说"词语破碎处,无物可存在".中文句子不像英文那样的词与词之间有显示空格边界,使得词和词组边界模糊. 为了让计算机更容易理解文本,通常中文信息处理的第一步是中文分词.中文分 ...

  6. 设置中文linux输入ubuntu,Linux_ubuntu怎么设置成中文?ubuntu中文设置图文方法,  很多朋友安装ubuntu后,发 - phpStudy...

    ubuntu怎么设置成中文?ubuntu中文设置图文方法 很多朋友安装ubuntu后,发现都是英文,看不懂要怎么办?其实ubuntu是可以设置成中文的,下文小编就为大家带来ubuntu中文的设置方法, ...

  7. Wine的安装和配置(实现中文输入法和中文的复制粘贴)(转)

    Wine的安装和配置(实现中文输入法和中文的复制粘贴)(转) liuspider 最后修订于 2003年4月14日 版本 0.7 本文档最新版可以在 http://xbkconfp.cosoft.or ...

  8. Linux下安装宋体以及微软雅黑字体-转PDF后不显示中文,以及中文乱码

    PS:转PDF后不显示中文,以及中文乱码. 1.检查字体是否已经安装: fc-list               ----------检查所有已有的字体 fc-list :lang=zh       ...

  9. 桥接SSID为中文乱码且中文字符过长的WIFI

    解决桥接 SSID 为中文乱码且中文字符过长时无法桥接问题 受到下面这篇文章的启发: 解决路由器中继不能连中文ssid问题 实现思路:在点击确定中继按钮后,进行长度校验之前将中文乱码改为正常的中文字符 ...

最新文章

  1. 通过代码自定义cell(cell的高度不一致)
  2. 如何在代码里配置-D 参数?
  3. 采购订单模板_电子信息制造业解决方案,电子工业采购监管、管理、降本可控化...
  4. 增加/dev/shm大小
  5. UA MATH564 概率分布1 二项分布下
  6. matlab有意思程序,matlab有意思的小程序
  7. MS CRM 2011——让活动实体在活动菜单中显示
  8. CORBA GIOP消息格式学习
  9. 深度学习项目-人群密度估计
  10. table表头多选框禁用 vue_Vue踩坑小记(四)
  11. 远程连接hive报错
  12. 写 JSP 的痛点,真的非常痛!
  13. 第2章 程序的灵魂-算法
  14. 诺顿误杀事件造成“疑似病毒大爆发”恐慌
  15. comp3411 -prolog语言
  16. 在线生成透明ICO图标神器
  17. 科目一计算机答题错了能修改吗,科目一答题错了能改么
  18. linux下ftp客户端主动模式设置
  19. mysql周德伟课后答案_MySQL数据库技术-周德伟
  20. 全球与中国结肠水疗机市场深度研究分析报告

热门文章

  1. ffmpeg 硬件加速视频转码指南
  2. underscore可能存在的问题
  3. 东财21秋《利息理论X》单元作业1【标准答案】
  4. SAP的凭证编号问题
  5. adobe认证证书含金量
  6. 深蓝文件批量重命名工具绿色中文便携版V4.0 | 电脑批量重命名软件下载 | 批量重命名软件哪个好
  7. 电线电缆行业mes解决方案,打造全新信息化车间
  8. 更换人脸(易容术)Photoshop实例教程
  9. 道路监控网络摄像头常见问题
  10. HBase的VERSIONS的意思