版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
图像阈值分割和边缘检测技术原理和比拟摘要图像分割是一种重要的图像分析技术。对图像分割的研究一直是图像技术研究中的热点和焦点。医学图像分割是图像分割的一个重要应用领域,也是一个经典难题,至今已有上千种分割方法,既有经典的方法也有结合新兴理论的方法。医学图像分割是医学图像处理中的一个经典难题。图像分割能够自动或半自动描绘出医学图像中的解剖结构和其它感兴趣的区域,从而有助于医学诊断。阈值分割是一种利用图像中要提取的目标物与其背景在灰度特性上的差异,把图像视为具有不同灰度级的两类区域〔目标和背景〕的组合,选取一个适宜的阈值,以确定图像中每个像素点应该属于目标区域还是背景区域,从而产生对应的二值图像。本文先介绍各种常见图像阈值分割和边缘检测方法的原理和算法,然后通过MATLAB程序实现,最后通过比拟各种分割算法的结果并得出结论。关键词:图像分割;阈值选择;边缘检测;目录1.概述42.图像阈值分割和边缘检测原理42.1.阈值分割原理4.手动〔全局〕阈值分割5.迭代算法阈值分割5.大津算法阈值分割62.2.边缘检测原理6.roberts算子边缘检测7.prewitt算子边缘检测7.sobel算子边缘检测7.高斯laplacian算子边缘检测8.canny算子边缘检测83.设计方案94.实验过程94.1.阈值分割12.手动〔全局〕阈值分割12.迭代算法阈值分割12.大津算法阈值分割124.2.边缘检测12.roberts算子边缘检测12.prewitt算子边缘检测13.sobel算子边缘检测13.高斯laplacian算子边缘检测13.canny算子边缘检测135.试验结果及分析145.1.实验结果14.手动〔全局〕阈值分割14.迭代算法阈值分割16.大津算法阈值分割17.roberts算子边缘检测18.prewitt算子边缘检测19.sobel算子边缘检测20.高斯laplacian算子边缘检测21.canny算子边缘检测225.2.实验结果分析和总结23参考文献231.概述图像分割是指根据灰度、彩色、空间纹理、几何形状等特征把图像划分成假设干个互不相交的区域,使得这些特征在同一区域内,表现出一致性或相似性,而在不同区域间表现出明显的不同[37].简单的讲,就是在一幅图像中,把目标从背景中别离出来,以便于进一步处理。图像分割是图像处理与计算机视觉领域低层次视觉中最为根底和重要的领域之一,它是对图像进行视觉分析和模式识别的根本前提.同时它也是一个经典难题,到目前为止既不存在一种通用的图像分割方法,也不存在一种判断是否分割成功的客观标准。阈值法是一种传统的图像分割方法,因其实现简单、计算量小、性能较稳定而成为图像分割中最根本和应用最广泛的分割技术.已被应用于很多的领域,例如,在红外技术应用中,红外无损检测中红外热图像的分割,红外成像跟踪系统中目标的分割;在遥感应用中,合成孔径雷达图像中目标的分割等;在医学应用中,血液细胞图像的分割,磁共振图像的分割;在农业工程应用中,水果品质无损检测过程中水果图像与背景的分割。在工业生产中,机器视觉运用于产品质量检测等等。在这些应用中,分割是对图像进一步分析、识别的前提,分割的准确性将直接影响后续任务的有效性,其中阈值的选取是图像阈值分割方法中的关键技术。图像分析和理解的第一步常常是边缘检测。边缘检测方法是人们研究得比拟多的一种方法,它通过检测图像中不同区域的边缘来到达分割图像的目的。边缘检测的实质是采用某种算法来提取出图像中对象与背景问的交界线。我们将边缘定义为图像中灰度发生急剧变化的区域边界。图像灰度的变化情况可以用图像灰度分布的梯度来反映,因此我们可以用局部图像微分技术来获得边缘检测算子。经典的边缘检测方法,是通过对原始图像中像素的某小邻域构造边缘检测算子来到达检测边缘这一目的。2.图像阈值分割和边缘检测原理2.1.阈值分割原理对灰度图像的取阈值分割就是先确定一个处于图像灰度取值范围之中的灰度阈值,然后将图像中各个像素的灰度值都与这个阈值相比拟,并根据比拟结果将对应的像素分为两类。这两类像素一般分属图像的两类区域,从而到达分割的目的。阈值分割算法主要有两个步骤:〔1〕确定需要的阈值;〔2〕将分割阈值与像素值比拟以划分像素。可以看出,确定一个最优阈值是分割的关键。现有的大局部算法都是集中在阈值确定的研究上。阈值分割方法根据图像本身的特点,可分为单阈值分割方法和多阈值分割方法:也可分为基于像素值的阈值分割方法、基于区域性质的阈值分割方法和基于坐标位置的阈值分割方法.假设考虑分割算法所用的特征或准那么的特点,还可以分为直方图与直方图变换法、最大类空间方差法、最小误差法与均匀化误差法、共生矩阵法、最大熵法、简单统计法与局部特性法、概率松弛法、模糊集法等。在这里我们只介绍手动阈值分割〔又称双峰阈值分割或者全局阈值分割〕,迭代算法阈值分割,大津法〔OTSU法〕阈值分割。2.1.1.手动〔全局〕阈值分割手动阈值分割算法,由于工作原理是用一个手动设定的灰度阈值对整个图像做分割,进而产生二值图像,所以又称全局分割算饭,同时这种分割算法对于图像灰度直方图呈双峰分布时比拟有效,故又称双峰分割算法。假设图像中目标和背景具有不同的灰度集合:目标灰度集合与背景灰度集合,且两个灰度集合可用一个灰度级阈值T进行分割。这样就可以用阈值分割灰度级的方法在图像中分割出目标区域与背景区域,这种方法称为灰度阈值分割方法。在物体与背景有较强的比照度的图像中,此种方法应用特别有效。比方说物体内部灰度分布均匀一致,背景在另一个灰度级上也分布均匀,这时利用阈值可以将目标与背景分割得很好。如果目标和背景的差异是某些其他特征而不是灰度特征时,那么先将这些特征差异转化为灰度差异,然后再应用阈值分割方法进行处理,这样使用阈值分割技术也可能是有效的设图像为f(x,y),其灰度集范围是[0,L],在0和L之间选择一个适宜的灰度阈值T,那么图像分割方法可由式〔2.1〕描述〔2.1〕这样得到的g(x,y)是一幅二值图像。这时T的大小将直接影响分割的效果。由于这种分割算法适用范围有限,而且要手动设定灰度阈值,过程复杂而且有时灰度阈值不易寻找,进而出现了自动阈值分割,主要是迭代算法和大津算法〔OTSU〕阈值分割。2.1.2.迭代算法阈值分割迭代算法是对双峰法的改良,它首先选择一个近似阈值T,将图像分割成两个局部G1和G2,然后计算G1和G2像素的平均灰度值m1和m2,选择新的分割阈值T=T=(m1+m2)/2;重复以上步骤,知道T不变为止。迭代法适合图像直方图有明显波谷。迭代算法是基于逼近的思想,其主要步骤如下:1.为全局阈值选择一个初始估计值T(图像的平均灰度)。
2.用T分割图像。产生两组像素:G1有灰度值大于T的像素组成,G2有小于等于T像素组成。
3.计算G1和G2像素的平均灰度值m1和m2;
4.计算一个新的阈值:T=(m1+m2)/2;
5.重复步骤2和4,直到连续迭代中的T值间的差小于一个预定义参数为止。然后再用阈值分割对图像进行分割得到二值灰度图像。2.1.3.大津算法阈值分割大津法〔OTSU〕是一种确定图像二值化分割阈值的算法,由日本学者大津于1979年提出。从大津法的原理上来讲,该方法又称作最大类间方差法,因为按照大津法求得的阈值进行图像二值化分割后,前景与背景图像的类间方差最大。对于图像f(x,y),前景(即目标)和背景的分割阈值记作T,属于前景的像素点数占整幅图像的比例记为ω0,其平均灰度μ0;背景像素点数占整幅图像的比例为ω1,其平均灰度为μ1。图像的总平均灰度记为μ,类间方差记为g。假设图像的背景较暗,并且图像的大小为M×N,图像中像素的灰度值小于阈值T的像素个数记作N0,像素灰度大于阈值T的像素个数记作N1,那么有:
ω0=N0/M×N(1)
ω1=N1/M×N(2)
N0+N1=M×N(3)
ω0+ω1=1(4)μ=ω0*μ0+ω1*μ1(5)
g=ω0(μ0-μ)^2+ω1(μ1-μ)^2(6)
将式(5)代入式(6),得到等价公式:
g=ω0ω1(μ0-μ1)^2(7)这就是类间方差采用遍历的方法得到使类间方差g最大的阈值T,即为所求。然后再用所得到的T进行全局阈值分割得到二值图像。2.2.边缘检测原理图像分析和理解的第一步常常是边缘检测。边缘检测方法是人们研究得比拟多的一种方法,它通过检测图像中不同区域的边缘来到达分割图像的目的。边缘检测的实质是采用某种算法来提取出图像中对象与背景问的交界线。我们将边缘定义为图像中灰度发生急剧变化的区域边界。图像灰度的变化情况可以用图像灰度分布的梯度来反映,因此我们可以用局部图像微分技术来获得边缘检测算子。经典的边缘检测方法,是通过对原始图像中像素的某小邻域构造边缘检测算子来到达检测边缘这一目的。2.2.1.roberts算子边缘检测函数的梯度定义为通常把梯度的模叫做图象的梯度。对于数字图象,可以用差分来近似微分roberts算子模板的形式就是.prewitt算子边缘检测Prewitt算子由两局部组成,检测水平边缘的模板和检测垂直边缘的模板。对数字图像f(x,y),Prewitt算子的定义如下:水平方向Gx=[f(i-1,j-1)+f(i-1,j)+f(i-1,j+1)]-[f(i+1,j-1)+f(i+1,j)+f(i+1,j+1)]垂直方向Gy=[f(i-1,j+1)+f(i,j+1)+f(i+1,j+1)]-[f(i-1,j-1)+f(i,j-1)+f(i+1,j-1)]G(i,j)=|Gx|+|Gy|。经典Prewitt算子认为:凡灰度新值大于或等于阈值的像素点都是边缘点。即选择适当的阈值T,假设G(i,j)≥T,那么G(i,j)为边缘点。这种判定是欠合理的,会造成边缘点的误判,因为许多噪声点的灰度值也很大,而且对于幅值较小的边缘点,其边缘反而丧失了。.sobel算子边缘检测Sobel算子也有两个,一个是检测水平边缘的模板,另一个是检测水平边缘的模板。sobel算子的另一种形式是各向同性Sobel算子,也有两个模板组成,一个是检测水平边缘的,另一个是检测垂直边缘的。各向同性Sobel算子和普通Sobel算子相比,位置加权系数更为准确,在检测不同方向的边缘时梯度的幅度一致。本文中我们使用原始的sobel算子。.高斯laplacian算子边缘检测Laplacian算子定义为它的差分形式为
laplacian表示成模板的形式就是。Laplace算子是一种各向同性算子,在只关心边缘的位置而不考虑其周围的象素灰度差值时比拟适宜。Laplace算子对孤立象素的响应要比对边缘或线的响应要更强烈,因此只适用于无噪声图象。存在噪声情况下,使用Laplacian算子检测边缘之前需要先进行低通滤波。在本文中我们先进性高斯平滑处理再使用laplacian算子进行边缘检测。.canny算子边缘检测Canny边缘检测根本原理(1)图象边缘检测必须满足两个条件:一能有效地抑制噪声;二必须尽量精确确定边缘的位置。(2)根据对信噪比与定位乘积进行测度,得到最优化逼近算子。这就是Canny边缘检测算子。(3)类似与Marr〔LoG〕边缘检测方法,也属于先平滑后求导数的方法。Canny边缘检测算法:step1:用高斯滤波器平滑图象;step2:用一阶偏导的有限差分来计算梯度的幅值和方向;step3:对梯度幅值进行非极大值抑制;step4:用双阈值算法检测和连接边缘。3.设计方案这里通过MATLAB工具编写程序实现上述分割算法并给出处理后的结果,为了方便操作,形象的表示各分割算法的效果,通过一个MATLAB图形界面GUI窗口来进行操作,在图形窗口中有‘翻开图像’按钮,一输入和显示阈值的文本输入框,一个选择分割算法的下拉菜单,以及一个显示原图像和一个显示处理后图像的坐标轴。先点击‘翻开图像’并选择电脑中的一幅图像,然后通过下拉菜单项选择择图像分割算法,在这里有两种情况,如果是选择‘手动阈值分割’,那么需要手动在文本编辑框中输入设定的阈值,而如果是选择其他的分割算法,由于这些算法都不需要手动输入阈值,而是通过程序自动选择阈值,所以这里文本编辑框中会显示程序自动选择的阈值。点击下拉菜单中的条目选择不同的分割算法进行分割,分割后的图像会显示在右侧的坐标轴中。例如如下:4.实验过程程序共有四个m文件构成,分别是主函数文件Imgprocess.m和四个函数文件fuzhi.m,td.m,dd.m和dajin.m。在介绍各种图像分割算法之前,先介绍程序中的几个函数,如下:1.利用阈值t0对图像cell进行二值化的函数fuzhi(cell,t0),代码如下:functionncell=fuzhi(cell,t0);[a,b]=size(cell);%获取文件的尺寸fori=1:a%通过循环分别对图像灰度与阈值t0进行比拟判,如果大于t0那么灰度置为%255,否那么置为0;forj=1:bifcell(i,j)>t0ncell(i,j)=255;elsencell(i,j)=0;endendend2.利用已经求得的水平方向梯度xa和垂直方向梯度ya来求它们的均方值的td〔xa,ya〕,代码如下:functionna=td(xa,ya)[a,b]=size(xa);fori=1:aforj=1:bna(i,j)=sqrt((xa(i,j)*xa(i,j))+(ya(i,j)*ya(i,j)));%求xa和ya的均方值并返回给naendend3.对图像cell通过迭代法求阈值的函数dd〔cell〕,代码如下:functiont0=dd(cell)[a,b]=size(cell);zmax=max(max(cell));%求图像的最大灰度值zmin=min(min(cell));%求图像的最小灰度值t0=(zmax+zmin)/2;%将t0的初始值置为(zmax+zmin)/2flag=1;while(flag)%flag是循环标志,初始值为1,只有当找到要得到的t0才%置为0,从而结束循环nbf=0;%前景数nbk=0;%背景数nibf=0;%前景和背景灰度总和nibk=0;fori=1:a%通过循环遍历来计算前景数,背景数,前景灰度总和和%背景灰度总和。forj=1:bifcell(i,j)>t0nbf=nbf+1;nibf=nibf+double(cell(i,j));elsenbk=nbk+1;nibk=nibk+double(cell(i,j));endendendzo=nibf/nbf;%得到前景背景的平均灰度值zb=nibk/nbk;t0tmp=(zo+zb)/2;%判断t0是否变化,如果不变化那么这时的t0就是所求阈值ift0tmp==t0flag=0;elset0=t0tmp;endend4.对图像cell通过大津法求阈值的函数dajin〔cell〕,代码如下:functiont0=dajin(cell)[a,b]=size(cell);ni=zeros(1,256);fori=0:255%通过循环统计从0到255各个灰度的像素个数forj=1:afork=1:bifcell(j,k)==ini(i+1)=ni(i+1)+1;endendendendN=0;forn=0:255N=N+ni(n+1);%计算总的像素个数endpi=zeros(1,255);pi=ni/N;%计算各灰度值出现的概率u=0;fori=0:255%计算u;u=u+i*pi(i+1);endsgmat=zeros(1,256);%计算类间方差sgma〔T〕forT=0:255wt=0;ut=0;fori=0:Twt=wt+pi(i+1);ut=ut+i*pi(i+1);endsgmat(T+1)=(u*wt-ut)^2/(wt*(1-wt));endsgmamax=max(sgmat);%求出最大的类间误差fori=0:255%求出这时的阈值t0ifsgmamax==sgmat(i+1)t0=i;break;endend4.1.阈值分割.手动〔全局〕阈值分割t0=b;%b是从文本编辑框中读取的阈值pic2=fuzhi(pic,b);%进行二值化运算.迭代算法阈值分割t0=dd(pic);%通过迭代算法求得阈值pic2=fuzhi(pic,t0);.大津算法阈值分割t0=dajin(pic);%通过大津算法求得阈值pic2=fuzhi(pic,t0);4.2.边缘检测.roberts算子边缘检测t0=dajin(pic);%先通过大津算法求出阈值xr=[10;0-1];%水平方向算子yr=xr';%垂直方向算子xpic=3*filter2(xr,pic,'same');%对图像求水平方向梯度ypic=3*filter2(yr,pic,'same');%对图像求垂直方向梯度pic2=td(xpic,ypic);%求梯度pic2=fuzhi(pic2,t0);.prewitt算子边缘检测pic=double(pic);t0=dd(pic);xp=[-1-1-1;000;111];%水平方向算子yp=xp';xa=filter2(xp,pic,'same');ya=filter2(yp,pic,'same');na=td(xa,ya);pic2=fuzhi(na,t0);.sobel算子边缘检测t0=dajin(pic);xsobel=[-1-2-1;000;121];%水平方向算子ysobel=xsobel';xpic=filter2(xsobel,pic,'same');ypic=filter2(ysobel,pic,'same');npic=td(xpic,ypic);pic2=fuzhi(npic,t0);.高斯laplacian算子边缘检测gauss=[14741;41626164;72641267;41626164;14741]/273;%高斯算子t0=dd(pic);npic=filter2(gauss,pic,'same');%先对图像用高斯算子进行平滑lap=[010;1-41;010];%laplacian算子npic=filter2(lap,npic,'same');npic=abs(15*npic);pic2=fuzhi(npic,t0);.canny算子边缘检测[pic2,th]=edge(pic,'can
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年美的中央空调销售与智能化升级服务合同4篇
- 2025年离婚法律援助:协议离婚与诉讼离婚流程详解合同3篇
- 2025年度柴油储备与应急供应合同4篇
- 2025年度汽车内饰设计研发及生产服务合同4篇
- 中介公司2024年劳动合同样本2篇
- 二零二五年度融创集团供应商行为准则补充协议2篇
- 阐释学视角下《本草纲目》译者主体性对比研究
- 2025年度新能源电池产品安全运输服务合同规范范本4篇
- 专业汽车故障诊断与修复承包合同(2024版)
- 2025年行政合同与行政指导风险防范与合规管理指南3篇
- 公司组织架构图(可编辑模版)
- 1汽轮机跳闸事故演练
- 陕西省铜川市各县区乡镇行政村村庄村名居民村民委员会明细
- 礼品(礼金)上交登记台账
- 普通高中英语课程标准词汇表
- 北师大版七年级数学上册教案(全册完整版)教学设计含教学反思
- 2023高中物理步步高大一轮 第五章 第1讲 万有引力定律及应用
- 青少年软件编程(Scratch)练习题及答案
- 浙江省公务员考试面试真题答案及解析精选
- 系统性红斑狼疮-第九版内科学
- 全统定额工程量计算规则1994
评论
0/150
提交评论