我正在打开图像进行形态转换并保存。但是,图像之间显然没有区别(即使放大到像素也是如此)。图片链接在下面。其中一个解析正确,另一个解析错误。
这是踢脚线。如果我打开在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”。
答案 0 :(得分:2)
这两个图像确实不同。
如果将它们推入GIMP中,然后将图层叠加模式设置为Subtract
,则会得到以下信息:
最后一个2
之后,差异似乎包含一些伪像,Tesseract认为这是另外一位数字。
使用Paint保存结果可能会重新编码输出。
请考虑您的图片是JPG(有损压缩)。 制作压缩表的方法有多种,并且您会得到不同的工件。似乎在这种情况下,Tesseract听到了声音。
还要注意,JPG和文本don't go well with each other。您应该考虑使用无损格式,例如PNG。