3

假设您有两个图像:

在此处输入图像描述

在此处输入图像描述

除了几个不同颜色的像素外,这些图片几乎相同。Objective-C 中是否有本地方法来识别两张图片是否几乎相同?如果没有,还有其他方法吗?

4

3 回答 3

2

在计算机视觉和图像处理中,几乎相同的定义因应用程序而异,因此计算相似性/同一性的方法也会因手头的问题而异。

在您的情况下,图像似乎具有相同的分辨率,您只对不同的像素数感兴趣。

我建议您遍历这两个图像并对像素值进行异或运算(如果它们相同,则结果将为零)。

于 2013-05-10T06:36:59.973 回答
2

我对识别两个图像是否几乎相同的建议是在两个图像之间进行逐个像素的比较,并以百分比(或差异,因为您想确定两个图像是否“几乎相同”以及处理量)来跟踪相似性/与确定相似性相比,确定差异的操作会更少)。

此外,这都是主观的。您是指像素级别或人眼级别的“几乎相同”吗?希望这有帮助:)

于 2013-05-10T06:35:56.780 回答
1

不,在 Objective-C 中绝对没有本地方法可以做到这一点——我的意思是在 eg 上没有显式方法NSImage。但是您肯定可以通过比较像素来比较像素等方式来做到这一点。

“相同”也没有明确的定义,因为两个图像对于人眼来说可能看起来相同,但从另一个角度来看可能完全不同。

关于您在编辑中添加的问题:

例如 OpenCV,它可以做很多你可以使用的东西。看看它的OpenCV

…还有关于 StackOverflow 的另一个很好的讨论:图像比较 - 快速算法

于 2013-05-10T06:31:06.353 回答