Finding the difference between two images algorithm.

Hello,I am trying to write code to find the difference between two similar images. My way was: make them gray (with rgb2gray) subtract and then add threshold) but it gave me nothing.
The way I am working isnt correct ? maybe I am missing something ?

3 个评论

What do you intend to do exactly? do you want to calculate the difference between two pixels with the same coordinates?
There is a lot that can go wrong here. We can guess what went wrong, but the best way is if you upload example images and the code you were using.
I want to make algorithm that can slove the game "guess the difference". You upload 2 similar photos and get white dots in the places when there is any difference.

请先登录,再进行评论。

回答(2 个)

Subtracting will clip negative values at zero - not good! Cast to double before that.
Try the built-in functions immse() or psnr().
If you want to do it yourself, check out imabsdiff().

2 个评论

I forgot to mention that I subtracted with abs(and now I tried with double).
Like this : abs(double(im1gray)-double(im2gray));
But it still giving me in white places in the pictures that are same. The built-in functions immse() or psnr() giving me error like that treshold so still I dont got the final picture I want(black background with white when there is any difference).
Are you sure you're displaying the difference image with [] - otherwise it will do that.
differenceImage = abs(double(im1gray)-double(im2gray));
imshow(differenceImage, []);

请先登录,再进行评论。

please anyone help me ...which algorithm is best for fake currency detection

2 个评论

The best algorithm is probably classified, as it can be used to avoid counterfeit detection.
Also, by posting an answer you decreased your chances of getting effective help.
Have a read here and here. It will greatly improve your chances of getting an answer.

请先登录,再进行评论。

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by