利用Matlab进行图像增强_第1页
利用Matlab进行图像增强_第2页
利用Matlab进行图像增强_第3页
利用Matlab进行图像增强_第4页
利用Matlab进行图像增强_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、郑州轻工业学院课 程 设 计 任 务 书题目 利用MATLAB对图像进行增强处理 专业、班级 电子信息工程07级 学号 姓名 主要内容、基本要求、主要参考资料等:主要内容:在图像形成、传输或变换的过程中,由于受到一些客观因素的影响,会使图像产生失真,如图像对比度降低和图像模糊等等。因此需要利用图像增强技术改善这种情况。寻找一幅灰度分布不均的原始图像,在MATLAB环境下对图像进行增强处理。要求利用灰度变换、直方图均衡化和直方图规定化对图像进行增强,显示增强前后的结果并比较增强的效果。基本要求:1、 学会 MATLAB 的使用,掌握 MATLAB 的程序设计方法。 2、熟悉数字图像处理的基本知识

2、。 3、利用灰度变换中的线性变换、分段线性变换、非线性变换对图像进行增强。4、利用直方图均衡化和直方图规定化对图像进行增强5、显示增强前后的图像,并对比增强的效果。 主要参考资料:1、包振华.基于MATLAB的灰度级线性变换图像增强J.武汉职业技术学院学报.2006,32、 汪志云. 基于直方图的图像增强及其MATLAB实现J.计算机工程与科学.2006,23、 贾永红. 数字图像处理M.武汉大学出版社.2003,9完 成 期 限:2010.6.212010.6.25 指导教师签名: 课程负责人签名: 2010年 6月 18日2摘要 在图像形成、传输或变换的过程中,由于受到一些客观因素的影响,

3、会使图像产生失真,如图像对比度降低和图像模糊等等。因此需要利用图像增强技术改善这种情况。本文寻找了一幅灰度分布不均的原始图像,在MATLAB环境下对图像进行增强处理。本文还利用灰度变换、直方图均衡化和直方图规定化对图像进行增强,显示增强前后的结果并比较增强的效果。关键词:图像增强,灰度变换,直方图均衡化,直方图规定化目录摘要I目录II1 MATLAB的使用及其程序设计方法11.1 MATLAB简介11.1.1 MATLAB的概况11.2 MATLAB的使用11.2.1 MATLAB的程序文件11.2.2 MATLAB的函数文件11.3 MATLAB 的程序设计方法21.3.1 逻辑运算符21.

4、3.2 控制流22 数字图像处理的基本知识32.1 数字图像处理的概念32.1.1 图像的定义32.1.2 图像的基本属性32.1.3 数字图像处理的概念32.2 数字图像处理的内容32.3 数字图像处理的特点及其应用52.3.1 数字图像处理的基本特点52.3.2 数字图像处理的主要应用52.3.3 数字图像处理的主要优点53 利用基本灰度变换对图像进行增强63.1 线性灰度变换63.2 分段线性灰度变换83.3 非线性灰度变换104 利用直方图均衡化和直方图规定化对图像进行增强134.1 利用直方图均衡化对图像进行增强134.2 利用直方图规定化对图像进行增强145 参考文献16161 M

5、ATLAB的使用及其程序设计方法1.1 MATLAB简介1.1.1 MATLAB的概况 MATLAB是矩阵实验室(MatrixLaboratory)之意。除具备卓越的数值计算能力外,它还提供了专业水平的符号计算,文字处理,可视化建模仿真和实时控制等功能。 MATLAB的基本数据单位是矩阵,它的指令表达式与数学,工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多. 开放性使MATLAB广受用户欢迎.除内部函数外,所有MATLAB主包文件和各种工具包都是可读可修改的文件,用户通过对源程序的修改或加入自己编写程序构造新的专用工具包.1.2 MATL

