reg Image Subtraction

I want to subtract two images. I used 'imread' function which get images in uint8. when I subtract two images a and b, abs(a-b) and abs(b-a) are not equal. How to compare two images or subtract two images for detecting changes?

Antworten (1)

Walter Roberson
Walter Roberson am 18 Jan. 2012

0 Stimmen

Consider uint8(3)-uint8(5) . What value do you expect that to result in? uint8(-2) ... but -2 is clearly not an unsigned integer such as is representable in the datatype of Unsigned 8 Bit Integers (uint8)
In order to be able to get negative values, you have to convert the data to a signed datatype that can hold the maximum values of the subtraction, 256 minus 0 and 0 minus 256.
If you just want to check if two images are exactly equal, you can use equal().

Gefragt:

am 18 Jan. 2012

Community Treasure Hunt

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

Start Hunting!

Translated by