目视比较两个图像

时间:2011-12-05 04:29:04

标签: vb.net computer-vision

我希望能够在一定的阈值内检查两张图像是否相同。

Image 1

Image 2

这两个图像与眼睛相同,但颜色略有不同。我尝试过以下示例:

http://www.vb-helper.com/howto_net_image_compare_threshold.html

不幸的是,它似乎只是检测图像何时相同。如何使用VB.NET确定图像在特定阈值内是否相同?

2 个答案:

答案 0 :(得分:4)

  1. 将两个图像调整为相同的小尺寸,例如16x12或90x60(取决于您的阈值)。
  2. 将颜色深度降低到每像素4或8位(不调色板)。您可以使用posterize函数。
  3. 然后看两个较小的图像是否重复。如果是这样,原件必须非常接近。

答案 1 :(得分:0)

  • 将图像分为R,G,B
  • 对于每种颜色:
    • 对于每个(x,y):
      • 将图像1的像素与图像2的像素相乘
    • 求和所有像素值
  • 将每种颜色的3个值相加

这是两张图片之间的correlation。要获得从0到1的值,首先计算图像与其自身的相关性,以查看最佳可能值,然后将图像1与图像2相关联,并除以最佳可能值。