寻找一种可靠的方法来比较两个非常简单的图像"

时间:2017-05-09 22:44:54

标签: c# image

我正在玩一个正在开发的Android应用程序的文本识别类。

注意:当我说" image"时,我实际上是指32行32位,这里的内容在内存中显示:

.  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  #  #  #  #  #  . 
.  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  #  #  #  #  #  # 
.  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  #  #  #  #  #  # 
.  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  #  #  #  .  #  # 
.  .  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  #  #  #  .  .  .  #  # 
.  .  #  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  #  .  .  .  .  #  #  .  .  .  #  # 
.  .  #  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  #  .  .  .  .  #  #  #  #  #  #  # 
.  .  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  .  #  #  #  #  #  # 
.  .  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  .  .  #  #  #  #  . 
.  .  #  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  .  .  .  .  .  .  . 
.  .  #  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  .  .  .  .  .  .  . 
.  .  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  #  #  #  .  .  .  .  . 
.  .  #  #  .  .  .  .  .  .  #  #  #  #  .  #  #  .  #  #  #  #  #  #  #  #  #  .  .  .  .  . 
.  .  #  #  .  .  .  .  .  .  #  #  #  #  #  #  #  #  #  #  #  #  #  .  #  #  #  .  .  .  .  . 
.  .  #  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  #  #  .  .  .  .  .  .  .  .  .  .  .  . 
.  .  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  .  .  .  .  .  .  . 
.  .  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  .  .  .  .  .  .  . 
.  #  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  .  .  .  .  .  .  .  .  .  .  .  . 
.  #  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  .  .  .  .  .  .  .  .  .  .  .  . 
.  #  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  .  .  .  .  .  .  . 
.  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  .  .  .  .  .  .  . 
.  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  .  .  .  .  .  .  .  .  .  .  .  . 
.  #  #  .  .  .  .  .  .  .  .  .  .  .  .  #  #  #  #  #  #  .  .  .  .  .  .  .  .  .  .  . 
.  #  .  .  .  .  .  .  .  .  .  .  .  #  #  #  #  #  #  #  #  #  #  .  .  .  .  .  .  .  .  . 
.  #  #  .  .  .  .  .  .  .  .  .  #  #  #  #  #  #  #  #  #  #  #  .  .  .  .  .  .  .  .  . 
.  #  #  .  .  .  .  .  .  .  .  #  #  #  #  #  .  .  #  #  #  #  #  #  .  .  .  .  .  .  .  . 
#  #  #  .  .  .  .  .  .  .  .  #  #  #  .  .  .  .  #  .  .  .  #  #  #  .  .  .  .  .  .  . 
#  #  #  .  .  .  .  .  .  .  .  #  #  #  .  .  .  #  #  #  .  .  .  #  #  #  .  .  .  .  .  . 
#  #  #  .  .  .  .  .  .  .  .  .  #  #  .  .  #  #  #  #  .  .  .  #  #  #  .  .  .  .  .  . 
#  #  #  .  .  .  .  .  .  .  .  .  #  #  #  .  #  #  .  .  .  .  .  #  #  #  .  .  .  .  .  . 
#  #  #  .  .  .  .  .  .  .  .  .  #  #  #  #  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  . 
#  #  #  .  .  .  .  .  .  .  .  .  .  #  #  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .

