-
大小: 1.82MB文件类型: .rar金币: 1下载: 0 次发布日期: 2022-06-08
- 语言: 其他
- 标签: LevelSet LiChunMing DRLSE
资源简介
李春明老师2010年文章代码,文章和代码都包含在压缩文件里!
代码片段和文件信息
% This Matlab code demonstrates an edge-based active contour model as an application of
% the Distance Regularized Level Set Evolution (DRLSE) formulation in the following paper:
%
% C. Li C. Xu C. Gui M. D. Fox “Distance Regularized Level Set Evolution and Its Application to Image Segmentation“
% IEEE Trans. Image Processing vol. 19 (12) pp. 3243-3254 2010.
%
% Author: Chunming Li all rights reserved
% E-mail: lchunming@gmail.com
% li_chunming@hotmail.com
% URL: http://www.imagecomputing.org/~cmli//
clear all;
close all;
Img=imread(‘gourd.bmp‘);
Img=double(Img(::1));
%% parameter setting
timestep=1; % time step
mu=0.2/timestep; % coefficient of the distance regularization term R(phi)
iter_inner=5;
iter_outer=20;
lambda=5; % coefficient of the weighted length term L(phi)
alfa=-3; % coefficient of the weighted area term A(phi)
epsilon=1.5; % papramater that specifies the width of the DiracDelta function
sigma=.8; % scale parameter in Gaussian kernel
G=fspecial(‘gaussian‘15sigma); % Caussian kernel
Img_smooth=conv2(ImgG‘same‘); % smooth image by Gaussiin convolution
[IxIy]=gradient(Img_smooth);
f=Ix.^2+Iy.^2;
g=1./(1+f); % edge indicator function.
% initialize LSF as binary step function
c0=2;
initialLSF = c0*ones(size(Img));
% generate the initial region R0 as two rectangles
initialLSF(25:3520:25)=-c0;
initialLSF(25:3540:50)=-c0;
phi=initialLSF;
figure(1);
mesh(-phi); % for a better view the LSF is displayed upside down
hold on; contour(phi [00] ‘r‘‘LineWidth‘2);
title(‘Initial level set function‘);
view([-80 35]);
figure(2);
imagesc(Img[0 255]); axis off; axis equal; colormap(gray); hold on; contour(phi [00] ‘r‘);
title(‘Initial zero level contour‘);
pause(0.5);
potential=2;
if potential ==1
potentialFunction = ‘single-well‘; % use single well potential p1(s)=0.5*(s-1)^2 which is good for region-based model
elseif potential == 2
potentialFunction = ‘double-well‘; % use double-well potential in Eq. (16) which is good for both edge and region based models
else
potentialFunction = ‘double-well‘; % default choice of potential function
end
% start level set evolution
for n=1:iter_outer
phi = drlse_edge(phi g lambda mu alfa epsilon timestep iter_inner potentialFunction);
if mod(n2)==0
figure(2);
imagesc(Img[0 255]); axis off; axis equal; colormap(gray); hold on; contour(phi [00] ‘r‘);
end
end
% refine the zero level contour by further level set evolution with alfa=0
alfa=0;
iter_refine = 10;
phi = drlse_edge(phi g lambda mu alfa epsilon timestep iter_inner potentialFunction);
finalLSF=phi;
figure(2);
imagesc(Img[0 255]); axis off; axis equal; colormap(gray); hold on; contour(phi [00] ‘r‘);
hold on; contour(phi [00] ‘r‘);
str=[‘Final zero level contour ‘ num2str(iter_outer*iter_inner+iter_refine) ‘ iterations‘];
ti
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3389 2013-06-01 10:48 DRLSE_v0\DRLSE_v0\demo_1.m
文件 3265 2013-06-01 10:49 DRLSE_v0\DRLSE_v0\demo_2.m
文件 1978453 2011-02-20 23:14 DRLSE_v0\DRLSE_v0\DRLSE.pdf
文件 3599 2013-06-01 10:50 DRLSE_v0\DRLSE_v0\drlse_edge.m
文件 5798 2010-04-05 22:35 DRLSE_v0\DRLSE_v0\gourd.bmp
文件 16434 2004-07-23 19:36 DRLSE_v0\DRLSE_v0\twocells.bmp
目录 0 2013-06-01 10:44 DRLSE_v0\DRLSE_v0
目录 0 2018-09-14 21:14 DRLSE_v0
----------- --------- ---------- ----- ----
2010938 8
- 上一篇:ar9285-ar9287无线网卡黑苹果驱动
- 下一篇:STM8L硬件IIC从机
评论
共有 条评论