自然邻点插值算法 matlab,Matlab实现区域生长算法.doc

Matlab实现区域生长算法PAGE \* MERGEFORMAT5

Matlab实现区域生长算法(南京航空航天大学机电学院机械工程系,南京2016年11月1日)摘要:图像分割不仅是图像处理领域的一个经典的研究主题,也是图像处理技术的热点和焦点。随着计算机处理技术的发展,图像分割算法引起研究人员越来越多的关注。本文提出了基于传统的种子区域生长算法的基础上形成一种新的图像自动分割区域的方法。算法的实现主要基于Matlab编程实现。关键词:图像分割,种子区域生长算法,Matlab一、引言区域生长是一种古老的图像分割方法,最早的区域生长图像分割方法是由Levine等人提出的。该方法一般有两种方式,一种是先给定图像中要分割的目标物体内的一个小块或者说种子区域(seed point),再在种子区域基础上不断将其周围的像素点以一定的规则加入其中,达到最终将代表该物体的所有像素点结合??一个区域的目的;另一种是先将图像分割成很多的一致性较强,如区域内像素灰度值相同的小区域,再按一定的规则将小区域融合成大区域,达到分割图像的目的,典型的区域生长法如T. C. Pong等人提出的基于小面(facet)模型的区域生长法,区域生长法固有的缺点是往往会造成过度分割,即将图像分割成过多的区域 。 区域生长是一种串行区域分割的图像分割方法,其优点是基本思想相对简单,通常能将具有相同特征的联通区域分割出来,并能提供很好的边界信息和分割结果。在没有先验知识可以利用时,可以取得最佳的性能,可以用来分割比较复杂的图像,如自然景物。但是,区域生长法是一种迭代的方法,空间和时间开销都比较大,噪声和灰度不均匀可能会导致空洞和过分割,并在对图像中的阴影效果处理上往往不是很好。 区域生长的基本思想是将具有相似性质的像素集合起来构成区域。具体先对每个需要分割的区域找一个种子像素作为生长的起点,然后将种子像素周围邻域中与种子像素具有相同或相似性质的像素(根据某种事先确定的生长或相似准则来判定)合并到种子像素所在的区域中。将这些新像素当作新的种子像素继续进行上面的过程,直到再没有满足条件的像素可被包括进来,这样,一个区域就长成了。区域生长是指从某个像素出发,按照一定的准则,逐步加入邻近像素,当满足一定的条件时,区域生长终止。区域生长的好坏决定于1.初始点(种子点)的选取。2.生长准则。3.终止条件。区域生长是从某个或者某些像素点出发,最后得到整个区域,进而实现目标的提取。简单来说下三个法则,对出需要分割的图像:1、选取图像中的一点为种子点(种子点的选取需要具体情况具体分析)。2、在种子点处进行8邻域或4邻域扩展,判定准则是:如果考虑的像素与种子像素灰度值相差的绝对值小于某个门限T,则将该像素包括进种子像素所在的区域。3、当不再有像素满足加入这个区域的准则时,区域生长停止。二、理论基础及算法原理:首先确定每个区域中的某个已知点,加上与已知点相似的邻近点形成一个区域,在这里利用区域的均值。当邻近点与区域均值的差值的绝对值小于阈值T时,即满足生长条件。方法是从种子点开始,在8连通方向上生长区域,当其邻近点满足生长条件,则就并入小快区域,当新的点被合并后再用新的区域重复这一过程,直到没有可接受的邻近点时该区域生成过程终止。设计思路:1)通过具体观察某幅图像的直方图,估计其确定种子点范围[S1,S2],并确定其阈值T;2)透过对整幅图像的扫描,找出某个区域的一个种子点: 3)开始利用8连通方向,以该种子点为中心进行生成区域; 4)继续用8连通方向,以该区域为中心,把邻近满足生长条件的点并入,生成新的区域;5)重复4)步,直到不再存在邻近满足生长条件的点为止,该区域生成过程结束;6)继续对图像进行扫描,寻找其他区域的一个种子点,按3)~5)的步骤进行4、程序设计根据下面的流程图可分为三、Matlab代码实现其实现函数的内容主要为以下部分:clc;clear all;close all;image=imread('图片1.bmp'); I=rgb2gray(image); figure,imshow(I); I=double(I); [M,N]=size(I); [y,x]=getpts; %获得区域生长起始点 x1=round(x); %横坐标取整 y1=round(y); %纵坐标取整 seed=I(x1,y1); %将生长起始点灰度值存入seed中 Y=zeros(M,N); %作一个全零与原图像等大的图像矩阵Y,作为输出图像矩阵 Y(x1,y1)=1; %将Y中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值