图像分割之Snake模型PPT课件
- 格式:ppt
- 大小:561.50 KB
- 文档页数:11
利用模糊特征改进S nakes模型的图像分割3石澄贤33,林红章(江苏工业学院数理学院,江苏常州213164)摘要:利用模糊特征自适应地控制曲线法向力场改进参数主动轮廓模型,改进后的模型可以对弱边缘、无边缘区域和纹理图像进行分割。
曲线法向力场加速了曲线收敛到目标区域边界,改进了抓取范围和提取凹区域的能力。
对弱边缘图像、医学图像和纹理的分割实验表明,新方法具有良好的性能。
关键词:主动轮廓模型;图像分割;模糊特征中图分类号:TP391.41 文献标识码:A 文章编号:100520086(2010)0320456205A n imp roved S nak es m od el using fu zzy featu re for im age segm enta2 tionSHI Cheng2xian33,LIN Hong2zhong(School of Mathemmatics&Physics,Jiangsu Polytechnic University,Changzhou213164,China)A bstract:The fuzzy features can contain global,local information and prior knowledge of images.Based on that,the parametric active contour model is improved by using the adaptive normal force of curve re2 lating to fuzzy feature.The improved model provides an image segmentation to images with weak edges, without edges and with texture image.The adaptive balloon force has speeded up the curve convergence to target region boundary,and has improved the capture range and concave object extraction capability. Experimental results show that the novel scheme has a good property of image segmentation to real ima2 ges including objects with weak edges,medical data imagery and texture.K ey w ords:active contour model;image segmentation;fuzzy feature1 引 言 参数主动轮廓模型(称为Snakes模型)[1]是图像分割的一种重要工具,其对图像分割处理的最大贡献在于使分割的边界具有了更好的连续性和平滑性,但是没能很好地同时考虑图像的全局特征,这就造成了初始敏感性问题,即不同的初始化条件可能导致截然不同的分割结果。
Snake模型算法的基本思想数学模型及工作原理Snake模型是由Kass竽人首次提出的算法,广泛地W用于计算机视觉及图像处理屮的各个领域,如边缘检测、图像分割、运动跟踪等,持别应用于图像中感兴趣目标轮廓的提取。
Snake模型引入高层知识,在处理局部间断的边缘时,提取效果比传统轮廓提取方法要好。
1 Snake模型的基本思想Snake模型乂称为主动轮廓线模型(active eontoiir model),其星本思想是依据图像信息进行曲线(曲面)演化,使其最终找到目标物体的边界。
这种方法将分割问题转化为最优化问题,利用闭合曲线(或曲而)形变的特定规彳匚定义度量闭合曲线(曲而)形变的能呈函数,通过最小化能呈换数使曲线(曲而)逐渐逼近图像中目标物体的边缘CSnake模型能量函数的设计原则是:有利属性要能导致能量缩小。
有利属性包括曲线(曲而)连续、平滑、与高梯度区域的接近以及其他一些具体的先验知识。
这样,活劝轮廓在取值范围内移动时,就能在能量函数的指导下收敛到局部边界,而且能保持曲线(曲而)的连续和平滑-Snake模型是在曲线(曲面)本身的内力和图像数据的外部约束力作用下的移动的变形轮廓。
作用在Snake模型上的力依据轮廓所在的位置及其形状决定如何在空间局部的变化。
内力和外力的作用是不同的: 内力起平滑约束作用,外力则引导Snake模型向图像特征移动。
2基于Snake模型的轮廓提取方法对于传统的轮廓提取方法,首先要进行基本的边缘检测,然后进行边缘连接、一值化Z后,继而进行轮廓跟踪处理。
在边缘检测时,易受局部噪声影响而产生虚假边缘,或考是不连续的间断边缘,无法保证分割或者提取的结果就是连续光滑的闭合轮廓;此外,基于底层信息的轮廓跟踪,一方而对一•值化过程的依赖性比较人;另一方而,对于间断的边缘,使用上述简单方法将会跟踪失败。
这些都是传统计算机视觉屮分层处理模型所无法解决的问题。
Snake模型为解决轮廓提取任务提供了新的思维方法。
图像分割之(五)活动轮廓模型之Snake模型简介在“图像分割之(一)概述”中咱们简单了解了目前主流的图像分割方法。
下面咱们主要学习下基于能量泛函的分割方法。
这里学习下Snake模型简单的知识,Level Set(水平集)模型会在后面的博文中说到。
基于能量泛函的分割方法:该类方法主要指的是活动轮廓模型(active contour model)以及在其基础上发展出来的算法,其基本思想是使用连续曲线来表达目标边缘,并定义一个能量泛函使得其自变量包括边缘曲线,因此分割过程就转变为求解能量泛函的最小值的过程,一般可通过求解函数对应的欧拉(Euler.Lagrange)方程来实现,能量达到最小时的曲线位置就是目标的轮廓所在。
主动轮廓线模型是一个自顶向下定位图像特征的机制,用户或其他自动处理过程通过事先在感兴趣目标附近放置一个初始轮廓线,在内部能量(内力)和外部能量(外力)的作用下变形外部能量吸引活动轮廓朝物体边缘运动,而内部能量保持活动轮廓的光滑性和拓扑性,当能量达到最小时,活动轮廓收敛到所要检测的物体边缘。
一、曲线演化理论曲线演化理论在水平集中运用到,但我感觉在主动轮廓线模型的分割方法中,这个知识是公用的,所以这里我们简单了解下。
曲线可以简单的分为几种:曲线存在曲率,曲率有正有负,于是在法向曲率力的推动下,曲线的运动方向之间有所不同:有些部分朝外扩展,而有些部分则朝内运动。
这种情形如下图所示。
图中蓝色箭头处的曲率为负,而绿色箭头处的曲率为正。
简单曲线在曲率力(也就是曲线的二次导数)的驱动下演化所具有的一种非常特殊的数学性质是:一切简单曲线,无论被扭曲得多么严重,只要还是一种简单曲线,那么在曲率力的推动下最终将退化成一个圆,然后消逝(可以想象下,圆的所有点的曲率力都向着圆心,所以它将慢慢缩小,以致最后消逝)。
描述曲线几何特征的两个重要参数是单位法矢和曲率,单位法矢描述曲线的方向,曲率则表述曲线弯曲的程度。
计算机视觉实验二——图像分割:snake轮廓模型简介Snake是Active Contour Model的一种,它以构成一定形状的一些控制点为模版(轮廓线),通过模版自身的弹性形变,与图像局部特征相匹配达到调和,即某种能量函数极小化,完成对图像的分割。
每一个Snake都是能量最小曲线,受外部限制力引导及图像力的影响使它向着线和边缘等特征移动。
Snakes是活动轮廓模型:他们自动跟踪附近边缘,准确地使曲线集中。
尺度空间(scale-space)的连续性用来去扩大对特征周围区域的捕获。
Snakes提供一种许多视觉问题的统一的解决方法,包括检测边,线及主观轮廓;移动跟踪;及立体匹配。
我们成功使用Snakes用于交互解释(interactive interpretation),即用户提出一种限制力引导Snake靠近感兴趣的特征。
基本snake性能我们的基本snake模型是一条被控制的连续曲线,其曲线受图像力和外部限制力的影响。
内部样条(splint)力用来加以分段平滑限制。
图像力把snake推向显著图像特征,如线,边,主观轮廓等等。
外部限制力负责推动snakes靠近理想的局部最小值。
例如这些力,可以来自使用者接口,自动注意机制(automatic attentional mechanisms),或者高层解释(high-level interpretations)。
实验关键步骤代码1.获取手动取点坐标,该部分代码如下14 % =========================================================================15 %获取手动取点坐标16 % =========================================================================17 %读取显示图像18 %I = imread('Coronary_MPR.jpg');19 I = imread('plane.png');20 %转化为双精度型21 %I = im2double(I);22 %若为彩色,转化为灰度23 i f(size(I,3)==3), I=rgb2gray(I); end24 f igure(1),imshow(I);25 %---------------------------26 %高斯滤波27 %---------------------------28 s igma=1;29 %创建特定形式的二维高斯滤波器H30 H = fspecial('gaussian',ceil(3*sigma), sigma);31 %对图像进行高斯滤波,返回和I等大小矩阵32 I gs = filter2(H,I,'same');33 %---------------------------34 %获取Snake的点坐标35 %---------------------------36 f igure(2),imshow(Igs);37 x=[];y=[];c=1;N=100; %定义取点个数c,上限N38 %获取User手动取点的坐标39 % [x,y]=getpts40 w hile c<N41 [xi,yi,button]=ginput(1);42 % 获取坐标向量43 x=[x xi];44 y=[y yi];45 hold on46 % text(xi,yi,'o','FontSize',10,'Color','red');47 plot(xi,yi,'ro');48 % 若为右击,则停止循环49 if(button==3), break; end50 c=c+1;51 e nd5253 %将第一个点复制到矩阵最后,构成Snake环54 x y = [x;y];55 c=c+1;56 x y(:,c)=xy(:,1);57 %样条曲线差值58 t=1:c;59 t s = 1:0.1:c;60 x ys = spline(t,xy,ts);61 x s = xys(1,:);62 y s = xys(2,:);63 %样条差值效果64 h old on65 t emp=plot(x(1),y(1),'ro',xs,ys,'b.');66 l egend(temp,'原点','插值点');2.Snake算法实现部分,代码如下:68 % =========================================================================69 % Snakes算法实现部分70 % =========================================================================71 N Iter =1000; % 迭代次数72 a lpha=0.2; beta=0.2; gamma = 1; kappa = 0.1;73 w l = 0; we=0.4; wt=0;74 [row col] = size(Igs);7576 %图像力-线函数77 E line = Igs;78 %图像力-边函数79 [gx,gy]=gradient(Igs);80 E edge = -1*sqrt((gx.*gx+gy.*gy));81 %图像力-终点函数82 %卷积是为了求解偏导数,而离散点的偏导即差分求解83 m1 = [-11];84 m2 = [-1;1];85 m3 = [1 -21];86 m4 = [1;-2;1];87 m5 = [1 -1;-11];88 c x = conv2(Igs,m1,'same');89 c y = conv2(Igs,m2,'same');90 c xx = conv2(Igs,m3,'same');91 c yy = conv2(Igs,m4,'same');92 c xy = conv2(Igs,m5,'same');9394 f or i = 1:row95 for j= 1:col96 Eterm(i,j) = (cyy(i,j)*cx(i,j)*cx(i,j) -2 *cxy(i,j)*cx(i,j)*cy(i,j) +cxx(i,j)*cy(i,j)*cy(i,j))/((1+cx(i,j)*cx(i,j) + cy(i,j)*cy(i,j))^1.5);97 end98 e nd99100 %figure(3),imshow(Eterm);101 %figure(4),imshow(abs(Eedge));102 %外部力 Eext = Eimage + Econ103 E ext = wl*Eline + we*Eedge + wt*Eterm;104 %计算梯度105 [fx,fy]=gradient(Eext);106107 x s=xs';108 y s=ys';109 [m n] = size(xs);110 [mm nn] = size(fx);111112 %计算五对角状矩阵113 %附录: 公式(14) b(i)表示vi系数(i=i-2 到 i+2)114 b(1)=beta;115 b(2)=-(alpha + 4*beta);116 b(3)=(2*alpha + 6 *beta);117 b(4)=b(2);118 b(5)=b(1);119120 A=b(1)*circshift(eye(m),2);121 A=A+b(2)*circshift(eye(m),1);122 A=A+b(3)*circshift(eye(m),0);123 A=A+b(4)*circshift(eye(m),-1);124 A=A+b(5)*circshift(eye(m),-2);125126 %计算矩阵的逆127 [L U] = lu(A + gamma.* eye(m));128 A inv = inv(U) * inv(L);3.画图部分,代码如下:130 % ========================================================================= 131 %画图部分132 % ========================================================================= 133 %text(10,10,'+','FontName','Time','FontSize',20,'Color','red');134 %迭代计算135 f igure(3)136 f or i=1:NIter;137 ssx = gamma*xs - kappa*interp2(fx,xs,ys);138 ssy = gamma*ys - kappa*interp2(fy,xs,ys);139140 % 计算snake的新位置141 xs = Ainv * ssx;142 ys = Ainv * ssy;143144 % 显示snake的新位置145 imshow(I);146 hold on;147 plot([xs; xs(1)], [ys; ys(1)], 'r-');148 hold off;149 pause(0.001)150 e nd实验步骤及结果1.读取待处理图像,若是彩色图像,必须转化为灰度,结果如图1。
图像分割之(五)活动轮廓模型之Snake模型简介在“图像分割之(一)概述”中咱们简单了解了目前主流的图像分割法。
下面咱们主要学习下基于能量泛函的分割法。
这里学习下Snake模型简单的知识,Level Set(水平集)模型会在后面的博文中说到。
基于能量泛函的分割法:该类法主要指的是活动轮廓模型(active contour model)以及在其基础上发展出来的算法,其基本思想是使用连续曲线来表达目标边缘,并定义一个能量泛函使得其自变量包括边缘曲线,因此分割过程就转变为求解能量泛函的最小值的过程,一般可通过求解函数对应的欧拉(Euler.Lagrange)程来实现,能量达到最小时的曲线位置就是目标的轮廓所在。
主动轮廓线模型是一个自顶向下定位图像特征的机制,用户或其他自动处理过程通过事先在感兴趣目标附近放置一个初始轮廓线,在部能量(力)和外部能量(外力)的作用下变形外部能量吸引活动轮廓朝物体边缘运动,而部能量保持活动轮廓的光滑性和拓扑性,当能量达到最小时,活动轮廓收敛到所要检测的物体边缘。
一、曲线演化理论曲线演化理论在水平集中运用到,但我感觉在主动轮廓线模型的分割法中,这个知识是公用的,所以这里我们简单了解下。
曲线可以简单的分为几种:曲线存在曲率,曲率有正有负,于是在法向曲率力的推动下,曲线的运动向之间有所不同:有些部分朝外扩展,而有些部分则朝运动。
这种情形如下图所示。
图中蓝色箭头处的曲率为负,而绿色箭头处的曲率为正。
简单曲线在曲率力(也就是曲线的二次导数)的驱动下演化所具有的一种非常特殊的数学性质是:一切简单曲线,无论被扭曲得多么重,只要还是一种简单曲线,那么在曲率力的推动下最终将退化成一个圆,然后消逝(可以想象下,圆的所有点的曲率力都向着圆心,所以它将慢慢缩小,以致最后消逝)。
描述曲线几特征的两个重要参数是单位法矢和曲率,单位法矢描述曲线的向,曲率则表述曲线弯曲的程度。
曲线演化理论就是仅利用曲线的单位法矢和曲率等几参数来研究曲线随时间的变形。
作者简介:倪雅樱,南京航空航天大学硕士研究生,研究方向:医学图像处理,E 2mail :icenyy @基于Snake 模型的医学图像分割倪雅樱1 胡志忠21.南京航空航天大学自动化学院生物医学工程系 (江苏南京 210016)2.南京航空航天大学信息科学与技术学院 (江苏南京 210016) 【摘要】 基于Snake 模型的图像分割技术是近年来图像处理领域的研究热点之一。
Snake 模型承载上层先验知识并融合了图像的底层特征,针对医学图像的特殊性,能有效地应用于医学图像的分割中。
本文对各种基于Snake 模型的改进算法和进化模型进行了研究,并重点梳理了最新的研究成果,以利于把握基于Snake 模型的医学图像分割方法的脉络和发展方向。
【关键词】 医学图像分割;Snake 模型;连续Snake ;R -Snake 模型Medical Image Segmentation B ased on Snake ModelNi Y aying 1 Hu Zhizhong 21.C ollege of Automation Engineering ,Nan Jing University of Aeronautics &Astronautics (Nanjing 210016)2.C ollege of In formation Science &T echnology ,Nan Jing University ofAeronautics &Astronautics (Nanjing 210016) 【Abstract 】 Image Segmentation based on Snake m odel is one of the focuses in the field of image processing in re 2cent years.The Snake m odel inherits the prior knowledge of the upper layer and integrates the characteristics of the lower layer of images.It can be applied effectively to the medical image segmentation for the unique of medical images.In this paper ,im proved alg orithms and ev olving m odels based on Snake m odel are researched.Additionally ,the latest research results are described to keep track of the development trend of the m odels.【K ey Words 】 Medical image segmentation ;Snake m odel ;C ontinuous Snakes ;R -Snake m ode 1 引言图像分割是医学图像处理中重要研究内容之一。