Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.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图像将以不同的方式进行解析_Python_Opencv_Tesseract - Fatal编程技术网

Python 几乎相同的Tesseract图像将以不同的方式进行解析

Python 几乎相同的Tesseract图像将以不同的方式进行解析,python,opencv,tesseract,Python,Opencv,Tesseract,我正在打开一个图像进行形态学转换并保存它。但是,图像之间没有明显的差异(即使放大到像素)。图片链接如下。其中一个解析正确,另一个解析错误 这是踢球的人。如果我在MS Paint中打开未正确解析的图像,完全不执行任何操作,然后单击“保存”,它将神奇地开始正确解析 有人能解释一下吗 这是我的密码 img = cv2.imread(IMAGE, 1) imgray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) kernel = np.ones((1,40), np.u

我正在打开一个图像进行形态学转换并保存它。但是,图像之间没有明显的差异(即使放大到像素)。图片链接如下。其中一个解析正确,另一个解析错误

这是踢球的人。如果我在MS Paint中打开未正确解析的图像,完全不执行任何操作,然后单击“保存”,它将神奇地开始正确解析

有人能解释一下吗

这是我的密码

img = cv2.imread(IMAGE, 1)
imgray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
kernel = np.ones((1,40), np.uint8)
morphed = cv2.morphologyEx(imgray, cv2.MORPH_CLOSE, kernel)
dst = cv2.add(imgray, (255-morphed))
cv2.imwrite("out.png", dst)
图像解析为“52.983.842”:

图像被错误地解析为“522.983.8422”:


这两幅图像确实不同

如果将它们推入GIMP,并将图层覆盖模式设置为
Subtract
,则会得到以下结果:

在最后一个
2
之后,差异似乎包含了一些伪影,Tesseract认为这是另一个数字

使用Paint保存结果可能会重新编码输出

假设您的图片是JPG,这是有损压缩的。 有几种方法可以制作压缩表,您将得到不同的工件。看来,在目前的情况下,Tesseract听到了噪音


还请注意JPG和text。你应该考虑使用无损格式,比如PNG。

< P>这两个图像确实不同。

如果将它们推入GIMP,并将图层覆盖模式设置为
Subtract
,则会得到以下结果:

在最后一个
2
之后,差异似乎包含了一些伪影,Tesseract认为这是另一个数字

使用Paint保存结果可能会重新编码输出

假设您的图片是JPG,这是有损压缩的。 有几种方法可以制作压缩表,您将得到不同的工件。看来,在目前的情况下,Tesseract听到了噪音


还请注意JPG和text。你应该考虑使用无损格式,比如PNG。

我可以确认保存为无损PNG修复了我的问题。我最初裁剪了一个较大的PNG并保存为JPG,这允许在形态学转换后出现一些干扰OCR的噪音。我可以确认保存为无损PNG解决了我的问题。我最初裁剪了一个更大的PNG并保存为JPG,这允许在形态学转换后出现一些干扰OCR的噪声。