-
大小: 1.13MB文件類型: .zip金幣: 2下載: 0 次發布日期: 2023-08-15
- 語言: 其他
- 標簽: PMAD??anisotropic??matlab??
資源簡介
論文+代碼
論文詳細P. Perona and J. Malik. Scale-space and edge detection using anisotropic diffusion.IEEE Trans. 1990.

代碼片段和文件信息
%?ANISODIFF?-?Anisotropic?diffusion.
%
%?
%??diff?=?anisodiff(im?niter?kappa?lambda?option)
%
%?
%?????????im?????-?input?image
%?????????niter??-?number?of?iterations.
%?????????kappa??-?conduction?coefficient?20-100??
%?????????lambda?-?max?value?of?.25?for?stability
%?????????option?-?1?Perona?Malik?diffusion?equation?No?1
%??????????????????2?Perona?Malik?diffusion?equation?No?2
%
%?Return
%?????????diff???-?diffused?image.
%
%?kappa?controls?conduction?as?a?function?of?gradient.??If?kappa?is?low
%?then?mall?intensity?gradients?are?able?to?block?conduction?and?hence?diffusion
%?across?step?edges.??A?large?value?reduces?the?influence?of?intensity
%?gradients?on?conduction.
%
%?lambda?controls?speed?of?diffusion?(you?usually?want?it?at?a?maximum?of
%?0.25)
%
%?Diffusion?equation?1?preserve?high?contrast?edges?over?low?contrast?ones.
%?Diffusion?equation?2?favours?wide?regions?over?smaller?ones.
%?Reference:?
%?P.?Perona?and?J.?Malik.?
%?Scale-space?and?edge?detection?using?anisotropic?diffusion.
%?IEEE?Transactions?on?Pattern?Analysis?and?Machine?Intelligence?
%?12(7):629-639?July?1990.
function?diff?=?anisodiff(im?niter?kappa?lambda?option)
if?ndims(im)==3
??error(‘Anisodiff?only?operates?on?2D?grey-scale?images‘);
end
im?=?double(im);
[rowscols]?=?size(im);
diff?=?im;
%{
var?=?2;
x?=?(-4:4);
g?=?exp(-x.*x/(2*var));?g??=?g/sum(g);
blurred?=?conv2(img‘same‘);
im_b?=?conv2(blurredg‘‘same‘);?
%}
for?i?=?1:niter
?%?fprintf(‘\rIteration?%d‘i);
??%?Construct?diffl?which?is?the?same?as?diff?but
??%?has?an?extra?padding?of?zeros?around?it.
??diffl?=?zeros(rows+2?cols+2);
??diffl(2:rows+1?2:cols+1)?=?diff;
??%?North?South?East?and?West?differences
??deltaN?=?diffl(1:rows2:cols+1)???-?diff;
??deltaS?=?diffl(3:rows+22:cols+1)?-?diff;
??deltaE?=?diffl(2:rows+13:cols+2)?-?diff;
??deltaW?=?diffl(2:rows+11:cols)???-?diff;
??%deltaN?=?diff;deltaW;
??
??%?Conduction
??if?option?==?1
????cN?=?exp(-(deltaN/kappa).^2);
????cS?=?exp(-(deltaS/kappa).^2);
????cE?=?exp(-(deltaE/kappa).^2);
????cW?=?exp(-(deltaW/kappa).^2);
??elseif?option?==?2
????cN?=?1./(1?+?(deltaN/kappa).^2);
????cS?=?1./(1?+?(deltaS/kappa).^2);
????cE?=?1./(1?+?(deltaE/kappa).^2);
????cW?=?1./(1?+?(deltaW/kappa).^2);
??end
??%?APPLYING?FOUR-POINT-TEMPLETE?FOR?numerical?solution?of?DIFFUSION?P.D.E.
??
??diff?=?diff?+?lambda*(cN.*deltaN?+?cS.*deltaS?+?cE.*deltaE?+?cW.*deltaW);
%??Uncomment?the?following?to?see?a?progression?of?images
%??subplot(ceil(sqrt(niterations))ceil(sqrt(niterations))?i)
%??imagesc(diff)?colormap(gray)?axis?image
end
%fprintf(‘\n‘);
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件?????1332481??2012-10-21?22:29??PM_AD\Scale-space?and?edge?detection?using?anisotropic?diffusion.pdf
?????文件????????2694??2006-02-13?15:32??PM_AD\anisodiff.m
?????目錄???????????0??2012-11-13?15:24??PM_AD\
- 上一篇:VFp 成績分析系統
- 下一篇:Concurrency in Go中文版.pdf
評論
共有 條評論