0

好的。这是(非英语)OCR 项目的一部分。我已经完成了诸如去歪斜、灰度化、字形分割等预处理步骤,现在正停留在最重要的一步:通过将字形与字形图像数据库进行比较来识别字形,因此需要设计一个强大且高效的感知图像哈希算法。

由于许多原因,我需要的函数不会像通用图像比较问题所要求的那样复杂。一方面,我的图像始终是灰度的(如果这使识别任务更容易,甚至是黑白的)。另一方面,这些字形比照片更“以笔划为导向”,结构更简单。

我已经尝试了一些我自己的和一些借来的想法来定义一个好的相似性度量。一种方法是将图像划分为 M x N 单元格的网格,并取每个单元格的平均“黑度”来为该图像创建一个散列,然后取散列的欧几里德距离来比较图像。另一个是在每个字形中找到“角落”,然后比较它们的空间位置。它们都没有被证明是非常强大的。

我知道那里有像 SIFT 和 SURF 这样更强大的候选者,但我有 3 个充分的理由不使用它们。一是我猜它们是专有的(或以某种方式获得专利)并且不能用于商业应用程序。其次,它们是非常通用的,对于我比较简单的图像领域来说可能是一种矫枉过正。第三是没有可用的实现(我使用的是 C#)。我什至尝试将 pHash 库转换为 C#,但仍未成功。

所以我终于来了。有谁知道代码(C# 或 C++ 或 Java 或 VB.NET,但不应该需要任何不能在 .NET 世界中使用的依赖项)、库、算法、方法或想法来创建一个健壮且高效的散列算法,可以经受住轻微的视觉缺陷,如平移、旋转、缩放、模糊、斑点等。

4

1 回答 1

0

看起来您已经尝试过与此类似的方法,但它可能仍有一些用处:

https://www.memonic.com/user/aengus/folder/coding/id/1qVeq

于 2013-02-13T03:07:54.680 回答