多种自动阈值分割算法的简单实现--实验报告

多种自动阈值分割算法的简单实现
1引言
在计算机视觉理论中,图像分割、特征提取与目标识别构成了由底层到高层的3大任务。特征提取和目标识别都以图像分割作为基础,图像分割结果的好坏将直接影响后续操作。所谓图像分割,就是将构成图像的像素划分为目标区域与背景区域的过程。其目的是把所研究者关注的目标区域从图像中提取出来,以便进一步研究分析。
图像分割的算法种类繁多,一般都是基于亮度值的两个基本特性之一:不连续性和相似性。前者适用于依据亮度的不连续变化分割图像,后者主要适用于依据事先制定的准则将像素分割为不同的区域。[1]
图像分割领域的经典算法有很多,如基于阈值分割、边缘分割、基于小波变换的分割方法、基于数学形态学的分割方法、以遗传算法、粒子算法等寻优算法为基础并不断改进的分割算法、主动轮廓模型、聚类分割、人工神经网络等算法。
本文简单介绍几种自动阈值分割算法。
基弗2算法实现
2.1一维熵阈值法
假设一幅图像的大小为M N ⨯的图像(,)f x y (1,1)x M y N ≤≤≤≤,每个像素点(,)f i j 本身都还有一个灰度级,一维最大熵阈值法的主体思想是:统计出图像中每个灰度等级出现的概率()p x ,计算该灰度等级的信息熵:
()lg ()H p x p x dx
=-图像分为目标区域和背景区域,假设图像的最大灰度值为L。目标区域的熵为:
0lg(1,2,,i i i t t p p H i t
p p =-=∑ 背景区域的熵为:童年的发现教学设计
1lg(1,2,,11i i i t t p p H i t t L
p p =-=++--∑
对于每个灰度级t 求解:
01
()W t H H =+最大阈值向量t *满足:
契约理论*()max(())
W t W t =2.2二维熵阈值法
2.2.1二维直方图
假设一幅图像的大小为M N ⨯的图像(,)f x y (1,1)x M y N ≤≤≤≤,在每个像素点(,)f i j ,计算n m ⨯领域的平均灰度值,得到一幅平滑的图像(,)g x y ,两者的灰度等级都为0,1,...L 。其中n m ⨯的领域可由下面模板表征:
1,11,1,,1,,,1,,1j
m i i j i m n n j n m d d d d d d D d d d ⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦
L 一般取255,n 和m 取大于1的奇数,它们可以不相等。[2]
在当前相关文献中邻域的选取有多种模板,多数文献采用8领域模板,也有4领域模板。本文既实现了一种8领域模板,又实现了两种4领域模板,设(,)r i j 为图像(,)f x y 中灰度级为i ,图像(,)g x y 中灰度级别为j 的像素对的个数,(,)r i j 联合概率可以表示为:
(,)(,),,0,1,r i j p i j i j L M N
==⨯ 以图像中点的灰度值作为X 轴,领域中其他像素的平均值作为Y 轴,灰度与平均灰度在整个图像空间中的频数作为Z 轴。下图以Lena 图像(图1(a ))为例,通过MATLAB 2010绘制直方图,如图1(b )所示。
图1(a )图1(b )
从图1(b )可以很直观发现,在直方图上几乎所有的值都集中在XOY 平面的对角线上。这一点很容
易理解,因为图像中的目标内部和背景内部的像素之间相关性很强,像素的灰度值与邻域像素的灰度平均值非常接近,因此会有这样的效果。洁银
假设阈值向量(,)t s 将二维直方图分成4个区域,从图1(b )形象地看出,对于背景区域或是目标区域,图像中心像素点的值和邻域像素平均值都是相近的。而对于背景区域和目标区域边缘处的像素,应当是有很大差异的。如图2所示,区域1和区域2代表目标区域或背景区域,区域3和区域4代表边缘点及噪声污染。
图2二维直方图
2.2二维最大熵阈值化
信息熵的概念来源于信息论,是对信源中平均产生一个消息所能消除不确定
性的量化描述。给定信源空间1212x ()()()n n x x X P P x P x P x ⎡⎤⎡⎤=⎢⎥⎢⎥⎣⎦⎣⎦  ,其中0()1i P x ≤≤,()1n i i p x ==∑,信源X 的信息熵定义为:[3]()11()lg ()lg ()n i i i i H X E P x P x P x =⎡⎤==-⎢⎥⎣⎦
∑设在二维直方图中存在4个类,如图2所示,区域1和区域2所代表的目标和背景的两类概率分别为:
100
(,)(,)
t s i j p t s p i j ===∑∑211(,)(,)
L L i t j s p t s p i j =+=+=
∑∑区域3和区域4所代表的边缘点即噪声污染的两类概率分别为:
金善雅电影
301(,)(,)t L
i j s p t s p i j ==+=∑
∑410(,)(,)
L s i t j p t s p i j =+==∑∑由于边缘点和噪声点占少数,在传统的二维与执法中都假设二维直方图中远离对角线的分量近似为零。因此,下面只考虑区域1和区域2。
根据信息熵的定义,得到区域1的信息熵为:
11100
((,)/(,))lg((,)/(,))
t s i j H p i j p t s p i j p t s ===-∑∑区域2的信息熵为:
22211((,)/(,))lg((,)/(,))L L
i t j s H p i j p t s p i j p t s =+=+=-∑
∑总信息熵为:12
(,)H t s H H =+根据最大熵原理,最佳阈值向量满足:
**(,)max{(,)}
H t s H t s =相对于一维最大熵图像分割,二维最大熵阈值分割方法综合利用了图像的中心点和平均灰度值,使其具有较强的抗干扰能力,从而使图像分割达到一个更好的效果。
2.3Ostu 分割方法
Ostu 分割算法又称为最大类间方差法,是目前十分流行的阈值选取的算法。其核心思想是:确定一个最佳的阈值。根据这个阈值,使图像二值化。该最佳阈值在图像二值化后,使背景和目标区域两个像素类方差最大,从而达到背景和目标分割的效果。
假设一幅图像的大小为M N ⨯的图像(,)f x y (1,1)x M y N ≤≤≤≤,假设阈值为t (min max )GrayValue t GrayValue ≤≤,目标区域像素比例为0w ,目标区域像素的平均灰度为0u ,背景区域像素比例为1w ,目标区域像素的平均灰度为1u ,则图像的总平均灰度为:
0011
**u w u w u =+目标区域和背景图像的方差为:
000111010101*()*()*()*()
**()*()
g w u u u u w u u u u w w u u u u =--+--=--从图像的最小灰度级min GrayValue 开始调整阈值t ,一直遍历到图像的最大
灰度级max GrayValue ,到max{}g 对应的阈值t ,就是最佳阈值*t 。将小于最
社区的概念佳阈值的像素点设置为黑,大于等于最佳阈值的像素点设置为白。
Ostu 分割算法,还有二维的Ostu 分割算法,先按照一种k k ⨯模板,以一个像素点为中心,求得邻域
平均平均像素点,组成一幅新的图,求联合概率密度ij p ,再将图像分成4个区域,其求解步骤和二维最大熵算法十分相似,在此不深入讨论。
2.4阈值迭代分割算法
迭代法是基于逼近的思想求最佳阈值的算法。假设一幅图像的大小为M N ⨯的图像(,)f x y (1,1)x M y N ≤≤≤≤,假设阈值为:
(max min )/2
T GrayValue GrayValue =+将T 记录在OldT 里,然后根据T 将图像分割为目标区域和背景区域,分别求出目标区域和背景区域的平均灰度值,1u 和2u 。重新计算12()/2T u u =+,判断()if OldT T ==,如果不相等,那么将T 记录在OldT 里,重复上面步骤,直到OldT T =成立,才终止算法。
然后,把最后得到的T 最为最佳阈值,对图像进行分割,图像中像素点小于T 的部分设置为黑,其他部分设置为白。
3实验结果及分析
本文所有的实验都是基于PC 机上进行的,实验环境为MATLAB 2010和Visual Studio 2010。为了更形象的说明上述各个算法的有效性,根据上面提出的方法对图像进行了仿真实验。
本文以Lena 灰度图像(图1(a))为例,对论文中给出的算法予以实现。图3(a)以一维最大熵算法进行图像分割。图3(b),图3(c),图3(d)分别采用不同的模板的二维最大熵算法对图像进行分割。图像3(b)采用4邻域模板01011010x ⎡⎤⎢⎥⎢⎥⎢⎥⎣⎦,图像3(c)采用4领域模板10100101x ⎡⎤⎢⎥⎢⎥⎢⎥⎣⎦,图像3(d)采用8领域模板111111x ⎡⎤⎢⎥⎢⎥⎢⎥⎣⎦。图像3(e)采用一维ostu 算法实现,图像3(f)采用迭代法实现。

本文发布于:2024-09-22 15:31:27,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/75149.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:图像   区域   分割   算法   目标   阈值
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议