找到不同大小的重复图像

Vap*_*olf 9 image image-processing

我想知道是否有一个预先存在的算法/库/框架来比较两个图像,看看是否有一个是另一个的重新调整大小的版本?编程语言在这个阶段并不重要.

如果没有任何东西,我需要写点东西.到目前为止我所想到的:

  • (昂贵)将较大的值调整为较小值并逐个像素地进行比较.

  • 更好的是,只需调整图片上的一些随机"区域"并进行比较.如果他们匹配,转换更多等...

  • 将图像分成若干行和列,并对颜色值进行某种奇偶校验数学运算.

我在前两个想法中特别看到的问题是,首先有不同的方法来重新调整图片的大小,因此数学可能根本不会完全相同.一些重新调整大小会增加模糊等等....

如果有人能指出我关于这个主题的一些好文献,那就太好了.我的谷歌搜索主要是共享软件应用程序,这不是我想要的.

目标是让它在网络服务器的后面运行.

小智 2

最好的方法取决于您要比较的图像的特征、图像相同的概率是多少,以及当它们不同时,它们通常会相差很多还是可能像单个像素一样微小不同之处?

如果上述问题的答案是您需要比较的图像将完全随机,那么使用昂贵的解决方案或某些可用的软件包可能是最好的选择。

如果您知道图像经常不同,并且图像通常差异很大,并且您确实想要手动推出解决方案,则可以实施一些初始的“快速比较”步骤,这会更少价格昂贵,并且可以快速识别许多图像不同的情况。

例如,您可以调整较大图像的大小,然后逐像素比较(或计算像素值的散列)仅图像的“对角线”(左上角像素到右下角像素),并通过这样做排除不同的图像,并且只对通过此测试的图像进行更昂贵的比较。

或者根据图像的类型,在“良好分布”处获取预设数量的点,并且仅对通过此测试的那些点进行更昂贵的比较。

如果您对要比较的图像了解很多,它们具有已知的特征,并且它们不同的次数多于相同的次数,那么按照上述方法实施廉价的“快速消除比较”可能是值得的。