demo_nldif.m

来自「包括图像分析的四部分代码:matlab扩散和高斯函数」· M 代码 · 共 34 行

M
34
字号
%%% Perona-Malik nonlinear diffusion demo %%
%%% By Guy Gilboa

[I,map]=imread('ct_scan.bmp'); % load image 
I=ind2gray(I,map);
I=I(181:380,101:300); % cut a piece
% I=I*256; % change to 256 gray level %% (not needed in new Matlab versions)
%parameters
K1=10;  % pm threshold
K2=30;  % pm threshold
Kr=5; % ramp threshold
iter = 50;
dt=0.2;
sigma2=0.1; % variance of Gaussian to convolve grad (Catte et al)

close all
figure(1); imshow(uint8(I)); 
% run linear diffusion
J=diffusion(I,'pm1',iter,K1); 
figure(2); imshow(uint8(J)); 
J=diffusion(I,'pm2',iter,K1); 
figure(3); imshow(uint8(J)); 
J=diffusion(I,'pm1',iter,K2); 
figure(4); imshow(uint8(J)); 
J=diffusion(I,'pm1',iter,K1,dt,sigma2);  % Catte et al
figure(5); imshow(uint8(J)); 
theta=pi/1000; % small phase angle 
K=[Kr theta]; 
J=diffusion(I,'rmp',iter,K);  % Complex ramp preserving
figure(4); imshow(uint8(real(J))); 
figure(5); imshow(uint8(128+2*imag(J)/theta));


⌨️ 快捷键说明

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