【问题标题】:Sort very similar images PHP OCR对非常相似的图像进行排序 PHP OCR
【发布时间】:2012-10-20 20:35:16
【问题描述】:

感谢您查看我的问题。

基本上我要做的是在这里找到所有看起来像第一张和第三张图片的图片:http://imgur.com/a/IhHEC

并删除所有看起来不像 (2,4) 的。

我尝试了几个库都无济于事。

另一种可接受的方法是检查图像是否包含“代码:”,因为该字符串在我必须整理的每个图像中。

谢谢你, 史蒂夫

编辑:虽然第一张和第三张图片看起来大小相同,但实际上并非如此。

【问题讨论】:

  • 您尝试过哪些库,究竟是如何失败的?否则,人们很可能会在这里再次推荐相同的解决方案
  • 我试过 sourceforge.net/projects/phpocrphpclasses.org/package/… 都没有工作,因为第二个一次只能识别图像中的一个字母,而第一个根本无法识别(对于“代码:XXXX-XXXX-XXXX-XXXX”它输出“8”。)

标签: php linux api ocr


【解决方案1】:

如果这些是您要使用的实际图像,那么看起来直方图相似度就可以了。第一个和第三个反差很大,第二个和第四个,尤其是第四个,有很大的不同强度。

您可以轻松地制作图像中灰色阴影的直方图,然后将阈值应用于直方图的形状以对其进行分类。

编辑:要实际做到这一点:您可以遍历每个像素并创建一个像素值数组 => 找到的次数。由于它是灰度的,因此您可以选择 R、G 或 B 通道。然后将每个数字除以图像中的像素数以进行归一化,因此它适用于任何大小。然后,直方图中的每个条目将是所用像素数的一小部分。然后,您可以测量高于某个阈值的值的数量。如果有很多灰色,你会得到大量的小值。如果没有,您将获得少量大值。

【讨论】:

  • 阅读您的答案,想到了 50 种灰色,哈哈。但是我该怎么做呢?我的图片都是白底黑字,但也有类似的,比如imgur.com/DlI0a,也是白底黑字。
  • 我已经编辑了我的答案以及如何实际做到这一点。这是一个易于实现的算法,因此您可以尝试一下,花一些时间调整一系列输入的值,看看它是否有效。
【解决方案2】:

由于我在处理图像文本而不是图像对象方面的背景,我会在 OCR 后处理过程中执行此操作,方法是在文本内容中搜索“关键字”或检查代表所需数据的“正则表达式”。这意味着整个工作需要分成两个阶段:图像到文本 OCR(免费或便宜,软件或云)和实际分离过程(简单编程)。

【讨论】:

    猜你喜欢
    • 2017-04-05
    • 2018-03-26
    • 1970-01-01
    • 1970-01-01
    • 2019-07-18
    • 1970-01-01
    • 2020-02-16
    • 1970-01-01
    • 2015-02-27
    相关资源
    最近更新 更多