資源簡介
很好的實現(xiàn)特征點的粗匹配,適用于用harris算子提取的角點
代碼片段和文件信息
%%%file2%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%ncc算法%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function?res=match(a1cnt1r1c1a2cnt2r2c2)
%?res=match(a1a2)
%?將從a1尋找a2中的最佳匹配點,得到從a2中抽取的res,也就是單向搜索
%?[result1cnt1r11c11]=harris(a1);
%?[result2cnt2r22c22]=harris(a2);%可以保證想匹配哪些點就匹配哪些
%?figure;
%??imshow(result1);title(‘result1角點位置‘);
%??figure;title(‘result2角點位置‘);
%??imshow(result2);???
?
win=[1/9?1/9?1/9;1/9?1/9?1/9;1/9?1/9?1/9];
u1=filter2(wina1);
u2=filter2(wina2);??%求均值
??????????????????????????
??????
a1=double(a1);
a2=double(a2);
A=filter2(win(a1-u1).^2);%求方差
B=filter2(win(a2-u2).^2);
[m1n1]=size(a1);
[m2n2]=size(a2);
res1=zeros(m1n1);
res2=zeros(m2n2);???????????%尋找的匹配的點
for?s=1:cnt1???????????
????????max=0;?p=0;q=0;i=r1(s1);j=c1(s1);??????%p.q存放坐標(biāo)
????????for?v=1:cnt2
????????????m=r2(v1);n=c2(v1);
????????????u1(ij)=(a1(i-1j-1)+a1(i-1j)+a1(i-1j+1)+a1(ij-1)+a1(ij)+a1(ij+1)+a1(i+1j-1)+a1(i+1j)+a1(i+1j+1))/9;%%求均值
????????????u2(mn)=(a2(m-1n-1)+a2(m-1n)+a2(m-1
評論
共有 條評論