⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 shsigpts.m

📁 图像对齐(inage registration)工具箱
💻 M
字号:
function [sps,fig]=shsigpts(X,fac,npts,HGF,C,HM,ANG, ...
                 k,kr,kn,cl,st,halfSurSize)
% SHSIGPTS - find and show significant points in an image (postprocessing)
% [sps,relmag,fig]=shsigpts(X,fac,npts,HGF,C,HM,ANG,txt,k,kr,kn,cl,st,halfSurSize)
%
% X: image
% fac: enlagement for diplay
% npts: significant points required
% HGF: how good is the fit
% C: averages over squares size 2k+1
% HM: number of sign changes around squares
% ANG: angles in discrete sizes - 2kr is \pi/2, 4kr max
% k: half size of square to fit locally
% kr: size of square for changes, may be any
% kn: the minimu allowed distance between SP candidate and straight line
% cl: determines the interval, where the angle between SP candidate's edges has to be from
% st: maximum allowed curvature divergence for straight line candidates 
% sps: boolean matrix as X where points are
% halfSurSize: half of the size of the surroundings of a maximum where no other maximum should be found
% fig: SP candidates at the image
%
% Copyright Zitova B., Kautsky J., Peters G., Flusser J.
% UTIA, 1998

ngl=255;   %  length of colour map, decrease if problems ...
[m,n]=size(X);

txtp=[' k=' int2str(k) ' kr=' int2str(kr) ' kn=' int2str(kn)]; 
txt=str2mat(['Almost (' int2str(cl) ') right angles kn away from' ...
        ' almost (' int2str(st) ') straight lines']); 
allpts= abs((ANG-2*kr)) <= cl ;       % must yet remove neighbours:
sn=-kn:kn;
zz=zeros(m,n);
tt=ANG>=4*kr-st;
maska=ones(2*kn+1,2*kn+1)/(2*kn+1)^2;
zz=conv2(tt,maska,'same')>0;
allpts=allpts&(~zz);

%  now prune unless already done
sps = choseImpPointsWithoutZeros(X,allpts.*HGF,npts,halfSurSize);
  
% always display
%txt=str2mat(txt,txtp);
%fig=dispimgs(X,fac,txt,ngl,sps,max(sps(:)));

⌨️ 快捷键说明

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