android - 当背景颜色和文本颜色几乎相似时 OCR 不工作

标签 android ocr google-cloud-vision abbyy

我们在尝试扫描行李时遇到了一个问题。这背后的主要原因是刺绣的包上的文字颜色几乎与包的颜色相同。所以它无法扫描写在包上的确切文本。

为了得到实际的想法,我附上了图片。

在附图中,我们要扫描包的 ID (D1 150491)。如果我们需要付出额外的努力来扫描此类图像,请告诉我。

注意:我们已经尝试了两种SDK

enter image description here

最佳答案

正如在对您的问题的评论中所建议的,除了预处理您的图像之外,实际上没有太多可以做的。 Google Cloud Vision API(可能还有所有其他 OCR 平台)将无法识别文本,例如您在此图像中显示的文本。

为了提高对像这样的图像的识别,你应该应用一些预处理技术,其中你可以考虑(但不限于)评论中提到的那些:

  • 应用过滤器:边缘检测,使用一些流行的方法,例如 Canny 或 Sobel(有一些例子 here)。
  • 图像二值化:包括在图像的灰度级中设置一个阈值,背景具有一种颜色(白色或黑色)而字母具有另一种颜色。你可以看一些例子here ,尽管我认为这对您的情况不起作用,因为字母的灰度级和图像的其余部分看起来非常相似(由于其体积,字母中只有一点点亮度)。
  • 尝试:更改图像的亮度和对比度,您可能会得到一些结果。然而,这个过程很难自动化,而且相同的值可能不适用于不同的图像。

简而言之,没有简单的方法可以做到这一点,您必须对图像进行预处理,以获得 Vision API 背后的模型可以真正理解的内容。

关于android - 当背景颜色和文本颜色几乎相似时 OCR 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48806569/

相关文章:

python - 使用 GCP 的 Cloud Vision 进行车牌识别

javascript - 对象定位 - Google Vision API

firebase - 如何使用ML Kit云文字识别器进行拍打?

forms - 如何查找扫描文档图像上的空白字段

python - 如何使用 OpenCV 和 pytesseract image_to_string() 从图像中提取数字?

php - 如何在 wamp 服务器上使用 Tesseract PHP 包装器

android - 时区列表。如何获取特定设备的它?

Android,如何获取Facebook/Twitter/等联系人照片

android - 如何在运行时创建多个按钮? + 机器人

android - 如何在我的应用程序中使用法语字符实现键盘