2013-08-25 26 views
0

我想比较2个图像,其中第一图像被存储在数据库中,所述第二图像是从经由网络摄像头的实时视频流。是否有可能确定图像之间是否存在某些差异,或者它们是否相同?通过像素2倍的图像的像素进行比较(第一图像被存储在数据库中)

我想要的图像比较是逐像素。如果像素逐像素比较困难,甚至不可能,您能否提出一个更好的方法来做到这一点?

+0

您可以从数据库和图像从摄像头获取的图像,并发现逐像素差值(使用absdiff功能:http://docs.opencv.org/modules/core/doc/operations_on_arrays.html#absdiff),但我不知道认为这将是非常有用的,因为即使从同一个相机拍摄的同一个物体的两个连续帧也不会完全相同,因为噪音。 –

+0

如果你可以做一个粗略比较(类似“这两个图像都来自同一个地方,但不完全一样”),你可以试试这个库,返回一个分数如何相似的两个图像是:HTTP:// webdiis.unizar.es/~dorian/index.php?p=32 – ChronoTrigger

回答

4

由像素比较简单的像素不太可能工作得很好,因为网络摄像头图像中的噪声。

你需要一个相似性度量像Peak signal-to-noise ratio (PSNR)Structural Similarity (SSIM)

+0

如果将实时视频流更改为图像逐像素比较,怎么办? –

+0

@Paulina Jose抱歉,我不明白你在提议什么。 – Bull

+0

我应该使用什么方法,如果我由象素比较2幅图像的像素.. (存储在数据库和所述第二图像的第一图像被从网络摄像机拍摄.. –

0

您的图像进行hash function,并将其与数据库中的预先计算的图像的哈希值进行比较。