双目立体匹配SAD的matlab源码分析

clear all
clc
left=double(rgb2gray(imread('left.png')));
right=double(rgb2gray(imread('right.png')));

[m n]=size(left);

w=9;       %窗口半径
depth=20;    %最大偏移距离,同样也是最大深度距离
imgn=zeros(m,n);
for i=1+w:m-w
   for j=1+w+depth:n-w 
       tmp=[];
       lwin=left(i-w:i+w,j-w:j+w);
       for k=0:-1:-depth        
           rwin=right(i-w:i+w,j-w+k:j+w+k);
           diff=lwin-rwin;
           tmp=[tmp sum(abs(diff(:)))];
       end
       [junk imgn(i,j)]=min(tmp);   %获得最小位置的索引
   end
end
imshow(imgn,[]);

 

你可能感兴趣的:(机器学习,立体视觉,sad)