hausdorff.m

来自「hausdoff公式 距离计算」· M 代码 · 共 32 行

M
32
字号
function c=hausdorff(b,a,bd,ad)
%求出模型图象B和未知图象A之间的hausdorff距离,用来跟踪视频对象
[M,N]=size(a);
[m,n]=size(b);
c=inf*ones(M,N);
[k,l]=find(b);
L=length(k);
% Ux=min(k);
% Dx=max(k);
% Ly=min(l);
% Ry=max(l);
[k1,l1]=find(a);
L1=length(k1);
for i=1:fix(M/4)                   %这里取1/4,后3/4的不可能;     
    for j=1:fix(N/4)               %这里取1/4,后3/4的不可能;
        for x=1:L
            sb(x)=ad(i+k(x),j+l(x));%sort has L numbers;
        end
        sortb=sort(sb);
        Fb(i,j)=sortb(L);
        for y=1:L1
            if  0<(k1(y)-i)&(k1(y)-i)<=m&0<(l1(y)-j)&(l1(y)-j)<=n
                sa(y)=bd(k1(y)-i,l1(y)-j);
            else  sa(y)=0;   
            end
        end
        sorta=sort(sa);
        Fa(i,j)=sorta(L);  
        c(i,j)=max(Fb(i,j),Fa(i,j));
    end
end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?