




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
图像阈值分割和边缘检测技术原理和比拟
摘要
图像分割是一种重要的图像分析技术。对图像分割的研究一直是图像技术研究中的热点和焦点。医
学图像分割是图像分割的一个重要应用领域,也是一个经典难题,至今已有.上千种分割方法,既有经典
的方法也有结合新兴理论的方法。医学图像分割是医学图像处理中的•个经典难题。图像分割能够自动
或半自动描绘出医学图像中的解剖结构和其它感兴趣的区域,从而有助于医学诊断。
阈值分割是一种利用图像中要提取的目标物与其背景在灰度特性上的差异,把图像视为具有不同灰
度级的两类M域(目标和背景)的组合,选取一个适宜的阈值,以确定图像中每个像素点应该属于目标
区域还是背景区域,从而产生对应的二值图像。
本文先介绍各种常见图像I或值分割和边缘检测方法的原理和算法,然后通过MATLAB程序实现,最
后通过比拟各种分割算法的结果并得出结论。
关键词:图像分割;阈值选择;边缘检测;
目录
1.概述2
2.图像阈值分割和边缘检测原理2
2」.阈值分割原理2
.手动(全局)阈值分割3
.迭代算法阚值分割3
.大津算法阈值分割4
2.2.边缘检测原理4
.robcrts算子边缘检测4
.prcwitt算子边缘检测4
.sobcl算子边缘检测5
・高斯laplacian算子边缘检测5
.canny算子边缘检测5
3.设计方案6
4.实验过程6
4.1.阈值分割8
・手动(全局)阈值分割8
.迭代算法阈值分割8
.大津算法阈值分割8
4.2.边缘检测9
.roberts算子边缘检测9
.prewitt算子边缘检测9
.sobel算子边缘检测9
.高斯laplacian算子边缘检测9
.canny算子边缘检测10
5.试验结果及分析10
5.1.实验结果10
.手动(全局)阈值分割10
.迭代算法阈值分割11
.大津算法阈值分割11
.roberts算子边缘检测11
.prcwitt算子边缘检测11
.sobel算子边缘检测II
.高斯laplacian算子边缘检测11
.canny算子边缘检测11
5.2.实验结果分析和总结11
参考文献12
图像分割是指根据灰度、彩色、空间纹理、几何形状等特征把图像划分成假设十个互不相交的区域,
使得这些特征在同一区域内,表现出一致性或相似性,而在不同区域间表现出明显的不同[37].简单的
讲,就是在一幅图像中,把FI标从背景中别离出来,以便于进一步处理。图像分割是图像处理与计算机
视觉领域低层次视觉中最为根底和重要的领域之一,它是对图像进行视觉分析和模式识别的根本前
提.同时它也是一个经典难题,到目前为止既不存在一种通用的图像分割方法,也不存在一种判断是否
分割成功的客观标准。
阈值法是一种传统的图像分割方法,因其实现简单、计算量小、性能较稳定而成为图像分割中最根
本和应用最广泛的分割技术.已被应用于很多的领域,例如,在红外技术应用中,红外无损检测中红外
热图像的分割,红外成像跟踪系统中目标的分割;在遥感应用中,合成孔径雷达图像中目标的分割等;
在医学应用中,血液细胞图像的分割,磁共振图像的分割;在衣业工程应用中,水果品质无损检测过程
中水果图像与背景的分割。在工业生产中,机器视觉运用于产品质量检测等等。在这些应用中,分割是
对图像进一步分析、识别的前提,分割的准确性将直接影响后续任务的有效性,其中阈值的选取是图像
阈值分割方法中的关键技术.
图像分析和理解的第一步常常是边缘检测。边缘检测方法是人们研究得比拟多的一种方法,它通过
检测图像中不同区域的边缘来到达分割图像的目的。边缘检测的实质是采用某种算法来提取出图像中
对象与背景间的交界线。我们将边缘定义为图像中灰度发生急剧变化的区域边界。图像灰度的变化
情况可以用图像灰度分布的梯度来反映,因此我们可以用局部图像微分技术来获得边缘检测算子。
经典的边缘检测方法,是通过对原始图像中像素的某小邻域构造边缘检测算子来到达检测边缘这一
目的。
2.图像阈值分割和边缘检测原理
2.1.阈值分割原理
对灰度图像的取阈值分割就是先确定一个处于图像灰度取值范围之中的灰度阈值,然后将图像中各
个像素的灰度值都与这个阈值相比拟,并根据比拟结果将对•应的像素分为两类。这两类像素一般分属图
像的两类区域,从而到达分割的目的。阈值分割算法主要右两个步骤:
(1)确定需要的阈值;
(2)将分割阈值与像素值比拟以划分像素。
可以看出,确定一个最优阈值是分割的关键。现有的大局部算法都是集中在阈值确定的研究上。阈
值分割方法根据图像本身的特点,可分为单阈值分割方法和多阈值分割方法:也可分为基于像素值的阈
值分割方法、基于区域性质的阈值分割方法和基于坐标位置的阈值分割方法.假设考虑分割算法所用的
特征或准那么的特点,还可以分为直方图与直方图变换法、最大类空间方差法、最小误差法与均匀化误
差法、共生矩阵法、最大嫡法、简单统计法与局部特性法、概率松弛法、模糊集法等。在这里我们只介
绍手动阈值分割(又称双峰阈值分割或者全局阈值分割),迭代算法阈值分割,大津法(OTSJ法)阈值
分割。
2.1.1.手动(全局)阈值分割
手动阈值分割算法,由于工作原理是用一个手动设定的灰僮阈值对整个图像做分割,进而产生二值
图像,所以又称全局分割算饭,同时这种分割算法对于图像灰度直方图呈双峰分布时比拟有效,故又称
双峰分割算法。假设图像中目标和背景具有不同的灰度集合:目标灰度集合与背景灰度集合,且两个灰
度集合可用一个灰度级阈值T让行分割。这样就可以用阈值分割灰度级的方法在图像中分割出目标区域
与背景区域,这种方法称为灰度阈值分割方法。
在物体与背景有较强的比照度的图像中,此种方法应用特别有效。比方说物体内部灰度分布均匀
一致,背景在另一个灰度级上也分布均匀,这时利用阈值可以将目标与背景分割得很好。如果目标和背
景的差异是某些其他特征而不是灰度特征时,那么先将这些特征差异转化为灰度差异,然后再应用阈值
分割方法进行处理,这样使用阈值分割技术也可能是有效的设图像为f(x,y),其灰度集范用是OL],
在。和L之间选择个适宜的灰度阈值T,那么图像分割方法可由式(2.1)描述
(2.1)
这样得到的g(x,y)是一幅二值图像。这时T的大小将直接影响分割的效果。由于这种分割算法适用
范围有限,而且要手动设定灰度阈值,过程复杂而且有时灰度阈值不易寻找,进而出现了自动阚值分割,
主要是迭代算法和大津算法(OTSU)阈值分割。
2.1.2.迭代算法阈值分割
迭代算法是对双峰法的改良,它首先选择一个近似阈值T.将图像分割成两个局部G1和G2,然后
计算GI和G2像素的平均灰度值ml和m2,选择新的分割阈值T=T=(ml+m2)/2;重复以上步骤,知
道T不变为止。迭代法适合图像直方图有明显波谷。
迭代算法是基于逼近的思想,其主要步骤如下:
1.为全局阈值选择一个初始估计值T(图像的平均灰度)。
2.用T分割图像。产生两纽像素:G1有灰度值大于T的像素组成,G2有小于等于T像素组成。
3.计算G1和G2像素的平均灰度值ml和m2;
4.计算一个新的阈值:T=(ml+m2)/2;
5.重复步骤2和4,直到连续迭代中的T值间的差小于一个预定义参数为止。
然后再用阈值分割对图像进行分割得到二值灰度图像。
2.1.3.大津算法阈值分割
大津法(OTSU)是一种确定图像二值化分割阈值的算法,由日本学者大津于1979年提出。从大津法的
原理上来讲,该方法又称作最大类间方差法,因为按照人津法求得的阈值进行图像二值化分割后,前景
与背景图像的类间方差最大。
对于图像f(x,y),前景(即目标)和背景的分割阈值记作T,属于前景的像素点数占整幅图像的比例记
为30,其平均灰度口0;背景像素点数占整幅图像的比例为31,其平均灰度为可。图像的总平均灰度
记为山类间方差记为g°
假设图像的背景较暗,并且图像的大小为MxN.图像中像素的灰度值小于阈值T的像素个数记作
NO,像素灰度大于阈值T的像素个数记作N1,那么有:
coO=NO/MxN(l)
(ol=Nl/MxN(2)
N0+N1;MxN⑶
a)O+(ol=l(4)
H=coO*nO+col*|.il(5)
g=©0(p0-p)A2+(o1(p1-g)A2(6)
招式(5)代入式(6),得到等价公式:
g-(o0col(|.i0-pip2(7)这就是类间方差采用遍历的方法得到使类间方差g最大的阈
值T,即为所求。然后再用所得到的T进行全局阈值分割得到二值图像。
22边缘检测原理
图像分析和理解的第一步常常是边缘检测。边缘检测方法是人们研究得比拟多的一种方法,它通过
枪测图像中不同区域的边缘来到达分割图像的目的。边缘检测的实质是采用某种算法来提取出图像中对
象与背景问的交界线。我们将边缘定义为图像中灰度发生急剧变化的区域边界。图像灰度的变化情况可
以川图像灰度分布的梯度来反映•因此我们可以用局部图像微分技术来获得边缘检测算子C经典的边缘
检测方法,是通过对原始图像叶像素的某小邻域构造边缘检测算子来到达检测边缘这一目的。
2.2.1.roberts算子边缘检测
0(7)=
函数的梯度定义为“心通常把梯度的模叫做图象的梯度。对于数字
图象,可以用差分来近似微分roberts算子模板的形式就是
.prewitt算子边缘检测
Prewitt算了•由两局部组成,检测水平边缘的模板;;[和[二::口检测垂直边缘的模板。
对数字图像f(x,y),Prewitt算子的定义如下:
水平方向Gx=[f(i-1,J)+f(i-1,j+1)]-[f(i+1,j-1)+f(i+1,j)+f(i+1,j+D]
垂直方向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(ij)=|Gx|+|Gyb
经典Prewitt算子认为:凡灰度新值大于或等于阈值的像素点都是边缘点。即选择适当的阈值T,假
设G(iJ巨T,那么G(i,j)为边缘点。这种判定是欠合理的,会造成边缘点的误判.因为许多噪声点的灰度
值也很大,而且对F幅值较小的边缘点,其边缘反而丧失了。
.sobel算子边缘检测
Sobel算子也有两个,一个是检测水平边缘的模板口】」,另一个是检测水平边缘的
模板L【。【」。sobel算子的另一种形式是各向同性Sobel算子,也有两个模板组成,
-1-V2-1-101
000-4io41
一个是检测水平边缘的1叵1另一个是检测垂直边缘的1一101」。各向同性Sobel算子和
普通Sobel算子相比,位置加权系数更为准确,在检测不同方向的边缘时梯度的幅度一致。本文中我们
使用原始的sobci算子。
.高斯laplacian算子边缘检测
Laplacian算子定义为
它的差分形式为
▽VO,y)=+Ly)-〃天y)]-[/(%y)-f(x-i,y)]:
+1/(^y+1)一/(兀y)]-[/(^y)~/(芍y-i)I;
7(x+1,7)+j(x-i,j)+x,j+i)+
Alaplacian表示成模板的形
0—1o
-14-1
式就是1°t°JoLaplace算子是一种各向同性算子,在只关心边缘的位置而不考虑其周围的象素
灰度差值时比拟适宜。Laplace算子对孤立象素的响应要比对边缘或线的响应要更强烈,因比只适用于
无噪声图象。存在噪声情况下,使用Laplacian算子检测边缘之前需要先进行低通滤波。在本文中我们
先进性高斯平滑处理再使用laplacian算子进行边缘检测。
・canny算子边缘检测
Canny边缘检测根本原理
(1)图象边缘检测必须满足两个条件:一能有效地抑制噪声;二必须尽量精确确定边缘的位置。
(2)根据对信噪比与定位乘积进行测度,得到最优化逼近算子。这就是Canny边缘检测算子。
(3)类似与Marr(LoG)边缘检测方法,也属于先平滑后求导数的方法。
Canny边缘检测算法:
slepl:用高斯滤波器平滑图象;
step2:用一阶偏导的有限差分来计算梯度的幅值和方向;
step3:对梯度幅值进行非极大值抑制;
step4:用双阈值算法检测和连接边缘。
3.设计方案
这里通过MATLAB工具编写程序实现上述分割算法并给出处理后的结果,为了方便操作,形象的
表示各分割算法的效果,通过一个MATLAB图形界面GUI窗口来进行操作,在图形窗口中有‘翻开图
像‘按钮,一输入和显示阈值的文本输入框,一个选择分割算法的下拉菜单,以及一个显示原图像和一
个显示处理后图像的坐标轴。
先点击‘翻开图像’并选择电脑中的一幅图像,然后通过下拉菜单项选择择图像分割算法,在这里
有两种情况,如果是选择‘手动阈值分割',那么需要手动在文本编辑框中输入设定的阈值,而如果是
选择其他的分割算法,由于这些算法都不需要手动输入阈值,而是通过程序自动选择阈值,所以这里文
本编辑框中会显示程序自动选择的阈值。
点击下拉菜单中的条目选择不同的分割算法进行分割,分割后的图像会显示在右侧的坐标轴中。例
如如下:
4.实验过程
程序共有四个m文件构成,分别是主函数文件Imgprocess.m和四个函数文件fuzhi.m,td.in,dd.m和
dajin.nio
在介绍各种图像分割算法之前,先介绍程序中的几个函数,如下:
1.利用阈值10对图像cell进行二值化的函数fuzhi(celUO),代码如下:
functionncell=fuzhi(celLtO);
[a,b]=size(cell);%获取文件的尺寸
fori=l:a%通过循环分别对图像灰度与阈值tO进行比拟判,如果大于tO那么灰度置为%255,否那
么置为0;
fbrj=l:b
ifcell(i,j)>tO
ncell(i,j)=255;
else
ncell(i,j)=0;
end
end
end
2.利用已经求得的水平方向悌度xa和垂直方向梯度ya来求它们的均方值的td〔xa,ya),代码如下:
functionna=(d(xa,ya)
[a,b]=size(xa);
fori=l:a
forj=l:b
na(i,j)=sqrt((xa(i,j)*xa(i,j))+(ya(i,j)*ya(i,j)));%求xa和ya的均方值并返回给na
end
end
3.对图像cell通过迭代法求阈值的函数dd(cell),代码如下:
functiontO=dd(cell)
[a,b]=size(cell);
zmax=max(max(cell));%求图像的最大灰度值
zmin=min(min(cell));%求图像的最小灰度值
tO=(zmax+zmin)/2;%将tO的初始值置为(zmax+zmin)/2
flag=l;
while(flag)%flag是循环标志,初始值为1,只有当找到要得到的tO才%置为0,从
而结束循环
nbf=0;%前景数
nbk=0;%背景数
nibf=0;%前景和背景灰度总和
nibk=0;
fori=l:a%通过循环遍历来计算前景数,背景数,前景灰度总和和%背景灰度总
和。
forj=l:b
ifcell(i,j)>tO
nbf=nbf+1;
nibf=nibf+double(cell(i,j));
else
nbk=nbk+l;
nibk=nibk+double(cell(i,j));
end
end
end
zo=nibf/nbf;%得到前景背景的平均灰度值
zb=nibk/nbk;
l0tmp=(zo+zb)/2;%判断(0是否变化,如果不变化那么这时的(0就是所求阈值
iftOtmp==tO
f!ag=0;
else
tO=tOtmp;
end
end
4.对图像cell通过大津法求阈值的函数dajin(cell),代码如下:
functiontO=dajin(cell)
[a,bj=size(cell);
ni=zeros(1.256);
fori=0:255%通过循环统计从0到255各个灰度的像素个数
forj=l:a
fork=l:b
ifcell(j,k)==i
ni(i+l)=ni(i+l)+l;
end
end
end
end
N=0;
forn=O:255
N=N+ni(n+l);%计算总的像素个数
end
pi=zeros(1,255);
pi=ni/N;%计算各灰度值出现的概率
u=0;
fori=0:255%计算u;
u=u+i*pi(i+1);
end
sgmat=zcros(1,256);%计算类间方差sgma(T)
forT=0:255
wt=0;
ut=0;
fori=0:T
wt=wt+pi(i+l);
ut=ut+i*pi(i+1);
end
sgmat(T+1)=(u*wt-ut)A2/(wt*(1-wt));
end
sginamax=max(sgmat);%求出最大的类间误差
fori=0:255%求出这时的阈值(0
ifsgmamax==sgmat(i+1)
t0=i;
break;
end
end
4.1.阈值分割
.手动(全局)阈值分割
tO=b;处是从文本编辑框中读取的阈值
pic2=fuzhi(pic,b)小进行二值化运算
.迭代算法阈值分割
tO=dd(pic)通过迭代算法求得阈值
pic2=fuzhi(pic,t0);
.大津算法阈值分割
tO=dajin(pic);号通过大津算法求得阈值
pic2=fuzhi(pic,t0);
42边缘检测
.roberts算子边缘检测
tO=dajin(pic);%先通过大津算法求出阈值
xr=[10;0TJ;&水平方向算子
yr=xr';%垂直方向算子
xpic=3*filter2(xr,pic,'same*)"对图像求水平方向梯度
ypic=3*filter2(yr,pic,'same*);3对图像求垂直方向梯度
pic2=td(xpic,ypic);%求梯度
pic2=fuzhi(pic2,tO);
.prewitt算子边缘检测
pic=double(pic);
tO=dd(pic);
xp=[-l-1-l;000;l11];3水平方向算子
yp=xp*;
xa=filter2(xp,pic,'same');
ya=filter2(yp,pic,'same');
na=td(xa,ya);
pic2=fuzhi(na,tO);
.sobel算子边缘检测
t0=dajin(pic);
xsobel=(-1-2-1;000;121];%水平方向算子
ysobel=xsobel,;
xpic=filter2(xsobel,pic,'same');
ypic=filter2(ysobel,pic,1same');
npic=td(xpic,ypic);
pic2=fuzhi(npic,tO);
・高斯laplacian算子边缘检测
gauss=[14741;
41626164;
72641267;
41626164;
1474l]/273;会高斯算子
t0=dd(pic);
npic=filter2(gauss,pic,*same*);
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 人造革在家具表面处理工艺探讨考核试卷
- 期末演练卷(含解析)-数学七年级下册苏科版
- 起重机操作培训教材考核试卷
- 病虫害防治的植物内生菌研究考核试卷
- 化学综合实验(含答案)-2026届高三化学一轮复习学案
- 强弱电解质 弱电解质的电离平衡-2025年新高二化学暑假专项提升(人教版)教师版
- 辽宁省沈阳市康平县2023-2024学年七年级下学期期末生物学试题(解析版)
- 2020年成人高考专升本教育理论学习动机考点精练
- 2025至2030年中国罗非鱼行业市场深度分析及投资前景展望报告
- 2025至2030年中国麻制品制造行业市场发展现状及投资战略咨询报告
- 2024云南省交通投资建设集团限公司大理管理处招聘105人易考易错模拟试题(共200题)试卷后附参考答案
- 2024年江苏省小升初数学(新初一)分班考试检测卷(一)
- 钢板桩支护计算书全套
- 广西贺州市2022-2023学年八年级下册期末物理试卷(含答案)
- DL∕T 5344-2018 电力光纤通信工程验收规范
- 医院消毒隔离知识培训课件
- 新制定《公平竞争审查条例》学习课件
- 2023年青海省西宁市城西区教育局公开招聘《行政职业能力测验》模拟试卷(答案详解版)
- 输气管线破裂漏气应急处置方案
- 老年患者呼吸系统疾病的护理重点
- 养殖鸡场灭鼠技术方案
评论
0/150
提交评论