首页 > 解决方案 > 自动覆盖图像上的文本

问题描述

我只是想知道是否可以使用 OCRpytesseract来自动覆盖图像上的文本?我知道pytesseract能够得到image_to_boxes(),它基本上得到了相应字符的框。但是,我不想掩盖所有的字符,只在必要时(即敏感信息的一部分)。为了找到这个,我可以对image_to_string()结果使用正则表达式搜索,如下所示。

ocr_result = pytesseract.image_to_string(Image.open(my_pic))
list(set(re.findall(my_regex, ocr_result)))

但是,使用image_to_box(),我无法找到那些对应的字符,因为它对应于单个字符,例如字符“a”,它在图像中出现多次,我不知道如何找到相应的“a”字符。下面是image_to_boxes()输出示例。

p 1404 1762 1417 1803 0
a 1404 1762 1424 1795 0
...

有没有办法将结果映射image_to_boxes()image_to_string()正确的字符位置?

我试图实现的目标是自动化该过程,以用黑框覆盖包含敏感信息的文本部分。以前有人做过吗?任何帮助,将不胜感激。

标签: pythonpython-3.xocrtesseractpython-tesseract

解决方案


推荐阅读