以下是流程(简化)

  1. 获取用户制作的图纸,作为一组点。
  2. 取点,将它们连接在一起并将它们标准化以构建一个32 x 32像素的图像"。 (归一化,如压缩成32 x 32阵型)。
  3. 比较说"图像"一系列的股票"图像"并确定相似性 - 如果最高相似度高于某个阈值,我们可以确定图像足够相似以通过测试。它基本上是像素x像素比较。
  4. 然而,我得到的值变化不大 - 我认为大量的空白会使值丢失...而且图像可能看起来相似但是如果它相对于另一个偏移了几个像素,它不会得到很多有效的像素比较。

    例如,与此图像相比,人类可以看到:

    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  #  #  #  #  #  . 
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  #  #  #  #  #  # 
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  #  #  #  #  #  # 
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  #  #  #  .  #  # 
    .  .  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  #  #  #  .  .  .  #  # 
    .  .  #  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  #  .  .  .  .  #  #  .  .  .  #  # 
    .  .  #  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  #  .  .  .  .  #  #  #  #  #  #  # 
    .  .  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  .  #  #  #  #  #  # 
    .  .  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  .  .  #  #  #  #  . 
    .  .  #  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  .  .  .  .  .  .  . 
    .  .  #  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  .  .  .  .  .  .  . 
    .  .  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  #  #  #  .  .  .  .  . 
    .  .  #  #  .  .  .  .  .  .  #  #  #  #  .  #  #  .  #  #  #  #  #  #  #  #  #  .  .  .  .  . 
    .  .  #  #  .  .  .  .  .  .  #  #  #  #  #  #  #  #  #  #  #  #  #  .  #  #  #  .  .  .  .  . 
    .  .  #  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  #  #  .  .  .  .  .  .  .  .  .  .  .  . 
    .  .  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  .  .  .  .  .  .  . 
    .  .  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  .  .  .  .  .  .  . 
    .  #  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  .  .  .  .  .  .  .  .  .  .  .  . 
    .  #  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  .  .  .  .  .  .  .  .  .  .  .  . 
    .  #  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  .  .  .  .  .  .  . 
    .  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  .  .  .  .  .  .  . 
    .  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  .  .  .  .  .  .  .  .  .  .  .  . 
    .  #  #  .  .  .  .  .  .  .  .  .  .  .  .  #  #  #  #  #  #  .  .  .  .  .  .  .  .  .  .  . 
    .  #  .  .  .  .  .  .  .  .  .  .  .  #  #  #  #  #  #  #  #  #  #  .  .  .  .  .  .  .  .  . 
    .  #  #  .  .  .  .  .  .  .  .  .  #  #  #  #  #  #  #  #  #  #  #  .  .  .  .  .  .  .  .  . 
    .  #  #  .  .  .  .  .  .  .  .  #  #  #  #  #  .  .  #  #  #  #  #  #  .  .  .  .  .  .  .  . 
    #  #  #  .  .  .  .  .  .  .  .  #  #  #  .  .  .  .  #  .  .  .  #  #  #  .  .  .  .  .  .  . 
    #  #  #  .  .  .  .  .  .  .  .  #  #  #  .  .  .  #  #  #  .  .  .  #  #  #  .  .  .  .  .  . 
    #  #  #  .  .  .  .  .  .  .  .  .  #  #  .  .  #  #  #  #  .  .  .  #  #  #  .  .  .  .  .  . 
    #  #  #  .  .  .  .  .  .  .  .  .  #  #  #  .  #  #  .  .  .  .  .  #  #  #  .  .  .  .  .  . 
    #  #  #  .  .  .  .  .  .  .  .  .  #  #  #  #  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  . 
    #  #  #  .  .  .  .  .  .  .  .  .  .  #  #  #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . 

    这个非常相似(相似度约为0.82)

    #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  #  #  #  #  #  . 
    #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  #  .  .  .  .  .  #  #  #  #  #  #  #  # 
    #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  #  .  .  .  .  #  #  #  #  #  .  #  #  # 
    #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  #  .  .  .  .  #  #  #  .  .  .  .  #  # 
    #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  #  #  #  .  .  .  .  #  # 
    #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  #  #  #  .  .  .  .  #  # 
    #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  .  #  #  #  .  .  #  #  # 
    #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  .  .  #  #  #  #  #  #  # 
    #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  .  .  #  #  #  #  #  #  . 
    #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  .  .  .  .  .  .  .  .  . 
    #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  .  .  .  .  .  .  .  .  . 
    #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  .  .  .  .  .  .  .  .  . 
    #  #  .  .  .  .  .  .  .  .  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  .  .  .  .  .  . 
    #  #  .  .  .  .  .  .  .  .  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  .  .  .  .  .  . 
    #  #  .  .  .  .  .  .  .  .  #  #  #  .  .  .  .  #  #  #  .  .  .  .  .  .  .  .  .  .  .  . 
    #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  .  .  .  .  .  .  .  . 
    #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  .  .  .  .  .  .  .  . 
    #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  .  .  .  .  .  .  .  . 
    #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  .  .  .  .  .  .  .  . 
    #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  #  .  .  .  .  .  .  .  .  .  .  .  . 
    #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  #  .  .  .  .  .  .  .  .  .  .  .  . 
    #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  #  #  #  .  .  .  .  .  .  .  .  .  .  .  . 
    #  #  .  .  .  .  .  .  .  .  .  .  .  .  #  #  #  #  #  #  #  #  .  .  .  .  .  .  .  .  .  . 
    #  #  .  .  .  .  .  .  .  .  .  .  #  #  #  #  #  #  #  .  #  #  #  #  .  .  .  .  .  .  .  . 
    #  #  .  .  .  .  .  .  .  .  .  .  #  #  #  .  .  #  #  .  .  .  #  #  #  #  .  .  .  .  .  . 
    #  #  .  .  .  .  .  .  .  .  .  #  #  #  .  .  .  #  #  .  .  .  #  #  #  #  #  .  .  .  .  . 
    #  #  .  .  .  .  .  .  .  .  .  #  #  .  .  .  .  #  #  .  .  .  .  .  #  #  #  .  .  .  .  . 
    #  #  .  .  .  .  .  .  .  .  .  #  #  #  .  .  .  #  #  .  .  .  .  .  .  #  #  .  .  .  .  . 
    #  #  .  .  .  .  .  .  .  .  .  #  #  #  #  .  .  #  #  .  .  .  .  .  .  .  .  .  .  .  .  . 
    #  #  .  .  .  .  .  .  .  .  .  #  #  #  #  #  #  #  #  .  .  .  .  .  .  .  .  .  .  .  .  . 
    #  #  .  .  .  .  .  .  .  .  .  .  #  #  #  #  #  #  #  .  .  .  .  .  .  .  .  .  .  .  .  . 
    #  #  .  .  .  .  .  .  .  .  .  .  .  .  .  #  #  #  #  .  .  .  .  .  .  .  .  .  .  .  .  . 

    这个非常不同:(相似度约为0.7)

    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .

    如果有人能够指出我更好地比较两个"图像"我将非常感激。

    也许我需要重新考虑将点转换为图像,正如我所做的那样:

    1. 取点
    2. 在它们周围添加点(以模拟线条粗细)
    3. 将它们全部添加到图像数据中,在点之间进行连接以连接间隙。

0 个答案:

没有答案