6、AB的使用 MATLAB 的M 文件是文件名后缀为M 的文件,有两种形式,一种是程序文件,一种是函数文件。 1.2.1 MATLAB的程序文件MATLAB 的应用程序。调用方法:只需在MATLAB 命令窗口直接输入文件名即可。 M文件建立方法:1、在MATLAB中,选择菜单:“File”“New” “M-file”2、在编辑窗口中输入程序内容3、选择菜单“File” “Save”,存盘。1.2.2 MATLAB的函数文件 MATLAB 的内部函数是有限的,有时为了研究某一个函数的各种性态,需要为MATLAB 定义新函数,为此必须编写函数文件. 函数文件的第一行必须以特殊字符function 开

7、始,格式为: function < 因变量名> = < 函数名(自变量名)>函数值的获得必须通过具体的运算实现,并赋给因变量.说明:函数文件名必须与函数名一致。程序文件也以M文件保存。1.3 MATLAB 的程序设计方法由关系运算符构成的表达式称为关系表达式。1.3.1 逻辑运算符关系操作符说明<小于<=小于或等于>大于>=大于或等于= =等于=不等于由逻辑运算符构成的表达式称为逻辑表达式。1.3.2 控制流MATLAB 提供四种决策或控制语句: if-else-end 语句、 switch 语句、 for 语句、while 语句 前两种属于分支

8、结构,后两种属于循环结构。这些结构通常包含大量的MATLAB 命令,故常出现在MATLAB 程序中,而不是直接应用在MATLAB 提示符下。2 数字图像处理的基本知识2.1 数字图像处理的概念2.1.1 图像的定义图像:对客观对象的一种相似性的、生动性的描述或写真。模拟图像:一种空间坐标和亮度(或色彩)都是连续变化的图像。数字图像:一种空间坐标和灰度均不连续的、用离散数字(一般用整数)表示的图像。2.1.2 图像的基本属性 亮度:也称为灰度,它是颜色的明暗变化,常用0100(由黑到白)表示。以下三幅图是不同亮度对比。 对比度:是画面黑与白的比值,也就是从黑到白的渐变层次。比值越大,从黑到白的渐

9、变层次就越多,从而色彩表现越丰富。 直方图:表示图像中具有每种灰度级的象素的个数,反映图像中每种灰度出现的频率。图像在计算机中的存储形式,就像是有很多点组成一个矩阵,这些点按照行列整齐排列,每个点上的值就是图像的灰度值,直方图就是每种灰度在这个点矩阵中出现的次数。2.1.3 数字图像处理的概念 数字图像处理是指将图像信号转换成数字信号并利用计算机对其进行处理的过程。图像处理最早出现于 20 世纪 50 年代,当时的电子计算机已经发展到一定水平,人们开始利用计算机来处理图形和图像信息。数字图像处理作为一门学科大约形成于 20 世纪 60 年代初期。早期的图像处理的目的是改善图像的质量,它以人为对

10、象,以改善人的视觉效果为目的。图像处理中,输入的是质量低的图像,输出的是改善质量后的图像,常用的图像处理方法有图像增强、复原、编码、压缩等。2.2 数字图像处理的内容 数字图像处理所包含的内容相当丰富,根据抽象程度的不同,数字图形处理可分为三个层次:侠义图像处理、图像分析、和图像理解。如图1所示。小大数 据 量高低抽象层度高层中层低层语 义符号目标像素操作对象图像理解图像分析侠义图像处理数字图像处理主要研究的内容有以下几个方面:1、图像变换由于图像阵列很大,直接在空间域中进行处理,涉及计算量很大。2、图像编码压缩图像编码压缩技术可减少描述图像的数据量(即比特数),以便节省图像传输、处理时间和减

11、少所占用的存储器容量。3、图像增强和复原图像增强和复原的目的是为了提高图像的质量,如去除噪声,提高图像的清晰度等。4、图像分割图像分割是数字图像处理中的关键技术之一。5、图像描述图像描述是图像识别和理解的必要前提。 自20世纪60年代第三代数字计算机问世以后,数字图像处理技术出现了空前的发展,在该领域中需要进一步研究的问题主要有如下五个方面:1、在进一步提高精度的同时着重解决处理速度问题;2、加强软件研究,开发新的处理方法,特别要注意移植和借鉴其他学科的技术和研究成果,创造新的处理方法; 3、加强边缘学科的研究工作,促进图像处理技术的发展; 4、加强理论研究,逐步形成处理科学自身的理论体系;

