ImageVerifierCode 换一换
格式:DOCX , 页数:5 ,大小:178.27KB ,
资源ID:6691536      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-6691536.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Matlab实现区域生长算法.docx)为本站会员(HR专家)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

Matlab实现区域生长算法.docx

1、Matlab 实现区域生长算法1Matlab 实现区域生长算法(南京航空航天大学机电学院机械工程系,南京 2016 年 11 月 1 日)摘要:图像分割不仅是图像处理领域的一个经典的研究主题,也是图像处理技术的热点和焦点。随着计算机处理技术的发展,图像分割算法引起研究人员越来越多的关注。本文提出了基于传统的种子区域生长算法的基础上形成一种新的图像自动分割区域的方法。算法的实现主要基于 Matlab 编程实现。关键词:图像分割,种子区域生长算法,Matlab一、引言区域生长是一种古老的图像分割方法,最早的区域生长图像分割方法是由Levine 等人提出的。该方法一般有两种方式,一种是先给定图像中要

2、分割的目标物体内的一个小块或者说种子区域(seed point),再在种子区域基础上不断将其周围的像素点以一定的规则加入其中,达到最终将代表该物体的所有像素点结合成一个区域的目的;另一种是先将图像分割成很多的一致性较强,如区域内像素灰度值相同的小区域,再按一定的规则将小区域融合成大区域,达到分割图像的目的,典型的区域生长法如 T. C. Pong 等人提出的基于小面(facet )模型的区域生长法,区域生长法固有的缺点是往往会造成过度分割,即将图像分割成过多的区域 。 区域生长是一种串行区域分割的图像分割方法,其优点是基本思想相对简单,通常能将具有相同特征的联通区域分割出来,并能提供很好的边界

3、信息和分割结果。在没有先验知识可以利用时,可以取得最佳的性能,可以用来分割比较复杂的图像,如自然景物。但是,区域生长法是一种迭代的方法,空间和时间开销都比较大,噪声和灰度不均匀可能会导致空洞和过分割,并在对图像中的阴影效果处理上往往不是很好。 区域生长的基本思想是将具有相似性质的像素集合起来构成区域。具体先对每个需要分割的区域找一个种子像素作为生长的起点,然后将种子像素周围邻域中与种子像素具有相同或相似性质的像素(根据某种事先确定的生长或相似准则来判定)合并到种子像素所在的区域中。将这些新像素当作新的种子像素继续进行上面的过程,直到再没有满足条件的像素可被包括进来,这样,一个区域就长成了。区域

4、生长是指从某个像素出发,按照一定的准则,逐步加入邻近像素,当满足一定的条件时,区域生长终止。区域生长的好坏决定于 1.初始点(种子点)的选取。2.生长准则。3.终止条件。区域生长是从某个或者某些像素点出发,最后得到整个区域,进而实现目标的提取。简单来说下三个法则,对出需要分割的图像:1、选取图像中的一点为种子点(种子点的选取需要具体情况具体分析) 。2、在种子点处进行 8 邻域或 4 邻域扩展,判定准则是:如果考虑的像素与Matlab 实现区域生长算法2种子像素灰度值相差的绝对值小于某个门限 T,则将该像素包括进种子像素所在的区域。3、当不再有像素满足加入这个区域的准则时,区域生长停止。二、理

5、论基础及算法原理:首先确定每个区域中的某个已知点,加上与已知点相似的邻近点形成一个区域,在这里利用区域的均值。当邻近点与区域均值的差值的绝对值小于阈值 T 时,即满足生长条件。方法是从种子点开始,在 8 连通方向上生长区域,当其邻近点满足生长条件,则就并入小快区域,当新的点被合并后再用新的区域重复这一过程,直到没有可接受的邻近点时该区域生成过程终止。设计思路:1)通过具体观察某幅图像的直方图,估计其确定种子点范围S1,S2,并确定其阈值 T;2)透过对整幅图像的扫描,找出某个区域的一个种子点: 3)开始利用 8 连通方向,以该种子点为中心进行生成区域; 4)继续用 8 连通方向,以该区域为中心

6、,把邻近满足生长条件的点并入,生成新的区域;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=r

7、ound(y); %纵坐标取整 seed=I(x1,y1); %将生长起始点灰度值存入 seed 中 Y=zeros(M,N); %作一个全零与原图像等大的图像矩阵 Y,作为输出图像矩阵 Y(x1,y1)=1; %将 Y 中与所取点相对应位置的点设置为白场 sum=seed; %储存符合区域生长条件的点的灰度值的和 suit=1; %储存符合区域生长条件的点的个数 Matlab 实现区域生长算法3count=1; %记录每次判断一点周围八点符合条件的新点的数目 threshold=15; %域值 while count0 s=0; %记录判断一点周围八点时,符合条件的新点的灰度值之和 coun

8、t=0; for i=1:M for j=1:N if Y(i,j)=1 if (i-1)0 %符合以上两条件即将其在 Y 中与之位置对应的点设置为白场 count=count+1; s=s+I(i+u,j+v); %此点的灰度之加入 s 中 end end end end end end end suit=suit+count; %将 n 加入符合点数计数器中 sum=sum+s; %将 s 加入符合点的灰度值总合中 seed=sum/suit; %计算新的灰度平均值 end figure,imshow(Y); 四、实验结果与分析将图片路径添加到程序中,点击运行获得 figure1注意,图片

9、是要进行处理的,我们可以在 Windows 自带的画板中进行编辑,将图片改成 bmp 格式。1、原图Matlab 实现区域生长算法42、点击 figure1 任意数字中的白色区域(获得种子)会获得 figure2 中的四种情况,分别展现出 5、6、7、8。这样一来,程序运行获得成功。五、总结此算法运行速度很快,但精确度不够高,因为设置的最小区域值决定了区域分割的准确性,所以会有锯齿状的边缘,这是一个缺点。同时也可以在此基础上,增添一些其他的算法,例如对彩色图像阈值的分割,这是今后学习中需Matlab 实现区域生长算法5要进阶和加强的。之后在压缩包中将附上源程序以供参考。六、参考文献1 柯卫,

10、王宏力, 袁宇,崔祥祥,陆敬辉. 基于区域生长法的星图中星的提取方法J. 传感器与微系统. 2015(12) 2 王章玉 ,杨翠微. 基于改进型区域生长法的心脏三维建模的实现J. 中国医疗器械杂志. 2014(05) 3 严深海,黄贤通 ,刘洋. 种子区域生长法的改进算法及其在钉螺图像提取中的应用J. 韶关学院学报. 2011(10) 4 黄谊,任毅. 基于阈值法和区域生长法的图像分割算法研究J. 电子测试. 2012(10) 5 何晖,余松林, 娄亮. 一种基于区域生长法的背景图像斑点提取方法J. 光电技术应用. 2008(04) 6 周学成,罗锡文. 采用区域生长法分割根系 CT 图像的改进算法J. 农业机械学报. 2006(12)

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报