我们在尝试扫描行李时遇到了一个问题。这背后的主要原因是刺绣的包上的文字颜色几乎与包的颜色相同。所以它无法扫描写在包上的确切文本。
为了得到实际的想法,我附上了图片。
在附图中,我们要扫描包的 ID (D1 150491)。如果我们需要付出额外的努力来扫描此类图像,请告诉我。
注意:我们已经尝试了两种SDK
最佳答案
正如在对您的问题的评论中所建议的,除了预处理您的图像之外,实际上没有太多可以做的。 Google Cloud Vision API(可能还有所有其他 OCR 平台)将无法识别文本,例如您在此图像中显示的文本。
为了提高对像这样的图像的识别,你应该应用一些预处理技术,其中你可以考虑(但不限于)评论中提到的那些:
- 应用过滤器:边缘检测,使用一些流行的方法,例如 Canny 或 Sobel(有一些例子 here)。
- 图像二值化:包括在图像的灰度级中设置一个阈值,背景具有一种颜色(白色或黑色)而字母具有另一种颜色。你可以看一些例子here ,尽管我认为这对您的情况不起作用,因为字母的灰度级和图像的其余部分看起来非常相似(由于其体积,字母中只有一点点亮度)。
- 尝试:更改图像的亮度和对比度,您可能会得到一些结果。然而,这个过程很难自动化,而且相同的值可能不适用于不同的图像。
简而言之,没有简单的方法可以做到这一点,您必须对图像进行预处理,以获得 Vision API 背后的模型可以真正理解的内容。
关于android - 当背景颜色和文本颜色几乎相似时 OCR 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48806569/