12、5、时刻注意图像处理领域的标准化问题。2.3 数字图像处理的特点及其应用2.3.1 数字图像处理的基本特点1、数字图像处理的信息大多是二维信息,处理信息量很大。2、数字图像处理占用的频带较宽。与语言信息相比,占用的频带要大几个数量级。3、数字图像中各个像素是不独立的,其相关性大。4、由于图像是三维景物的二维投影,一幅图象本身不具备复现三维景物的全部几何信息的能力,很显然三维景物背后部分信息在二维图像画面上是反映不出来的。 5、数字图像处理后的图像一般是给人观察和评价的,因此受人的因素影响较大。2.3.2 数字图像处理的主要应用 图像是人类获取和交换信息的主要来源,因此,图像处理的应用领域必然涉

13、及到人类生活和工作的方方面面。随着人类活动范围的不断扩大,图像处理的应用领域也将随之不断扩大。 主要应用:航天和航空技术,生物医学工程,通信工程,机器人视觉,视频和多媒体系统,科学可视化,电子商务。总之,图像处理技术应用领域相当广泛,已在国家安全、经济发展、日常生活中充当越来越重要的角色,对国计民生的作用不可低估。2.3.3 数字图像处理的主要优点1、再现性好。2、处理精度高。3、适用面宽。4、灵活性高。3 利用基本灰度变换对图像进行增强 灰度变换原理:灰度变换是一种空域处理方法,其本质是按一定的规则修改每个像素的灰度,从而改变图像的动态范围实现期望的增强效果。灰度变换按映射函数可分为线性、分

14、段线性和非线性等多种形式。3.1 线性灰度变换 线性灰度变换是将输入图像灰度值的动态范围按线性关系公式拉伸扩展至指定范围或整个动态范围。可突出感兴趣目标,抑制不感兴趣的目标。在实际运算中,原图像f(x,y)的灰度范围为a,b,使变换后图像g(x,y)的灰度扩展为c,d,则采用下述线性变换来实现:线性灰度变换对图像每个灰度范围作线性拉伸,将有效地改善图像视觉效果。源代码如下:1、利用灰度调整函数变换图像A=imread('e:7.tif','tif'); %读入图像B=imadjust(A,0.1,0.8,0,1); %灰度调整imwrite(B,'E:

15、1.tif'); %图像保存subplot(2,2,1);imshow(A); %显示调整前后图像及其直方图subplot(2,2,2);imhist(A);subplot(2,2,3);imshow(B);subplot(2,2,4);imhist(B);2、利用灰度调整算法变换图像clear;a=60; %图像变换参数设定b=180;c=0;d=255;A=imread('pout.tif','tif'); %读入图像m,n=size(A);A=double(A);for i=1:1:m %灰度调整 for j=1:1:n if (A(i,j)>

16、;=a)&(A(i,j)<b) B(i,j)=(A(i,j)-a)*(d-c)/(b-a)+c; end endenduint8(A); uint8(B);imwrite(B,'E:2.tif'); %图像保存subplot(2,2,1); imshow(A); %显示调整前后图像及其直方图subplot(2,2,2); imhist(A);subplot(2,2,3); imshow(B);subplot(2,2,4); imhist(B);3.2 分段线性灰度变换 为了突出图像中感兴趣的研究对象,常常要求局部拉伸某一范围的灰度值,或对不同范围的灰度值进行不同拉

17、伸处理,即分段线性拉伸,数学表达式如下:源代码如下:clear;a=80; %图像变换参数设定b=160;Mf=255;c=50;d=200;Mg=255;A=imread('pout.tif','tif'); %读入图像m,n=size(A);A=double(A);for i=1:1:m %灰度调整 for j=1:1:n if A(i,j)<a B(i,j)=(c/a)*A(i,j); elseif (A(i,j)>=a)&(A(i,j)<b) B(i,j)=(A(i,j)-a)*(d-c)/(b-a)+c; else B(i,j

18、)=(A(i,j)-b)*(Mg-d)/(Mf-b)+d; end endenduint8(A); uint8(B);imwrite(B,'E:3.tif'); %图像保存subplot(2,2,1); imshow(A); %显示调整前后图像及其直方图subplot(2,2,2); imhist(A);subplot(2,2,3); imshow(B);subplot(2,2,4); imhist(B);3.3 非线性灰度变换非线性灰度变换在整个灰度范围内采用统一的变换函数,利用变换函数的数学性质实现对不同灰度值区间的扩展和压缩。1、对数扩展。对数变换常用来扩展低值灰度,压缩

