sum of absolute differences

38 次查看(过去 30 天)
nomad nomad
nomad nomad 2012-3-30
Good evening everyone,
I have two images which I seek correspondence by correlation using the sum of absolute differences (SAD) to find the disparity map.
I do not know how to apply the formula of SAD.
thank you
  1 个评论
vimal
vimal 2012-6-26
You can directly use correlation method..
corr2(im1,im2) is the code for calculating the correlation between two images.
for more details type
doc corr2
in command window..

请先登录,再进行评论。

回答(3 个)

Jan
Jan 2012-6-26
While imabsdiff is implemented as efficient MEX (no temporary array created), you can calculate the "sum of absolute differences" easily by hand also:
img1 = rand(640, 480, 3);
img2 = rand(640, 480, 3);
difference = img1 - img2;
absolute = abs(difference);
result = sum(absolute(:));
It is less obvious for UINT8 images, because abs(uint8(10) - uint8(20)) is not uint8(10), uint8(0) due to the saturation effects. If this is not wanted, convert the UINT8 image to double at first.

Alex Taylor
Alex Taylor 2012-3-30
If you have the Image Processing Toolbox, consider looking at the function imabsdiff as a starting point for computing the absolute difference between two images.
help imabsdiff

indhumathi gunasekar
i have two 16*16 matrix,i need to find SAD between this. can anyone help me out?

Community Treasure Hunt

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

Start Hunting!

Translated by