在我的应用程序中,我想使用相机捕获两张图片,然后我想比较这些图片。
那么,我该如何比较这两张图片呢?
编辑: 比较第一张图片与第二张图片的像素完全相同。
谢谢。
在我的应用程序中,我想使用相机捕获两张图片,然后我想比较这些图片。
那么,我该如何比较这两张图片呢?
编辑: 比较第一张图片与第二张图片的像素完全相同。
谢谢。
1. 检查高度是否匹配,如果不匹配则返回false。然后,检查宽度是否匹配,如果不匹配,则返回false。然后检查每个像素,直到找到一个不匹配的像素,当你找到时,返回false。如果每个像素都匹配,则返回true。
伪代码:
bool imagesAreEqual(Image i1, Image i2)
{
if (i1.getHeight() != i2.getHeight()) return false;
if (i1.getWidth() != i2.getWidth()) return false;
for (int y = 0; y < i1.getHeight(); ++y)
for (int x = 0; x < i1.getWidth(); ++x)
if (i1.getPixel(x, y) != i2.getPixel(x, y)) return false;
return true;
}
Core.absdiff()
b. Core.compare()
有关更多详细信息,请参见比较两个图像。getPixels
而不是getPixel
,因为它们在速度上会有显著的差异。 - kabuko= API 12,这不是最好的答案。- TeeTracker