Matlab 实现区域生长算法
Matlab 实现区域生长算法
(南京航空航天大学机电学院机械工程系,南京
2016 年 11 月 1 日
)
摘要
:
图像分割不仅是图像处理领域的一个经典的研究主题,也是图像处理技术的
热点和焦点。随着计算机处理技术的发展,图像分割算法引起研究人员越来越多
的关注。本文提出了基于传统的种子区域生长算法的基础上形成一种新的图像自
动分割区域的方法。算法的实现主要基于 Matlab 编程实现。
关键词:图像分割,种子区域生长算法,Matlab
一、引言
区域生长是一种古老的图像分割方法,最早的区域生长图像分割方法是由
Levine 等人提出的。该方法一般有两种方式,一种是先给定图像中要分割的目标
物体内的一个小块或者说种子区域(seed point),再在种子区域基础上不断将其周
围的像素点以一定的规则加入其中,达到最终将代表该物体的所有像素点结合成
一个区域的目的;另一种是先将图像分割成很多的一致性较强,如区域内像素灰
度值相同的小区域,再按一定的规则将小区域融合成大区域,达到分割图像的目
的,典型的区域生长法如 T. C. Pong 等人提出的基于小面(facet)模型的区域生
长法,区域生长法固有的缺点是往往会造成过度分割,即将图像分割成过多的区
域 。
区域生长是一种串行区域分割的图像分割方法,其优点是基本思想相对简单,
通常能将具有相同特征的联通区域分割出来,并能提供很好的边界信息和分割结
果。在没有先验知识可以利用时,可以取得最佳的性能,可以用来分割比较复杂
的图像,如自然景物。但是,区域生长法是一种迭代的方法,空间和时间开销都
比较大,噪声和灰度不均匀可能会导致空洞和过分割,并在对图像中的阴影效果
处理上往往不是很好。
区域生长的基本思想是将具有相似性质的像素集合起来构成区域。具体先对
每个需要分割的区域找一个种子像素作为生长的起点,然后将种子像素周围邻域
中与种子像素具有相同或相似性质的像素(根据某种事先确定的生长或相似准则
来判定)合并到种子像素所在的区域中。将这些新像素当作新的种子像素继续进
行上面的过程,直到再没有满足条件的像素可被包括进来,这样,一个区域就长
成了。
区域生长是指从某个像素出发,按照一定的准则,逐步加入邻近像素,当满
足一定的条件时,区域生长终止。区域生长的好坏决定于1.初始点(种子点)的
选取。2.生长准则。3.终止条件。区域生长是从某个或者某些像素点出发,最后
得到整个区域,进而实现目标的提取。
简单来说下三个法则,对出需要分割的图像:
1、选取图像中的一点为种子点(种子点的选取需要具体情况具体分析)。
2、在种子点处进行 8 邻域或 4 邻域扩展,判定准则是:如果考虑的像素与
1
评论14
最新资源