毕业设计直方图二值化.docx
《毕业设计直方图二值化.docx》由会员分享,可在线阅读,更多相关《毕业设计直方图二值化.docx(21页珍藏版)》请在冰豆网上搜索。
毕业设计直方图二值化
本科毕业论文
论文题目:
直方图的二值化处理研究
姓名
院系
信息与电气工程学院
专业
电子信息工程
年级
学号
指导教师
邱
年月日
目录
1引言………………………………………………………………………………………4
2图像及图像处理的相关绍………………………………………………………………4
2.1图像…………………………………………………………………………………4
2.2数字图像处理技术内容与展………………………………………………………4
3研究课题的实现…………………………………………………………………………7
3.1选择位图bmp图像…………………………………………………………………7
3.2灰度图像直方图……………………………………………………………………8
3.3灰度图像二值化原理及意义………………………………………………………9
3.4阈值…………………………………………………………………………………9
4利用VC++实现的部分功能……………………………………………………………9
4.1软件工具VC++………………………………………………………………………9
4.2打开并显示图片……………………………………………………………………10
4.3画直方图……………………………………………………………………………12
4.4二值化处理…………………………………………………………………………12
4.5灰度图像变换………………………………………………………………………12
5通过观测直方图进行二值化处理……………………………………………………13
5.1研究步骤……………………………………………………………………………13
5.2获取图像直方图……………………………………………………………………15
5.3取阈值进行二值化…………………………………………………………………17
5.4比较分析结果………………………………………………………………………18
5.5第二种方法的实现…………………………………………………………………18
6结束语…………………………………………………………………………………20
参考文献
致谢
直方图的二值化处理研究
摘要:
本论文简单介绍了灰度图像的理论,对直方图和二值化做了简要的概述。
并对灰度图像获取其对应的直方图,然后通过观察直方图的分布情况选取适当的阈值进行二值化处理,通过对不同阈值的二值化处理结果进行比较、分析。
关键词:
灰度图像;直方图;二值化;阈值
TheHstogramofTheTwoValuesofResearch
Abstract:
Thispaperbrieflyintroducesthetheoryofgrayimage,histogramandavalueoftwomadeabriefoverview.Andonthegrayimagetoobtainthecorrespondinghistogram,thenobservedthroughthehistogramdistributionofchoosingappropriatethresholdvaluesoftwotreatment,accordingtothedifferentthresholdvalueofthetwotreatmentresultswerecompared,andanalysis.
Keywords:
image;histogram;twovalues;threshold
1引言
近几十年来,随着信息科学迅猛发展,各领域对数字图像处理要求越来越高,数字图像处理技术得到了更加深入、广泛的发展。
当前而言,数字图像处理技术已成为人们认识世界、改造世界的重要技术。
本文的主要内容是讨论图像的二值化,其目标是尽可能多的保留原图像的目标图像而舍弃背景图像(没用的图像信息)。
要想实现这一目标,就应该正确地选择阈值,然后二值化处理。
目前选择阈值的方法比价多多,各自有其特殊的特点。
根据不同的图像与处理标准,合理地选择二值阈值是十分关键的。
图像二值化处理是图像分割中比较基础的方法,在图像分割中占有极其重要地位,这种技术最关键的是选择适当阈值然后将灰度图像分为目标对象和背景两部分,从而达到二值化效果。
一幅图像包括目标物体(目标对象)、背景图像还有噪声,想办法从数字灰度图像中只取出目标对象物体(有用的)舍弃背景部分,常用的基本方法就是设定某一阈值T,用T将图像的数据分成两大部分:
一部分是大于阈值T的像素,与另一部分是小于阈值T的像素。
这是在研究灰度变换中最常用最特殊的方法之一,叫做图像的二值化处理。
灰度图像的二值化是图像处理中的一项基本的变换方法。
二值化简而言之就是,先由用户指定阈值T,若图像中某像素的灰度值小于等于该阈值T,那么此像素的灰度值设为0,其它像素灰度值变为255,然后进行处理。
2图像及图像处理的相关介绍
2.1图像
图像就是用各种观测系统观测客观世界获得的且可以直接或间接作用与人眼而产生视觉的实体。
拒统计,在人类获取的信息中,视觉信息约占60%,听觉信息约占20%,其他方式加起来才约占20%。
由此可见,视觉信息对人类非常重要。
同时,图像又是人类获取视觉信息的主要途径,是人类能体验的最重要、最丰富、信息量最大的信息源。
通常,客观事物在空间上都是三维的(3D)的,但是从客观景物获得的图像却是属于二维(2D)平面的。
图像存在方式多种多样,可以是可视的或者非可视的,抽象的或者实际的,适于计算机处理的和不适于计算机处理的。
但就其本质来说,可以将图像分为以下两大类:
(1)模拟图像。
包括光学图像、照相图像、电视图像等。
比如人在显微镜下看到的图像就是一幅光学模拟图像。
对模拟图像的处理速度快,但精度和灵活性差,不易查找和判断。
(2)数字图像。
数字图像是将连续的模拟图像经过离散化处理后得到的计算机能够辨识的点阵图像。
在严格意义上讲,数字图像是经过等距离矩形网格采样,对幅度进行等间隔量化的二维函数。
因此,数字图像实际上就是被量化的二维采样数组。
一幅数字图像都是由若干个数据点组成的,每个数据点称为像素(pixel)。
比如一幅256×400,就是指该图像是由水平方向上256列像素和垂直方向上400行像素组成的矩形图。
灰度是单色图像中像素亮度的表征,量化等级越高,表现力越强。
但是随着量化等级的增加,数据量将大大增加,使得图像处理的计算量和复杂度相应的增加。
与模拟图像相比,数字图像具有以下显著优点:
(1)精度高。
(2)处理方便。
(3)重复性好。
[4]
简单地说,图像文件包括有颜色的图像和没颜色图像。
下面我们来讲一下单色图像,它是属于有颜色的图像,但却是其中非常简单的格式。
一般来说,单色图像由黑色区域和白色区域两部分构成。
若是用8个比特来表示一个像素的话,也就是说黑色区域和白色区域平均分为256个级别,其中"0"代表为最黑的部分,"255"代表为最白的部分。
在这黑白两个区域中,数值的含义是对应像素值的灰度值或者灰度级。
例如数值越靠近"255",此数值的含义是越白,其中255代表最白的部分其余次之。
灰度图像就是这这种图像,由0-255之间的不同灰度级点构成,本文重点研究的是灰度图像
2.2数字图像处理技术内容与发展
图像处理技术的形成大致经历了4个阶段:
初创期、发展期、普及期与实用化期。
目前,随着电子技术和计算机技术的不断提高和普及,数字图像处理技术进入高速发展时期。
数字图像处理其实就是通过采用适当的算法对图像进行相关处理,从而得到与人眼视觉有关的图像处理效果。
数学是图像处理技术的基础,图形处理的任务是实现各种算法的设计与算法。
如今在许多不同的应用领域中,图像处理技术已经十分受到关注且获得了很大成就。
不同领域对图像处理有不同的要求,从而图像处理可分为很多的不同技术即有很多的分支。
与图像处理有关的技术有:
(1)图像的识别。
这属于模式识别之类的技术范畴,它的内容是图像在预处理(复原、压缩、增强)经过之后,然后对图像进行提取与分割操作,最终再判断分类。
(2)图像的分析。
当获取一幅图像后,对图像里各个部分采取识别、分类、分割、解释说明等分析性质的操作。
(3)分割。
图像处理中的重要技术包括图像分割技术,这项技术的目的是把图像中对人有意义的信息即目标对象获得。
图像的分割是进而对图像了解、识别和讨论。
图像有意义的目标对象信息有图像的边缘等。
(4)编码与压缩。
若对图像信息实行有关编码且在符合一定保真程度条件下,就能使得压缩了图像的信息量,并且在很大程度上压缩图像的信息与数据,从而便于相互传输和有关保存(同时图像压缩又分为两类:
失真压缩与不失真压缩)。
(5)复原与增强。
图像的复原与增强是增强图像中的目标对象信息即有用的,减少干扰即背景信息之类无用的信息,处理效果是让图像变的清晰使人易于查看。
而图像复原的目的是体现原始图像的真正信息,其任务是尽可能使得图像处理中造成的退化和简化达到降低的效果。
(6)相关变换。
如离散余弦变换、沃尔什变换、小波变换和傅立叶变换等处理技术,若运用这些图像变换技术这样可以有效地降低有关计算量,从而加大图像处理性能使其功能更加强大。
另外,数字图像处理属于一门应用性比较强的学科各行各业都需要,并且计算机技术的发展必须与图像处理相适应,即图像处理离不开计算机技术。
所以说数字图像处理技术包罗万象,在不同领域中需要不同的处理技术,图像处理形成了各种各样的学科,如人工智能和机器人视觉、医学图像处理、遥感图像处理等科学领域也跟数字图像的处理有着密不可分的联系。
3研究课题的实现
3.1选择位图bmp图像
数字化图像进行处理要利用计算机,首先需要有清楚的认识对于文件格式,自然界的图像以模拟信号的形式存在。
比较常用的有GIF格式、JPEG格式、BMP格式等。
因此在讨论研究图像处理时,就不得不对图像格式认识的清楚,认识和了解不同图像格式的不同属性。
只有这样,我们才能对数字图像处理做进一步的研究。
在图像处理过程中,我们选择bmp格式文件。
这是因为bmp文件格式中的数据是没有经过压缩处理的的。
压缩过的其它格式文件是无法直接进行数字化处理的,应该先对他们进行解压操作。
正因为图像处理是分别对不同像素采取对应的处理操作,而数字图像与没有经过压缩处理的bmp像素数值有联系,所以说我们数字化处理过程中最适合的格式就是bmp格式。
灰度图像是指只含亮度信息,不含色彩信息的图像。
因此,本文探讨的是bmp格式图像中灰度图像的相关处理研究。
3.2灰度图像直方图
生活中任何一幅图像都有丰富的内容信息,在图像处理中提取这些有效信息并找出其中的特征是十分重要的。
在灰度直方图中我们可以直观地看出灰度分布状况,在灰度变换及二值化等处理过程中这些信息都可以加以有效利用。
灰度直方图(Histogram),它其实是一个函数,直方图的横坐标是灰度级,纵坐标是该灰度级出现的频率。
例如下图是一个灰度图像的直方图:
在直方图中,有横坐标和纵坐标。
横坐标的范围是从0到255一共256个值,纵坐标反映的是图像中各个灰度级出现的概率或者频率。
在上图中我们可以看出,在横坐标中从100到230出现一个波峰且分布较为密集,说明出现的概率比较大,间接说明图像偏白或者偏亮。
我们还可以看出不同的图像具有不同的直方图,且不同的直方图有不同的信息特征,就算是两个直方图相同也不一定说明两者的原图像是一样的。
3.3灰度图像二值化
一幅图像包括目标物体(目标对象)、背景图像还有噪声,想办法从数字灰度图像中只取出目标对象物体(有用的)舍弃背景部分,常用的基本方法就是设定某一阈值T,用T将图像的数据分成两大部分:
一部分是大于阈值T的像素,与另一部分是小于阈值T的像素。
这是在研究灰度变换中最常用最特殊的方法之一,叫做图像的二值化处理。
灰度图像的二值化是图像处理中的一项基本的变换方法。
二值化简而言之就是,先由用户指定阈值T,若图像中某像素的灰度值小于等于该阈值T,那么此像素的灰度值设为0,其它像素灰度值变为255,然后进行处理。
灰度图像是指只含亮度信息,不含色彩信息的图像。
简单地说二值化就是把图像上点的灰度值变为0或255即取两个极端值,这样得到的效果是使得原图像表现出非黑即白黑白效果。
即将256个亮度等级的灰度图像通过适当的阈值选取而获得仍然可以反映图像整体和局部特征的二值化图像。
二值图像是图像处理中具有十分重要意义的一项技术。
在图像分析中二值图像应用十分常见,二值图像是指只有两个灰度级的图像。
二值化阈值可以看成为一种下列函数T的操作:
T=T[x,y,p(x,y),f(x,y)]
在上式中,f(x,y)是图像中点(x,y)的灰度级(取值范围是0到255),p(x,y)表示此点的局部的性质。
取完阈值,进行二值化处理之后图像g(x,y)如下定义:
其中,标记是1的像素对应的是目标对象信息,而标记为0的像素对应的是背景信息。
换句话说就是,阈值T像个门槛,比它大就是白比它小就是黑。
3.4灰度图像阈值
图象二值化的目标是要在尽可能多的保留原图象特征的前提下舍弃没用的背景信息如噪声和干扰信息。
要实现这一目标关键在于正确地选择阈值。
当前选取阈值的方式多种多样,各种方法有不同的特征。
本文将讨论两种取阈值的方法:
方法一,固定阈值法;方法二,双固定阈值法。
固定阈值法指的是由用户自己取一个适当的阈值T进行二值化,也可以通过选取不同的阈值T分别二值化,这样可以比较当选取不同的阈值T时会得到不同的效果,从而经过比较选取最佳阈值的方法以及最佳阈值的分布规律。
双固定阈值法指的是由用户自己选取两个阈值T与T’然后进行二值化,其中当我们选取阈值T与T’时,应该注意使得T’>T。
同样选取不同阈值T和T’的进行二值化。
分析并比较结果。
阈值法是图像处理技术中较长使用的一种图像分割方法。
它的中心思想是通过利用图像的灰度特征来选择一个(或多个)最佳灰度阈值,那么阈值确定只要试验不同的值,看是否满足特征即可。
所以说选取最优阈值是比较较为容易(只要画出灰度图像的直方图,然后观察直方图所提供的信息并测出深谷的灰度值作为阈值带入观察二值化结果是否理想),能获得很好的图像分割效果。
4利用VC++实现的部分功能
4.1软件工具VC++【5】
VisualC++6.0,简称VC或者VC6.0,是微软推出的一款C++编译器,将“高级语言”翻译为“机器语言(低级语言)”的程序。
VisualC++是一个功能强大的可视化软件开发工具。
自1993年Microsoft公司推出VisualC++1.0后,随着其新版本的不断问世,VisualC++已成为专业程序员进行软件开发的首选工具。
虽然微软公司推出了VisualC++.NET(VisualC++7.0),但它的应用有很大的局限性,只适用于Windows2000、WindowsXP和WindowsNT4.0。
所以实际中,更多的是以VisualC++6.0为平台。
VisualC++作为一个功能非常强大的可视化应用程序开发工具,是计算机界公认的最优秀的应用开发工具之一。
Microsoft的基本类库MFC使得开发Windows应用程序比以往任何时候都要容易。
C++提供的各种函数、指针操作和直接对硬件操作使得图像处理速度较快,专门为VC++设计的OpenGL和DirectX技术可以使开发人员在Windows环境下比较容易地完成图像图形的高性能处理和显示。
用VC++编制的应用软件无论在处理速度和图像的显示等方面都表现出较高的效率,因此在编制基于Windows的各类数字图像处理程序时,VC++无疑是程序员进行图像处理的最佳选择。
4.2打开并显示图片
打开图片的程序是:
voidCBmpDlg:
:
OnOpenbmp()
{
CStringstrPictureName;
TCHARstrFilter[]={TEXT("PictureFiles(*.bmp)|*.bmp||")};
CFileDialogdlg(TRUE,TEXT(".bmp"),NULL,0,strFilter);
if(dlg.DoModal()==IDOK)
{
strPictureName=dlg.GetPathName();
m_sPath=strPictureName;
}
显示图片的程序是:
ShowPic(IDC_STATICA,strPictureName);
4.3画直方图
画直方图:
voidCBmpDlg:
:
OnZhifangtu2()
voidCBmpDlg:
:
Line(intx_0,inty_0,intx_1,inty_1,intID,intline_Width,CString&str,COLORREFcrColor)
显示直方图:
voidCBmpDlg:
:
ShowPic(intID,CStringm_patn)
4.4二值化处理
二值化处理:
voidCBmpDlg:
:
OnErzhihua()
4.5灰度图像变换
若给出图像不是灰度图像,而是彩色图像,应先做灰度变换,变为所需灰度图像。
(若给出图像不是bmp格式位图,可先做解压处理转为bmp未压缩格式)。
5通过观测直方图进行二值化处理
结束
5.1研究步骤
研究步骤:
(1)给出一bmp图象,
(2)先编程读取图像,
(3)再编程得到它的灰度直方图,
(4)根据直方图取阈值,进行二值化处理,
(5)分析比较结果。
例如以彩色图片如下图,需要转换为灰度图像,转换结果如下
原图
(1)原图经灰度变换后图
(2)
图
(2)可以画出其直方图,直方图如下图(3)所示
图(3)
因为图
(1)虽然是灰度图像,但目标对象和背景图像不能有效分清,也就是目标对象与背景图像不明显,所以在二值化处理时效果不佳。
以下实验用灰度图像图(4)进行。
图(4)
5.2获取图像直方图
运行程序后,界面显示如下
依次点击<打开图片>,<显示直方图>
给出一图像如图
(1),经变换得到其直方图
(2),
直方图的横坐标是灰度级,纵坐标是该灰度级出现的频率;直方图是图像的最基本的统计特征
图
(2)显示的是图
(1)所对应的灰度直方图。
可以看到,灰度直方图是一个二维图。
从数学这一学科上讲,直方图所体现的是图像各灰度值的相关统计方面的性质,横纵坐标体现各个灰度级在原图像中所存在的概率或者次数。
从直方图上可以发现,横坐标代表取值范围是0到255之间共256种情况的的灰度值;纵坐标表示灰度值次数的多少并通过高低体现出来,从而会出现波峰和波谷。
(1)
(2)
在直方图中,主要出现了7个波峰,也就是说有7个像素点出现的次数最多,它们分别是50、100、125、140、155、175、210;
在直方图中,主要出现了7个波谷,也就是说有7个像素点出现的次数最少,它们分别是68、82、113、138、152、187、205、225。
如下图(3)所示:
5.3取阈值进行二值化
下面取阈值再进行二值化处理
(一)
依次取7个波峰处的点(50、100、125、140、155、175、210)作为阈值,
依次二值化
得到图像,(a)、(b)、(c)、(d)、(e)、(f)、(g)
(a)、(b)、(c)、(d)、
(e)、(f)、(g)
(二)依次取7个波谷处的点(68、82、113、138、152、187、205)作为阈值,
依次二值化
得到图像,(A)、(B)、(C)、(D)、(E)、(F)、(G)
(A)、(B)、(C)、(D)
(E)、(F)、(G)
(三)取阈值为0和255两个灰度级,然后二值化。
得到图像如图[h]、[H]
[h][H]
5.4比较分析结果
以上方法是固定阈值法(法一),既选取一个适当阈值进行二值化处理。
先观测图(a)到图(g),可以看出:
当取阈值为100-155时,处理效果较佳。
再观测图(A)到图(G),可以看出:
当取阈值82-152时,处理效果较佳。
通过分析分别取波峰和波谷处的阈值,在对本图像进行二值化时,阀值应取在82-155之间。
如上图,在直方图中灰度级82-155之间,有两处波峰:
波峰1与波峰2(波峰2是3处分布较为密集的波峰合成)。
在两波峰之间有一处明显的波谷(横坐标为113处),并且观察图(b)、(c)、(d)、(e)与(B)、(C)、(D)、(E),可以发现在取波谷处(横坐标113处)为阈值时,对本图像二值化处理效果最佳(最佳效果如图(C))。
通过对以上取16不同的阈值依次二值化处理,观察得到的图像可知,在波谷处取阈值效果最好。
理想情况下,在直方图上代表物体和背景的两个峰之间有一个明显的谷,谷底就是最优阈值。
5.4第二种方法的实现
之前所利用的方法是固定阈值法,即选取一个阈值T。
接下来介绍第二种方法:
双固定阈值法,从名字上可以看出是选取了两个阈值即T与T’(必须满足以下条件T’>T)
双固定阈值法二值化的规则如下:
我们取阈值T=40,阈值T’=80,然后二值化,得到效果如下
图1图2图3
单阈值法单阈值法双阈值法
阈值T=40阈值T=80阈值T=40,T’=80
可以看出与图2图1比较的话,采取双固定阀值二值化得到的图3,图3在滤去的部分稍微多一些。
接下来再取一组阀值T和T’,取阈值T=70,阈值T’=113(这两处是比较明显的波谷处值),然后二值化,得到效果如下
单阈值法单阈值法双阈值法
阈值T=70阈值T=113阈值T=70,T’=113
同样,得到上图会发现双固定阈值法滤去的部分多一些,得到二值化图像偏白。
总结:
当前选择阈值的方法众多,不同的方法有不同的特点,得到的效果也不尽相同。
6结束语
本文讨论了图像处理的基本概念,并用VC++实现了bmp图像的读写功能。
但是,对于图像处理来说,这只是最普通的操作。
在两个多月的毕业设计中,通过广泛查阅与课题有关的内容,我掌握了许多与计算机有关的东西,更重要的是使我对软件功能应用和图像处理知识有了一定的了解。
为此,我对用VC++进行图像处理的步骤、方法及思路有了一个全新的认识。
这加深了我对计算机软件VC++的熟悉,同时也了解到数字图像处理如在模式识别,医学,军事等方面都有广泛运用,我受益非浅。
通过这次的毕业设计,我不仅拓宽了自己的知识面,还在实践过程中巩固和加深了自己所学的理论知识,使自己的技术素质和实践能力有了进一步的提高。
在图像处理方面也累积了不少经验,特别是在对软件开发工具和图像处理不很熟悉的情况下,通过自己的学习和导师的指导完成了设计任务。
并在设计过程中,自己分析问题和解决问题的能力都得到了锻炼和提高,完善了自己的知识结构,加深了对知识的理解。
参考文献
【1】王强等图像二值化时图像特征的保留.2000.(10)
【2】付忠良基于图像差距度量的阈值选取方法计算机研究与发展,2001,38(5):
563-567
【3】夏良正主编数字图像处理东南大学出版社199