如何在python中使用OCR从图像中获取文本识别器的坐标
Posted
技术标签:
【中文标题】如何在python中使用OCR从图像中获取文本识别器的坐标【英文标题】:How to get the co-ordinates of the text recogonized from Image using OCR in python 【发布时间】:2018-08-02 08:57:07 【问题描述】:我正在尝试使用 Tesseract 从图像中获取文本字符的坐标或位置。 我想知道确切的像素位置,以便我可以使用其他工具单击该文本。
编辑:
import pytesseract
from pytesseract import pytesseract
import PIL
from PIL import Image
import cv2
import csv
img = 'E:\\OCR-DATA\\sample.jpg'
imge = Image.open(img)
data=pytesseract.image_to_string(imge,lang='eng',boxes=True,config='hocr')
print(data)
data
包含具有框边界值的已识别文本。但我不确定,如何使用该边界值来获取文本的坐标。
data
变量的值如下:
O 100 356 115 373 0
u 117 356 127 368 0
t 130 356 138 372 0
p 141 351 152 368 0
u 154 356 164 368 0
t 167 356 175 371 0
【问题讨论】:
对不起,我是这个论坛的新手。不知道规则。现在添加了我的代码。 【参考方案1】:你可以试试这个:
img = 'tes.jpg'
imge = Image.open(img)
data=pytesseract.image_to_boxes(imge)
print(data)
这会直接给你结果 Like:
T 22 58 52 97 0
H 62 58 95 96 0
R 102 58 135 97 0
E 146 57 174 97 0
A 184 57 216 96 0
D 225 56 258 96 0
【讨论】:
【参考方案2】:每行都有边界框的坐标。
发件人:Training Tesseract – Make Box Files
字符,左,下,右,上,页
因此,对于每个字符,您都会获得该字符,然后是其边界框字符,然后是从 0 开始的页码。
【讨论】:
以上是关于如何在python中使用OCR从图像中获取文本识别器的坐标的主要内容,如果未能解决你的问题,请参考以下文章
文本的检测识别实战:使用 Tesseract 进行 OpenCV OCR 和文本识别
使用Python进行名片OCR(识别姓名,职务,电话,Email邮箱)