19、高值灰度,这样可以使低值灰度的图像细节更容易看清,从而达到增强的效果。还可使图像灰度分布与人视觉特性相匹配。其具体形式为:式中:f(x,y)+1是为了避免对零求对数;C为尺度比例系数,用于调节动态范围。源代码如下:clear;A=imread('pout.tif','tif'); %读入图像B=log(A+1); %灰度调整imwrite(B,'e:4.tif'); %图像保存subplot(2,2,1); imshow(A); %显示调整前后图像及其直方图subplot(2,2,2); imhist(A);subplot(2,2,3); ims

20、how(B);subplot(2,2,4); imhist(B);2、指数扩展。指数扩展的基本形式为:式中:a为可以改变曲线的起始位置;c为可以改变曲线的变化速率,指数扩展可以对图像的高亮度进行大幅扩展。源代码如下:clear;a=0.45; %图像变换参数设定b=255;c=255;A=imread('pout.tif','tif');m,n=size(A);B=im2double(A);for i=1:1:m for j=1:1:n B(i,j)=uint8(b(c*(B(i,j)-a)-1); endendimwrite(B,'E:4.tif

21、9;); %图像保存subplot(1,2,1); imshow(D); %显示调整前后图像及其直方图subplot(1,2,2); imhist(D);4 利用直方图均衡化和直方图规定化对图像进行增强4.1 利用直方图均衡化对图像进行增强 通过灰度变换将一幅图像转换为另一幅具有均衡直方图的图像,即在一定灰度范围内具有相同的象素点数的图像的过程。其“中心思想”是把原始图像的灰度直方图从比较集中的某个灰度区间变成在全部灰度范围内的均匀分布。直方图均衡化就是对图像进行非线性拉伸,重新分配图像像素值,使一定灰度范围内的像素数量大致相同。直方图均衡化就是把给定图像的直方图分布改变成“均匀”分布直方图分

22、布。 主要缺点:1、变换后图像的灰度级减少,某些细节消失;2、某些图像,如直方图有高峰,经处理后对比度不自然的过分增强。算法如下:为讨论方便,以r和s分别表示归一化了的原图像灰度和经直方图修正后的图像灰度。即在0,1内设有变换S=T(r)且该函数单调递增,,于是有反变换有概率论知,如果已知随即变量r的概率密度,而随机变量s是r的函数。则s的概率密度可以有求出。从上式可以看出通过变换函数可以控制图像灰度级的概率密度函数,从而改变图像灰度层次,这就是直方图修正技术的基础。因为归一化规定 有1式有 两边积分得 上式就是所求得的变换函数。它表明当变换函数是原图像直方图累积分布函数时,能达到直方图均衡化

23、的目的。离散形式可表示为:可见均衡后的各像素的灰度值可直接由原图像的直方图算出。 在实际处理变换时,一般先对原始图像的灰度情况进行统计分析,并计算出原始直方图分布,然后根据计算出的累计直方图分布求出到的灰度映射关系。在重复上述步骤得到源图像所有灰度级到目标图像灰度级的映射关系后,按照这个映射关系对源图像各点像素进行灰度转换,即可完成对源图的直方图均衡化。源代码如下:Clear;A=imread(pout.tif);B=imadjust(A);imwrite(B,'E:5.tif'); %图像保存subplot(2,2,1); imshow(A); %显示调整前后图像及其直方图subplot(2,2,2); imhist(A);subplot(2,2,3); imshow(B);subplot(2,2,4); imhist(B);4.2 利用直方图规定

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论