Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/354.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Tesseract ocr输出,在检测到的文本之间包含单个字符_Python_Python 3.x_Ocr_Tesseract_Python Tesseract - Fatal编程技术网

Python Tesseract ocr输出,在检测到的文本之间包含单个字符

Python Tesseract ocr输出,在检测到的文本之间包含单个字符,python,python-3.x,ocr,tesseract,python-tesseract,Python,Python 3.x,Ocr,Tesseract,Python Tesseract,我正在尝试使用Tesseract从下图中提取 这是tesseract 4 ocr的结果 print(text) Wrote Datastream application e Used Kafka to get the accounts 如果您看到图像中的项目符号被转换为e,我在文档中发现了几个这样的点,它们被转换为ascii中的单个字符 如果有人熟悉此类问题并有解决方案,请告诉我。我有一个建议,也许最好删除要点 消除要点的一个解决方案是应用自适应阈值 如果我们对当前图像应用自适应阈值

我正在尝试使用Tesseract从下图中提取

这是tesseract 4 ocr的结果

print(text)

Wrote Datastream application 
e Used Kafka to get the accounts
如果您看到图像中的项目符号被转换为
e
,我在文档中发现了几个这样的点,它们被转换为ascii中的单个字符


如果有人熟悉此类问题并有解决方案,请告诉我。

我有一个建议,也许最好删除要点

  • 消除要点的一个解决方案是应用
    自适应阈值

  • 如果我们对当前图像应用自适应阈值:

  • 现在如果我们读到它:

代码:


导入cv2
导入pytesseract
img=cv2.imread(“4XMue.png”)
gry=cv2.CVT颜色(img,cv2.COLOR\u BGR2GRAY)
thr=cv2.自适应阈值(gry,255,cv2.自适应阈值平均值,
cv2.THRESH_二进制,11131)
txt=pytesseract.image\u to\u字符串(thr)
打印(txt)


请允许我告诉您,我的示例代码可能不适用于所有图像。因为图像可能有不同的伪影或需要额外的处理。您可能需要更改
自适应阈值的
块大小
C
参数。因此,请从阅读

开始,但我认为tesseract已经使用大津算法对图像进行了二值化了?所以,当我们两次这样做时,不会在大型和密集的文档上降低质量。Seract OCR内部采用大津二值化方法。然而,该方法根据图像直方图选择一个最优的全局阈值。如果图像上有阴影,tesseract将无法提取字符。但是如果我们做两次,会不会降低图像的质量?你是说应用大津阈值两次?如果是这样,我没有对图像应用大津阈值。如果你看一下我的
adaptivethrehshell
方法,我只使用了
cv2.THRESH\u BINARY
。我们正在预处理图像以去除图像中的瑕疵。因此,多次预处理不应降低图像质量。否则,我们无法从图像中收集特征。
print(text)

Wrote Datastream application 
e Used Kafka to get the accounts
Wrote Datastream application |
Used Kafka to get the accounts