opencv 从图像桨式光栅中提取边界框

f1tvaqid  于 2023-03-03  发布在  其他
关注(0)|答案(1)|浏览(163)

我用这个代码来检测所有的文本和绘制所有的绑定框:

from paddleocr import PaddleOCR,draw_ocr
ocr = PaddleOCR(lang='en') # need to run only once to download and load model into memory
img_path = 'PaddleOCR/doc/imgs_en/img_12.jpg'
result = ocr.ocr(img_path, cls=False)
for line in result:
    print(line)

# draw result
from PIL import Image
image = Image.open(img_path).convert('RGB')
boxes = [line[0] for line in result]
txts = [line[1][0] for line in result]
scores = [line[1][1] for line in result]
im_show = draw_ocr(image, boxes, txts, scores, font_path='/path/to/PaddleOCR/doc/fonts/simfang.ttf')
im_show = Image.fromarray(im_show)
im_show.save('result.jpg')

现在我有一个图像与所有检测到的边界框。我想分离所有的边界框,以便我可以提取信息从他们与pytesseract。我想这样做是因为paddleocr是更好的检测,但Pytesserat是更好的提取(德语)。那么我如何分离所有的边界框提取文本从每一个呢?谢谢

s8vozzvw

s8vozzvw1#

每个检测框中的四个点的顺序是左上、右上、右下和左下。
由于PP-OCR中的检测算法是以行为单位进行检测的,如果想从检测框坐标中得到每个单词的具体坐标,难度会比较大。

相关问题