0

我正在尝试从填充了名称和数字列的数据表中读取一些条目。这是原始图片:

在此处输入图像描述

在二值化、转换为黑/白和反转之间,我发现反转图像会产生最佳效果。

 image = PIL.ImageOps.invert(image

当我向下滚动到更多图像时,这让我可以处理大约 90% 以上的列,但我仍然无法处理其中的一堆。有时,列中的括号合并了我在每列中的两个数字。有什么办法可以解决括号与数字混合的问题,或者删除所有绿色文本?

4

1 回答 1

0

调整图像大小似乎是解决问题的选项。

image = pyautogui.screenshot(region=(550, 354, 964, 552))
width, height = image.size
image = image.resize((args.resize*width, args.resize*height))

我将大小调整为原始大小的至少 3 倍。我想这增加了字符之间的距离,从而更容易识别一位数字的结尾和后面的括号。

或者,以下是更大的改进:

image = cv2.imread(output)
image = cv2.bitwise_not(image)
image = cv2.resize(image, None, fx=1.5, fy=1.7,
                               interpolation=cv2.INTER_CUBIC)  # scale
cv2.imwrite(output, image

缩放不是线性的,如果将其倾斜一点,效果会更好。

于 2019-08-13T09:06:36.730 回答