我目前正处于可以将位图转换为字节数组的位置。假设我有26个图像代表a-z并有26个相应的字节数组。给定一个图像,我想用字节数组立即查找正确的字母,而不是执行多达26个比较。有什么方法可以散列字节数组以产生可存储在配置文件中的散列码?C#哈希和查找图像
或者,如果有比散列图像更好(更快)的方法(假设我无法访问底层文本表示),我非常想知道它们。为了澄清目的,假设我有“a.bmp”,“b.bmp”等。我现在在屏幕上有一个未知的图像。我会认为散列图像,并且执行单个查找将是获得正确识别的最快方式。它应该比执行多达26个单独的比较要快。如果这个假设是不正确的,我会赞赏最佳方法的概述。
注意:这不是一个经典的OCR问题(手写识别等),因为每次都会呈现相同的字母。因此,字母“a”将总是产生完全相同的哈希码
我们仍然不完全理解它的“为什么”。基于迄今为止我所看到的,我只会将我的图像命名为“a.bmp”,“b.bmp”等。如果我在内存中完成所有操作,则可能是Dictionary。 –
2010-01-22 21:38:25
现在这样做更有意义了。散列图像为图像中的像素排列产生独特的指纹,而不是人类认为在图像中出现的。将一个像素从FFFFFF更改为FFFFFE,您将得到完全不同的散列值。 – 2010-01-22 21:53:06