基于MATLAB的图像增强技术处理论文

基于MATLAB的图像增强技术处理论文
基于MATLAB的图像增强技术处理论文

图像增强技术综述

内容摘要

数字图像处理是指将图像信号转换成数字格式并利用计算机对其进行处理的过程。图像增强是数字图像处理的过程中经常采用的一种方法,它对提高图像质量起着重要的作用。本文先对图像增强的原理进行概述,然后对图像增强的方法分类并给出直方图增强、对比度增强、平滑和锐化等几种常用的增强方法的理论基础,通过Matlab实验得出的实际处理效果来对比各种算法的优缺点,讨论不同的增强算法的技术要点,并对其图像增强方法进行性能评价。

关键词:图像增强直方图增强对比度增强平滑锐化彩色图像增强

Abstract

Digital image processing is the procedures of converting image signal into digital format, then using the computer to process it. Image enhancement is digital image processing process often use a method to improve image quality, it plays an important role. This article first introduces the principle of image enhancement and classification,and then focus on several methods to study such as and histogram enhancement, contrast enhancement, smoothing and sharpening, and other commonly used in learning the basic digital image With the approach, through Matlab experiment that the actual effect of various algorithms to compare the advantages and disadvantages to discuss the different enhancement algorithm. The application of occasions, and its image enhancement method of performance evaluation.

Keywords:Image Enhancement histogram enhancement contrast enhancement smoothing sharpening

1 图像增强概述

1.1 图像增强背景及意义

在一般情况下,经过图像的传送和转换,如成像、复制、扫描、传输和显示等,经常会造成图像质量的下降,即图像失真。在摄影时由于光照条件不足或过度,会使图像过暗或过亮;光学系统的失真、相对运动、大气流动等都会使图像模糊,传输过程中会引入各种类型的噪声。总之输入的图像在视觉效果和识别方便性等方面可能存在诸多问题,这类问题不妨统称为质量问题。图像增强是指根据特定的需要突出图像中的重要信息,同时减弱或去除不

需要的信息。从不同的途径获取的图像,通过进行适当的增强处理,可以将原本模糊不清甚至根本无法分辨的原始图像处理成清晰的富含大量有用信息的可使用图像,有效地去除图像中的噪声、增强图像中的边缘或其他感兴趣的区域,从而更加容易对图像中感兴趣的目标进行检测和测量。处理后的图像是否保持原状已经是无关紧要的了,不会因为考虑到图像的一些理想形式而去有意识的努力重现图像的真实度。图像增强的目的是增强图像的视觉效果,将原图像转换成一种更适合于人眼观察和计算机分析处理的形式。它一般要借助人眼的视觉特性,以取得看起来较好地视觉效果,很少涉及客观和统一的评价标准。增强的效果通常都与具体的图像有关系,靠人的主观感觉加以评价。

1.2 图像增强的应用

目前图像增强处理的应用已经渗透到医学诊断、航空航天、军事侦察、指纹识别、无损探伤、卫星图片的处理等领域。如对x射线图片、CT影像、内窥镜图像进行增强,使医生更容易从中确定病变区域,从图像细节区域中发现问题;对不同时间拍摄的同一地区的遥感图片进行增强处理,侦查是否有敌人军事调动或军事装备及建筑出现;在煤矿工业电视系统中采用增强处理来提高工业电视图像的清晰度,克服因光线不足、灰尘等原因带来的图像模糊、偏差等现象,减少电视系统维护的工作量。图像增强技术的快速发展同它的广泛应用是分不开的,发展的动力来自稳定涌现的新的应用,我们可以预料,在未来社会中图像增强技术将会发挥更为重要的作用。

2 图像增强的基本理论

2.1 图像增强的定义

为了改善视觉效果或者便于人和机器对图像的理解和分析,根据图像的特点或存在的问题采取的简单改善方法或者加强特征的措施称为图像增强。

一般情况下,图像增强是按特定的需要突出一幅图像中的某些信息,同时削弱或去除某些不需要的信息的处理方法,也是提高图像质量的过程。图像增强的目的是使图像的某些特性方面更加鲜明、突出,使处理后的图像更适合人眼视觉特性或机器分析,以便于实现对图像的更高级的处理和分析。图像增强的过程往往也是一个矛盾的过程:图像增强希望既去除噪声又增强边缘。但是,增强边缘的同时会同时增强噪声,而滤去噪声又会使边缘在一定程度上模糊,因此,在图像增强的时候,往往是将这两部分进行折中,找到一个好的代价函数达到需要的增强目的。传统的图像增强算法在确定转换函数时常是基于整个图像的统计量,如:ST转换,直方图均衡,中值滤波,微分锐化,高通滤波等等。这样对应于某些局部区域的细节在计算整幅图的变换时其影响因为其值较小而常常被忽略掉,从而局部区域的增强效果常常不够理想,噪声滤波和边缘增强这两者的矛盾较难得到解决。

2.2 图像增强的分类及方法

图像增强可分成两大类:频率域法和空间域法。前者把图像看成一种二维信号,对其进行基于二维傅里叶变换的信号增强。采用低通滤波(即只让低频信号通过)法,可去掉图中的噪声;采用高通滤波法,则可增强边缘等高频信号,使模糊的图片变得清晰。具有代表性的空间域算法有局部求平均值法和中值滤波(取局部邻域中的中间像素值)法等,它们可用于去除或减弱噪声。

图像增强的方法是通过一定手段对原图像附加一些信息或变换数据,有选择地突出图像中感兴趣的特征或者抑制(掩盖)图像中某些不需要的特征,使图像与视觉响应特性相匹配。

在图像增强过程中,不分析图像降质的原因,处理后的图像不一定逼近原始图像。图像增强技术根据增强处理过程所在的空间不同,可分为基于空域的算法和基于频域的算法两大类。基于空域的算法处理时直接对图像灰度级做运算基于频域的算法是在图像的某种变换域内对图像的变换系数值进行某种修正,是一种间接增强的算法。 基于空域的算法分为点运算算法和邻域去噪算法。点运算算法即灰度级校正、灰度变换和直方图修正等,目的或使图像成像均匀,或扩大图像动态范围,扩展对比度。邻域增强算法分为图像平滑和锐化两种。平滑一般用于消除图像噪声,但是也容易引起边缘的模糊。常用算法有均值滤波、中值滤波。锐化的目的在于突出物体的边缘轮廓,便于目标识别。常用算法有梯度法、算子、高通滤波、掩模匹配法、统计差值法等。

2. 3 常用的图像增强方法

(1) 直方图均衡化

有些图像在低值灰度区间上频率较大,使得图像中较暗区域中的细节看不清楚。这时可以通过直方图均衡化将图像的灰度范围分开,并且让灰度频率较小的灰度级变大,通过调整图像灰度值的动态范围,自动地增加整个图像的对比度,使图像具有较大的反差,细节清晰。 (2) 对比度增强法 有些图像的对比度比较低,从而使整个图像模糊不清。这时可以按一定的规则修改原来图像的每一个象素的灰度,从而改变图像灰度的动态范围。 (3) 平滑噪声

有些图像是通过扫描仪扫描输入、或传输通道传输过来的。图像中往往包含有各种各样的噪声。这些噪声一般是随机产生的,因此具有分布和大小不规则性的特点。这些噪声的存在直接影响着后续的处理过程,使图像失真。图像平滑就是针对图像噪声的操作,其主要作用是为了消除噪声,图像平滑的常用方法是采用均值滤波或中值滤波,均值滤波是一种线性空间滤波,它用一个有奇数点的掩模在图像上滑动,将掩模中心对应像素点的灰度值用掩模内所有像素点灰度的平均值代替,如果规定了在取均值过程中掩模内各像素点所占的权重,即各像素点所乘系数,这时就称为加权均值滤波;中值滤波是一种非线性空间滤波,其与均值滤波的区别是掩模中心对应像素点的灰度值用掩模内所有像素点灰度值的中间值代替。 (4) 锐化

平滑噪声时经常会使图像的边缘变的模糊,针对平均和积分运算使图像模糊,可对其进行反运算采取微分算子使用模板和统计差值的方法,使图像增强锐化。图像边缘与高频分量相对应,高通滤波器可以让高频分量畅通无阻,而对低频分量则充分限制,通过高通滤波器去除低频分量,也可以达到图像锐化的目的。

3 数字图像的基本概念

3.1 数字图像的表示

图像并不能直接用计算机来处理,处理前必须先转化成数字图像。早期一般用picture 代表图像,随着数字技术的发展,现在都用image 代表离散化了的数字图像。

由于从外界得到的图像多是二维(2-D )的,一幅图像可以用一个2-D 数组),(y x f 表示。这里x 和y 表示二维空间XY 中一个坐标点的位置,而f 则代表图像在点),(y x 的某种性质数值。为了能够用计算机对图像进行处理,需要坐标空间和性质空间都离散化。这种离散化了的图

像都是数字图像,即),(y x f 都在整数集合中取值。图像中的每个基本单元称为图像那元素,简称像素。

3.2 图像的灰度

常用的图像一般是灰度图,这时f 表示灰度值,反映了图像上对应点的亮度。亮度是观察者对所看到的物体表面反射光强的量度。作为图像灰度的量度函数),(y x f 应大于零。人们日常看到的图像一般是从目标上反射出来的光组成的,所以),(y x f 可看成由两部分构成:入射到可见场景上光的量;场景中目标对反射光反射的比率。确切地说它们分别称为照度成分),(y x i 和反射成分),(y x r 。),(y x f 与),(y x i 和),(y x r 都成正比,可表示成),(y x f =),(y x i ×),(y x r 。

将二维坐标位置函数),(y x f 称为灰度。入射光照射到物体表面的能量是有限的,并且它永远为正,即0<),(y x i < ;反射系数为0时,表示光全部被物体吸收,反射系数为1时,表示光全部被物体反射,反射系数在全吸收和全反射之间,即0<),(y x r <1。因此图像的灰度值也是非负有界的。

3.3 灰度直方图

灰度直方图是数字图像处理中一个最简单、最有用的工具,它反映了数字图像中每一灰度级与其出现频率之间的统计关系。可以有针对性地通过改变直方图的灰度分布状况,使灰度均匀地或按预期目标分布于整个灰度范围空间,从而达到图像增强的效果。

4 图像增强方法及算法

4.1 直方图增强

灰度变换是图像增强的一种重要手段,使图像对比度扩展,图像更加清晰,特征更

加明显。灰度级的直方图给出了一幅图像概貌的描述,通过修改灰度直方图来得到图像增强。

4.1.1 直方图

图像的直方图是图像的重要统计特征,它可以认为是图像灰度密度函数的近似。图像的灰度直方图是反映一幅图像的灰度级与出现这种灰度级的概率之间的关系的图形。

灰度直方图是离散函数,一般的来讲,要精确的得到图像的灰度密度函数是比较困难的,在实际中,可以使数字图像灰度直方图来代替。归纳起来,直方图主要有一下几点性质:

(1)直方图中不包含位置信息。直方图只是反应了图像灰度分布的特性,和灰度所在

的位置没有关系,不同的图像可能具有相近或者完全相同的直方图分布。

(2)直方图反应了图像的整体灰度。直方图反应了图像的整体灰度分布情况,对于暗色图像,直方图的组成集中在灰度级低(暗)的一侧,相反,明亮图像的直方图则倾向于灰度级高的一侧。直观上讲,可以得出这样的结论,若一幅图像其像素占有全部可能的灰度级并且分布均匀,这样的图像有高对比度和多变的灰度色调。

(3)直方图的可叠加性。一幅图像的直方图等于它各个部分直方图的和。

(4)直方图具有统计特性。从直方图的定义可知,连续图像的直方图是一位连续函数,它具有统计特征,例如矩、绝对矩、中心矩、绝对中心矩、熵。

(5)直方图的动态范围。直方图的动态范围是由计算机图像处理系统的模数转换器的灰度级决定。

MATLAB 图像处理工具箱提供了imhist 函数来计算和显示图像的直方图,灰度直方图是灰度值的函数,描述的是图像中具有该灰度值的像素的个数,如图4.1所示,(b )为图像(a )的灰度直方图,其横坐标表示像素的灰度级别,纵坐标表示该灰度出现的频率(像素的个数)。

图4.1

当图像对比度较小时,它的灰度直方图只在灰度轴上较小的一段区间上非零,较暗的图像由于较多的像素灰度值低,因此它的直方图的主体出现在低值灰度区间上,其在高值灰度区间上的幅度较小或为零,而较亮的图像情况正好相反。

4.1.2 直方图均衡化

直方图均衡化过程如下:

(1)计算原图像的灰度直方图)(K r r P ;

(2)计算原图像的灰度累积分布函数k s ,进一步求出灰度变换表;

(3)根据灰度变换表,将原图像各灰度级映射为新的灰度级。

在MATLAB中,histeq函数可以实现直方图均衡化。该命令对灰度图像I进行变换,返回有N级灰度的图像J,J中的每个灰度级具有大致相同的像素点,所以图像J的直方图较为平坦,当N小于I中灰度级数时,J的直方图更为平坦,缺省的N值为64。

以下展示了直方图均衡化的效果:

图4.2

从直方图统计可以看出,原始图的灰度范围大约是110到250之间,灰度分布的范围比较狭窄,所以整体上看对比度比较差,而直方图均衡化后,灰度几乎是均匀的分布在0到255的范围内,图像明暗分明,对比度很大,图像比较清晰明亮,很好的改善了原始图的视觉效果。

优势:能够使得处理后图像的概率密度函数近似服从均匀分布,其结果扩张了像素值的动态范围,是一种常用的图像增强算法。

不足:不能抑制噪声。

4.1.3 图像二值化

图像的二值化处理就是将图像上的像素点的灰度值设置为0或255,也就是讲整个图像呈现出明显的黑白效果。

将256个亮度等级的灰度图像通过适当的阀值选取而获得仍然可以反映图像整体和局

部特征的二值化图像。在数字图像处理中,二值图像占有非常重要的地位,首先,图像的二值化有利于图像的进一步处理,使图像变得简单,而且数据量减小,能凸显出感兴趣的目标的轮廓。其次,要进行二值图像的处理与分析,首先要把灰度图像二值化,得到二值化图像。

所有灰度大于或等于阀值的像素被判定为属于特定物体,其灰度值为255表示,否则这些像素点被排除在物体区域以外,灰度值为0,表示背景或者例外的物体区域。

下图为图像二值化的效果:

图 4.3

4.2 对比度增强

对比度增强是图像增强技术中一种比较简单但又十分重要的方法。这种方法是按一定的规则修改输入图像每一个像素的灰度,从而改变图像灰度的动态范围。它可以是灰度动态范围扩展,也可以使其压缩,或者是对灰度进行分段处理,根据图像特点和要求在某段区间中进行压缩在另外区间进行扩展。

例如,观察图4.4可以发现,该图的对比度不高其灰度直方图没有低于35或高于210的值,如果将图像数据映射到整个灰度范围内,则图像的对比度将大大增大。

图4.4

设输入图像为f(x,y),处理后的图像为g(x,y),则对比度增强可以表示为下面的数学

变幻式:

g(X,Y)=T[f(X,Y)]

其中T表示输入图像和输出图像对应点的灰度映射关系。实际中由于曝光不足或成像系统非线性的影响,通常照片或电子系统生成图像对比对不良,利用对比度增强变换可以有效地改善图像的质量。

4.2.1 灰度调整

1. imadjust函数

MATLAB软件中,imadjust函数可以实现图像的灰度变换,通过直方图变换调整图像的对比度。

()

J],

imadjust

[

[,

=

],

I

low

gamma

top

bottom

high

其中,gamma为校正量r,]

[top

bottom指

low为原图像中要变换的灰度范围,]

[high

定了变换后的灰度范围。

以下展示了常用对比度扩展法的结果:

图4.5

从图4.5【原图】可以看出原始图像动态范围较小,整体较暗,反映在直方图上像素主

要集中在低灰度的一侧,如【原图的灰度直方图】所示。经过对比度调整,图像变亮,可以看到更多的细节如图【原图直方图均衡化】和【均衡后的灰度直方图】所示。

优势:可以充分利用图像中的亮度信息,明显改善图像质量,是一种常用的图像增强算法。

不足:对于受噪声影响明显的图像,该算法增强效果不明显。即不能有效地抑制噪声。而且,仅仅利用了图像中的局部信息。

从原理上讲,我们也可以用一些数学上的非线性函数进行变换,如平方、指数、对数等,但其中有实际意义的还是对数变换。

2.对数变换

对数变化常用来扩展低值灰度,压缩高值灰度,这样可以使低值灰度的图像细节更容易看清。对数变换的表达式为:

g(x,y)=log[f(x,y)+1]

运用对数变换的结果如图4.6:

图 4.6

从图像对数变换前后的效果比较,可以知道,对数变换确实能够扩展低值灰度,而压缩高值灰度,使低值灰度的图像细节更容易看清。

3 指数变换

指数变换可以扩展低值灰度,压缩高值灰度,也可以扩展高值灰度,压缩低值灰度,但是由于与人的视觉特性不太相同,因此不常采用。

4.2.2 Gamma校正

Gamma校正也是数字图像处理中常用的图像增强技术。Imadjust函数中的gamma因子即是这里所说的Gamma校正的参数。Gamma因子的取值决定了输入图像到输出图像的灰度映射方式,即决定了增强低灰度还是增强高灰度。当Gamma等于1时,为线性变换。

图 4.7

4.3 平滑滤波

平滑技术用于平滑图像中的噪声。平滑噪声可以在空间域中进行,基本方法是求像素灰度的平均或中值。为了既平滑噪声又保护图像信号,也有一些改进的技术,比如在频域中运用低通滤波技术。

4.3.1 线性滤波

输出图像的值等于输入图像滤波后值的局部平均,各个项具有相同的权。下面是平滑窗口分别为矩形和圆形的情况。

???????????????

?=

1111111111111111111111111

251],[k j h rect ??

?

???

?

?

?????

???=

0111011111111111

111101110211],[k j h circ 对一些图像进行线性滤波可以去除图像中某些类型的噪声,如采用邻域平均法的均值滤波器就非常适用于去除通过扫描得到的图像中的颗粒噪声。

邻域平均法是空间域平滑噪声技术。用一像素邻域内各像素灰度平均值来代替该像素原来的灰度,即是邻域平均技术。

另外,频域处理的基础是频域滤波,例如,理想的低通滤波器:

其中[]

2

12

2

)2/()2/(),(N v M u v u D -+-=。

??

?≥≤=0

0),(0

),(1

),(D v u D D v u D v u

H

如图4.8(a)为线性平滑滤波的例子:

图 4.8(a)

如图4.8(b)为利用低通邻域平均模板进行平滑的例子:

图 4.8(b)

优势:实现简单,去噪效果明显。

不足:去噪的同时会导致结果图像边缘位置的改变和细节模糊甚至丢失。

4.3.2 非线性滤波

中值滤波是一种最常用的图像增强技术,是非线性滤波。对椒盐噪声有很好的去噪效果。下图是加高斯噪声后,中值滤波和平均滤波的滤波效果对比:

图 4.9(a)

如图可见,对于高斯噪声,均值滤波效果比均值滤波效果好。原因:

(1)高斯噪声是幅值近似正态分布,但分布在每点像素上。

(2)因为图像中的每点都是污染点,所以中值滤波选不到合适的干净点。

(3)因为正态分布的均值为0,所以均值滤波可以消除噪声。(实际上只能减弱,不能消除。)

但对于椒盐噪声,中值滤波效果比均值滤波效果好。原因:

(1)椒盐噪声是幅值近似相等但随机分布在不同位置上,图像中有干净点也有污染点。

(2)中值滤波是选择适当的点来替代污染点的值,所以处理效果好。

(3)因为噪声的均值不为0,所以均值滤波不能很好地去除噪声点。

中值滤波是基于一个移动窗口并计算输入图像在窗口内的像素亮度值的中值作为输出图像窗口中心的像素值而产生的。给定的图像f(x,y)中的每一个点(m,n),取其领域s。设s含有M个像素{a1,a2,?,aM},将其按大小排序,若M是奇数时,则位于中间的那个象素值就是修改后图像g(x,y)在点(m,n)处的像素值;若M是偶数则取中间两个象素的平均值作为修改后图像g(x,y)在点(m,n)处的象素值。我们在这里先人为的加上一些噪声,然后在matlab中实现中值滤波的效果图如下:

图 4.9(b)

比较经过加入椒盐噪声的图像和经过中值滤波的图像,可以发现,图像的噪声点被去除;但是比较原始图像和经过滤波的图像后会发现,图像的边缘稍微的变得模糊,这是平滑算法不可避免的缺点。

下图为高通滤波边缘增强的例子:

图 4.9(c)

优势:去噪效果明显,并且能够较好的保持图像边缘位置和细节。

不足:非线性滤波算法的实现相对线性滤波比较困难。

4.4 锐化

图像锐化处理的作用是使灰度反差增强,从而使模糊图像变得更加清晰。图像模糊的实质就是图像受到平均运算或积分运算,因此可以对图像进行逆运算,如微分运算以突出图像细节使图像变得更为清晰。

由于拉普拉斯是一种微分算子,它的应用可增强图像中灰度突变的区域,减弱灰度的慢变化区域。因此,锐化处理可选择拉普拉斯算子对原图像进行处理产生描述灰度突变的图像,再将拉普拉斯图像与原始图像叠加而产生锐化图像。拉普拉斯锐化的基本方法可以由下式表示:

x

y

x

f

y

-

g?

x

=

f

(

,

)

)

,

,

(2y

)

(

这种简单的锐化方法既可以产生拉普拉斯锐化处理的效果,同时又能保留背景信息:将原始图像叠加到拉普拉斯变换的处理结果中去,可以使图像中的各灰度值得到保留、灰度突变处的对比度得到增强,最终结果是在保留图像背景的前提下,突现出图像中小的细节。

图4.10展示了在MATLAB中进行图像锐化的处理结果:

图4.10

比较原始模糊图像和经过拉氏算子运算的图像,可以发现,图像模糊的部分得到了锐化,特别是模糊的边缘部分得到了增强,边界更加明显。但是,图像显示清楚的地方,经过滤波发生了失真,这也是拉氏算子增强的一大缺点。

4.5 利用sym4函数进行小波变换进行图像增强

某些传统图像增强方法往往带来比较严重的负效应。为此,人们一直在寻找更好的图像增强方法。小波分析因其分析信号的“数学显微镜’、多分辨分析能力,与图像增强的结合成为一种必然。

基于小波分析的图像增强,就是突出图像的边缘细节,尽可能的消除负面因素,从而达到增强图像的目的。基于小波分析的图像增强是采用小波变换,对低频成分进行特殊处理,以增强图像中的目标信息。

效果如图 4.11所示:

图 4.11

4.6 彩色增强

用于增强图像对比度的方法很多,要根据应用目的加以选择。伪彩色变换是增强图像显示效果和提高视觉分辨率的一种常用的、最有效的手段,但伪彩色增强不可能增加图像的有效信息;伪彩色增强的视觉效果由所选择的彩色映射决定,在选择映射函数时,尽可能使三通道的函数不相关。伪彩色处理增强视觉效果明显,常用于医学、遥感图像显示。

真彩色图像增强需要考虑彩色特征空间的选择,同样的运算在不同的特征空间效果不同。

4.6.1 伪彩色增强

伪彩色(pseudo color),非彩色图像(灰度、二值)人为映射成彩色图像。伪彩色增强是将一个波段或单一的黑白图像变换为彩色图像,从而把人眼不能区分的微小的灰度差别显示为明显的色彩差异,更便于解译和提取有用信息。伪彩色增强的方法主要有以下三种:(1)密度分割法:

密度分割或密度分层是伪彩色增强中最简单的一种方法,它是对图像亮度范围进行分割,使一定亮度间隔对应于某一类地物或几类地物从而有利于图像的增强和分类。它是把黑白图像的灰度级从0(黑)到M0(白)分成N个区间Li,i=1,2,…,N。给每个区间Li指定一种彩色Ci,这样,便可以把一幅灰度图像变成一幅伪彩色图像。此法比较直观简单,缺点使变换出的彩色数目有限。

(2)空间域灰度级-彩色变换:

空间域灰度级-彩色变换是一种更为常用的、比密度分割更有效的伪彩色增强法。它是根据色度学的原理,将原图像的灰度分段经过红、绿、蓝三种不同变换,变成三基色分量,然后用它们分别去控制彩色显示器的红、绿、蓝电子枪,便可以在彩色显示器的屏幕上合成一幅彩色图像。彩色的含量由变换函数的形状而定。

(3)频率域伪彩色增强:

频率域伪彩色增强时先把黑白图像经傅立叶变换到频率域,在频率域内三个不同传递特性的滤波器分离成三个独立分量,然后对它们进行逆傅立叶变换,便得到三幅代表不同频率分量的单色图像,接着对这三幅图像作进一步的处理(直方图均衡化),最后将它们作为三

基色分量分别加到彩色显示器的红、绿、蓝显示通道,从而实现频率域分段的伪彩色增强。效果如图:

图 4.12

4.6.2 真彩色增强

真彩色(true-color)是指图像中的每个像素值都分成R、G、B三个基色分量,每个基色分量直接决定其基色的强度,这样产生的色彩称为真彩色。例如图像深度为24,用R:G:B=8:8:8来表示色彩,则R、G、B各占用8位来表示各自基色分量的强度,每个基色分量的强度等级为28=256种。图像可容纳224=16 M种色彩。这样得到的色彩可以反映原图的真实色彩,故称真彩色。

图 4.13

4.6.3 假彩色增强

假彩色:有三种形式第一,把真实景物图像的象元逐个地映射为另一种颜色。第二,把多光谱图像中任三个光谱图像映射为可见光rgb,在合成为一幅彩色图像第三,把黑白图像,用灰度级映射或频谱映射而成为类似真实彩色的处理。

伪彩色,相当于假彩色中的一个特例,即指定某灰度为某种彩色。相当于第三中形式。

图 4.14

5图像增强小结

增强图象中的有用信息,它可以是一个失真的过程,其目的是要改善图像的视觉效果,针对给定图像的应用场合,有目的地强调图像的整体或局部特性,将原来不清晰的图像变得清晰或强调某些感兴趣的特征,扩大图像中不同物体特征之间的差别,抑制不感兴趣的特征,使之改善图像质量、丰富信息量,加强图像判读和识别效果,满足某些特殊分析的需要。

图像增强可分成两大类:频率域法和空间域法。前者把图像看成一种二维信号,对其进行基于二维傅里叶变换的信号增强。采用低通滤波(即只让低频信号通过)法,可去掉图中的噪声;采用高通滤波法,则可增强边缘等高频信号,使模糊的图片变得清晰。具有代表性的空间域算法有局部求平均值法和中值滤波(取局部邻域中的中间像素值)法等,它们可用于去除或减弱噪声。

图像增强的方法是通过一定手段对原图像附加一些信息或变换数据,有选择地突出图像中感兴趣的特征或者抑制(掩盖)图像中某些不需要的特征,使图像与视觉响应特性相匹配。在图像增强过程中,不分析图像降质的原因,处理后的图像不一定逼近原始图像。图像增强技术根据增强处理过程所在的空间不同,可分为基于空域的算法和基于频域的算法两大类。基于空域的算法处理时直接对图像灰度级做运算基于频域的算法是在图像的某种变换域内对图像的变换系数值进行某种修正,是一种间接增强的算法。

基于空域的算法分为点运算算法和邻域去噪算法。点运算算法即灰度级校正、灰度变换和直方图修正等,目的或使图像成像均匀,或扩大图像动态范围,扩展对比度。邻域增强算法分为图像平滑和锐化两种。平滑一般用于消除图像噪声,但是也容易引起边缘的模糊。常用算法有均值滤波、中值滤波。锐化的目的在于突出物体的边缘轮廓,便于目标识别。常用算法有梯度法、算子、高通滤波、掩模匹配法、统计差值法等。

6源程序:

1、图 4.1

%灰度直方图

I=imread('D:\image\rice.bmp');%读取图像

subplot(2,1,1);

Imshow(I);%显示图像

title('(a)原图');

subplot(2,1,2);

imhist(I);%绘制图像的灰度直方图

title('(b)原图的灰度直方图');

2、图 4.2

%灰度直方图均衡化

I=imread('D:\image\bubbles.bmp');%读取图像

subplot(2,2,1);

Imshow(I);%显示图像

title('原图');

subplot(2,2,2);

imhist(I);%绘制图像的灰度直方图

title('原图的灰度直方图');

subplot(2,2,3);

J=histeq(I,64);%对图像进行均衡化处理,返回有64级灰度的图像J Imshow(J);%显示图像

title('原图直方图均衡化');

subplot(2,2,4);

imhist(J);%绘制图像的灰度直方图

title('均衡后的灰度直方图');

3、图 4.3

%图像二值化(选取一个域值,(5) 将图像变为黑白图像)

I=imread('beauty.tif');

bw=im2bw(I,0.5);%选取阈值为0.5

subplot(1,3,1);

imshow(I);

title('原图');

subplot(1,3,2);

imshow(bw);

title('显示二值图像');

J=find(I<150);

I(J)=0;

J=find(I>=150);

I(J)=255;

subplot(1,3,3);

imshow(I);

title(' 图像二值化 ( 域值为150 ) ');

4、图 4.5

%imadjust函数

I=imread('D:\image\rice.bmp');%读取图像

subplot(2,2,1);

Imshow(I);%显示图像

title('原图');

subplot(2,2,2);

imhist(I);%绘制图像的灰度直方图

title('原图的灰度直方图');

subplot(2,2,3);

J=imadjust(I,[0.3 0.7],[]);%对图像进行灰度变换

Imshow(J);%显示图像

title('原图直方图均衡化');

subplot(2,2,4);

imhist(J);%绘制图像的灰度直方图

title('均衡后的灰度直方图');

5、图 4.6

%对数变换

I=imread('beauty.tif');%读取图像

I=mat2gray(I);%对数变换不支持uint8类型数据,将一个矩阵转化为灰度图像的数据格式(double)

J=log(I+1);

subplot(1,2,1);

Imshow(I);%显示图像

title('原图');

subplot(1,2,2);

Imshow(J);

title('对数变换后的图像')

6、图 4.7

%Gamma校正

for i=0:255;

f=power((i+0.5)/256,1/2.2);

LUT(i+1)=uint8(f*256-0.5);

end

img=imread('gg.bmp');

img0=rgb2ycbcr(img);

R=img(:,:,1);

G=img(:,:,2);

B=img(:,:,3);

matlab图像处理实验报告

图像处理实验报告 姓名:陈琼暖 班级:07计科一班 学号:20070810104

目录: 实验一:灰度图像处理 (3) 实验二:灰度图像增强 (5) 实验三:二值图像处理 (8) 实验四:图像变换 (13) 大实验:车牌检测 (15)

实验一:灰度图像处理题目:直方图与灰度均衡 基本要求: (1) BMP灰度图像读取、显示、保存; (2)编程实现得出灰度图像的直方图; (3)实现灰度均衡算法. 实验过程: 1、BMP灰度图像读取、显示、保存; ?图像的读写与显示操作:用imread( )读取图像。 ?图像显示于屏幕:imshow( ) 。 ?

2、编程实现得出灰度图像的直方图; 3、实现灰度均衡算法; ?直方图均衡化可用histeq( )函数实现。 ?imhist(I) 显示直方图。直方图中bin的数目有图像的类型决定。如果I是个灰度图像,imhist将 使用默认值256个bins。如果I是一个二值图像,imhist使用两bins。 实验总结: Matlab 语言是一种简洁,可读性较强的高效率编程软件,通过运用图像处理工具箱中的有关函数,就可以对原图像进行简单的处理。 通过比较灰度原图和经均衡化后的图形可见图像变得清晰,均衡化后的直方图形状比原直方图的形状更理想。

实验二:灰度图像增强 题目:图像平滑与锐化 基本要求: (1)使用邻域平均法实现平滑运算; (2)使用中值滤波实现平滑运算; (3)使用拉普拉斯算子实现锐化运算. 实验过程: 1、 使用邻域平均法实现平滑运算; 步骤:对图像添加噪声,对带噪声的图像数据进行平滑处理; ? 对图像添加噪声 J = imnoise(I,type,parameters)

matlab图像处理的几个实例

Matlab图像处理的几个实例(初学者用) 1.图像的基本信息及其加减乘除 clear,clc; P=imread('yjx.jpg'); whos P Q=imread('dt.jpg'); P=im2double(P); Q=im2double(Q); gg1=im2bw(P,0.3); gg2=im2bw(P,0.5); gg3=im2bw(P,0.8); K=imadd(gg1,gg2); L=imsubtract(gg2,gg3); cf=immultiply(P,Q); sf=imdivide(Q,P); subplot(421),imshow(P),title('郁金香原图'); subplot(422),imshow(gg1),title('0.3'); subplot(423),imshow(gg2),title('0.5'); subplot(424),imshow(gg3),title('0.8'); subplot(425),imshow(K),title('0.3+0.5'); subplot(426),imshow(L),title('0.5-0.3'); subplot(427),imshow(cf),title('P*Q'); subplot(428),imshow(sf),title('P/Q'); 2.图像缩放 clear,clc; I=imread('dt.jpg'); A=imresize(I,0.1,'nearest'); B=imresize(I,0.4,'bilinear'); C=imresize(I,0.7,'bicubic'); D=imresize(I,[100,200]); F=imresize(I,[400,100]); figure subplot(321),imshow(I),title('原图'); subplot(322),imshow(A),title('最邻近插值'); subplot(323),imshow(B),title('双线性插值'); subplot(324),imshow(C),title('二次立方插值'); subplot(325),imshow(D),title('水平缩放与垂直缩放比例为2:1'); subplot(326),imshow(F),title('水平缩放与垂直缩放比例为1:4');

非常全非常详细的MATLAB数字图像处理技术

MATLAB数字图像处理 1 概述 BW=dither(I)灰度转成二值图; X=dither(RGB,map)RGB转成灰度图,用户需要提供一个Colormap; [X,map]=gray2ind(I,n)灰度到索引; [X,map]=gray2ind(BW,n)二值图到索引,map可由gray(n)产生。灰度图n 默认64,二值图默认2; X=graylice(I,n)灰度图到索引图,门限1/n,2/n,…,(n-1)/n,X=graylice(I,v)给定门限向量v; BW=im2bw(I,level)灰度图I到二值图; BW=im2bw(X,map,level)索引图X到二值图;level是阈值门限,超过像素为1,其余置0,level在[0,1]之间。 BW=im2bw(RGB,level)RGB到二值图; I=ind2gray(X,map)索引图到灰度图; RGB=ind2rgb(X,map)索引图到RGB; I=rgb2gray(RGB)RGB到灰度图。 2 图像运算 2.1图像的读写 MATLAB支持的图像格式有bmp,gif,ico,jpg,png,cur,pcx,xwd和tif。 读取(imread): [1]A=imread(filename,fmt) [2] [X,map]=imread(filename,fmt) [3] […]=imread(filename) [4] […]=imread(URL,…) 说明:filename是图像文件名,如果不在搜索路径下应是图像的全路径,fmt是图像文件扩展名字符串。前者可读入二值图、灰度图、彩图(主要是RGB);第二个读入索引图,map 为索引图对应的Colormap,即其相关联的颜色映射表,若不是索引图则map为空。URL表示引自Internet URL中的图像。 写入(imwrite): [1] R=imwrite(A,filename,fmt); [2] R=imwrite(X,map,filename,fmt); [3] R=imwrite(…,filename); [4] R=imwrite(…,Param1,Val1,Param2,Val2) 说明:针对第四个,该语句用于指定HDF,JPEG,PBM,PGM,PNG,PPM,TIFF等类型输出文件的不同参数。例如HDF的Quality,Compression,WriteMode;JPEG的BitDepth,Comment:Emptyor not,Mode:lossy orlossless,Quality等。 2.2 图像的显示 方法1:使用Image Viewer(图像浏览器),即运用imview函数。

基于MATLAB图像处理报告.docx

基于M A T L A B图像处理报告一、设计题目 图片叠加。 二、设计要求 将一幅礼花图片和一幅夜景图片做叠加运算,使达到烟花夜景的美图效果。 三、设计方案 3.1、设计思路 利用matlab强大的图像处理功能,通过编写程序,实现对两幅图片的像素进行线性运算,利用灰度变换的算法使图片达到预期的效果。 3.2、软件介绍 MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室)。是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。 MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。 MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB 也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户直接进行下载就可以用。

图像处理实例(含Matlab代码)

信号与系统实验报告——图像处理 学院:信息科学与工程学院 专业:2014级通信工程 组长:** 组员:** 2017.01.02

目录 目录 (2) 实验一图像一的细胞计数 (3) 一、实验内容及步骤 (3) 二、Matlab程序代码 (3) 三、数据及结果 (4) 实验二图像二的图形结构提取 (5) 一、实验内容及步骤 (5) 二、Matlab程序代码 (5) 三、数据及结果 (6) 实验三图像三的图形结构提取 (7) 一、实验内容及步骤 (7) 二、Matlab程序代码 (7) 三、数据及结果 (8) 实验四图像四的傅里叶变化及巴特沃斯低通滤波 (9) 一、实验内容及步骤 (9) 二、Matlab程序代码 (9) 三、数据及结果 (10) 实验五图像五的空间域滤波与频域滤波 (11) 一、实验内容及步骤 (11) 二、Matlab程序代码 (11) 三、数据及结果 (12)

实验一图像一的细胞计数 一、实验内容及步骤 将该图形进行一系列处理,计算得到途中清晰可见细胞的个数。 首先,由于原图为RGB三色图像处理起来较为麻烦,所以转为灰度图,再进行二值化化为黑白图像,得到二值化图像之后进行中值滤波得到细胞分布的初步图像,为了方便计数对图像取反,这时进行一次计数,发现得到的个数远远多于实际个数,这时在进行一次中值滤波,去掉一些不清晰的像素点,剩下的应该为较为清晰的细胞个数,再次计数得到大致结果。 二、Matlab程序代码 clear;close all; Image = imread('1.jpg'); figure,imshow(Image),title('原图'); Image=rgb2gray(Image); figure,imshow(Image),title('灰度图'); Theshold = graythresh(Image); Image_BW = im2bw(Image,Theshold); Reverse_Image_BW22=~Image_BW; figure,imshow(Image_BW),title('二值化图像'); Image_BW_medfilt= medfilt2(Image_BW,[3 3]); figure,imshow(Image_BW_medfilt),title('中值滤波后的二值化图像'); Reverse_Image_BW = ~Image_BW_medfilt; figure,imshow(Reverse_Image_BW),title('图象取反'); Image_BW_medfilt2= medfilt2(Reverse_Image_BW,[20 20]); figure,imshow(Image_BW_medfilt2),title('第二次中值滤波的二值化图像'); [Label, Number]=bwlabel(Image_BW_medfilt,8);Number [Label, Number]=bwlabel(Image_BW_medfilt2,8);Number

MATLAB在图像处理技术方面的应用论文

MATLAB在图像处理技术方面的应用 摘要:本文介绍了MATLAB语言的特点以及图像处理工具箱实现的经典图像处理 技术。应用该工具箱对一实拍的芯片图像进行前期预处理,通过实例验证了该语言具有强大的矩阵运算与图形处理能力,是一种简洁易学,可读性强、功能强大的应用软件,对它的应用可以快速实现模拟仿真,大大提高实验效率。 关键词:MATLAB语言;图像处理;灰度图像 Application of MATLAB to Image Processing Technique LI Liao-liao DENG Shan-xi (College of Instrumentation Science ,Hefei University of Technology,Hefei,Anhui,230009,China) Abstract: This paper introduces characteristics of MATLAB language and classical image processing technique realized by using image processing toolbox. The toolbox is applied to pre-processing operations for a CMOS chip photograph, by experiment it proved that MATLAB possesses powerful capability to matrix operation and image processing, it is an application software that is simple and easy to study and understand and possesses multiple functions. MATLAB can be used to simulation tests, that will improve efficiency of experiment greatly. Key words: MATLAB software; image processing; gray image. 1、引言 MATLAB 的名称源自Matrix Laboratory ,由美国MathWorks公司推出。它是一种科学计算软件,专门以矩阵的形式处理数据。MATLAB 将高性能的数值计算和可视化集成在一起,构成了一个方便的、界面友好的用户环境,并提供了大量的内置函数。从而被广泛地应用于科学计算、控制系统、信息处理、神经网络、图像处理、小波分析等领域的分析、仿真和设计工作,而且利用MATLAB 产品的开放式结构,可以非常容易地对MATLAB 的功能进行扩充,从而在不断深化对问题认识的同时,不断完善MATLAB 产品以提高产品自身的竞争能力。MATLAB中的数字图像是以矩阵形式表示的,这意味着MATLAB强大的矩阵运 算能力用于图像处理非常有利,矩阵运算的语法对MATLAB中的数字图像同样适用。本文对MATLAB图 像处理工具箱进行探索及应用,实验证明该软件功能强大,语言简洁易学,人机界面友好,工具箱具有丰富的技术支持并集成了该领域专家的智慧,应用简单而效果良好。 2、MATLAB图像处理工具箱及数字图像处理基本过程简介 数字图像处理工具箱函数包括以下15类:、⑴、图像显示函数;⑵、图像文件输入、输出函数;⑶、图像几何操作函数;⑷、图像像素值及统计函数;⑸、图像分析函数;⑹、图像增强函数;⑺、线性滤波函数;⑻、二维线性滤波器设计函数;⑼、图像变换函数;⑽、图像邻域及块操作函数;⑾、二值图像操作函数;⑿、基于区域的图像处理函数;⒀、颜色图操作函数;⒁、颜色空间转换函数;⒂、图像类型和类型转换函数。 MATLAB图像处理工具箱支持四种图像类型,分别为真彩色图像、索引色图像、灰度图像、二值图像,由于有的函数对图像类型有限制,这四种类型可以用工具箱的类型转换函数相互转换。MATLAB可操作的图像文件包括BMP、HDF、JPEG、PCX、TIFF、XWD等格式。下面就图像处理的基本过程讨论工具箱

基于Matlab基本图像处理程序

图像读入 ●从图形文件中读入图像 imread Syntax: A = imread(filename, fmt) filename:指定的灰度或彩色图像文件的完整路径和文件名。 fmt:指定图形文件的格式所对应的标准扩展名。如果imread没有找到filename所制定的文件,会尝试查找一个名为filename.fmt的文件。 A:包含图像矩阵的矩阵。对于灰度图像,它是一个M行N列的矩阵。如果文件包含 RGB真彩图像,则是m*n*3的矩阵。 ●对于索引图像,格式[X, map] = imread(filename, fmt) X:图像数据矩阵。 MAP:颜色索引表 图像的显示 ●imshow函数:显示工作区或图像文件中的图像 ●Syntax: imshow(I) %I是要现实的灰度图像矩阵 imshow(I,[low high],param1, val1, param2, val2,...) %I是要现实的灰度图像矩阵,指定要显示的灰度范围,后面的参数指定显示图像的特定参数 imshow(RGB) imshow(BW) imshow(X,map) %map颜色索引表 imshow(filename) himage = imshow(...) ●操作:读取并显示图像 I=imread('C:\Users\fanjinfei\Desktop\baby.bmp');%读取图像数据 imshow(I);%显示原图像 图像增强 一.图像的全局描述 直方图(Histogram):是一种对数据分布情况的图形表示,是一种二维统计图表,它的两个坐标分别是统计样本和该样本对应的某个属性的度量。 图像直方图(Image Histogram):是表示数字图像中亮度分布的直方图,用来描述图象灰度值,标绘了图像中每个亮度值的像素数。 灰度直方图:是灰度级的函数,它表示图像中具有某种灰度级的像素的个数,反映了图 像中某种灰度出现的频率。描述了一幅图像的灰度级统计信息。是一个二维图,横坐标为图像中各个像素点的灰度级别,纵坐标表示具有各个灰度级别的像素在图像中出现的次数或概率。 归一化直方图:直接反应不同灰度级出现的比率。纵坐标表示具有各个灰度级别的像

MATLAB课程设计-图像处理完整版

MATLAB课程设计 设计题目:应用图像处理 班级: 学号: 姓名: 指导老师: 设计时间:2013年4月8号-4月14号

摘要 21世纪是一个充满信息的时代,图像作为人类感知世界的视觉基础,是人类获取信息、表达信息和传递信息的重要手段。图像处理,是用计算机对图像进行分析,以达到所需结果的技术。又称影像处理。基本容图像处理一般指数字图像处理。数字图像是指用数字摄像机、扫描仪等设备经过采样和数字化得到的一个大的二维数组,该数组的元素称为像素,其值为一整数,称为灰度值。图像处理技术的主要容包括图像压缩,增强和复原,匹配、描述和识别3个部分。常见的处理有图像数字化、图像编码、图像增强、图像复原、图像分割和图像分析等。图像处理一般指数字图像处理。所谓数字图像处理[7]就是利用计算机对图像信息进行加工以满足人的视觉心理或者应用需求的行为。实质上是一段能够被计算机还原显示和输出为一幅图像的数字码。 关键词:DCT变换;图像压缩;真色彩增强;平滑;锐化;直方图均衡; 灰度变换;滤波;M文件的使用 目录 摘要………………………………………………………………I 1 概述……………………………………………………………II 2 课程设计任务及要求...............................III 2.1.1设计任务 2.1.2设计要求 3 系统设计原理 (Ⅳ)

3.1 DCT图像压缩原理 3.2 真彩色增强 3.2.1平滑 3.2.2锐化 3.3 灰度变换(直方图均衡化) 3.4 图像滤波 3.4.1中值滤波器 3.4.2维纳滤波器 4 程序代码及实验结果与分析 (Ⅵ) 4.1 DCT图像压缩 4.1.1程序代码 4.1.2实验结果 4.1.3结果分析 4.2 真彩色增强 4.2.1平滑程序代码 4.2.2实验结果 4.2.3结果分析 4.2.4锐化程序代码 4.2.5实验结果 4.2.6结果分析 4.3 灰度变换(直方图均衡化) 4.3.1程序代码

MATLAB中图像函数大全 详解及例子

图像处理函数详解——strel 功能:用于膨胀腐蚀及开闭运算等操作的结构元素对象(本论坛随即对膨胀腐蚀等操作进行讲解)。 用法:SE=strel(shape,parameters) 创建由指定形状shape对应的结构元素。其中shape的种类有 arbitrary' 'pair' 'diamond' 'periodicline' 'disk' 'rectangle' 'line' 'square' 'octagon 参数parameters一般控制SE的大小。 例子: se1=strel('square',6) %创建6*6的正方形 se2=strel('line',10,45) %创建直线长度10,角度45 se3=strel('disk',15) %创建圆盘半径15 se4=strel('ball',15,5) %创建椭圆体,半径15,高度5

图像处理函数详解——roipoly 功能:用于选择图像中的多边形区域。 用法:BW=roipoly(I,c,r) BW=roipoly(I) BW=roipoly(x,y,I,xi,yi) [BW,xi,yi]=roipoly(...) [x,y,BW,xi,yi]=roipoly(...) BW=roipoly(I,c,r)表示用向量c、r指定多边形各点的X、Y坐标。BW选中的区域为1,其他部分的值为0. BW=roipoly(I)表示建立交互式的处理界面。 BW=roipoly(x,y,I,xi,yi)表示向量x和y建立非默认的坐标系,然后在指定的坐标系下选择由向量xi,yi指定的多边形区域。 例子:I=imread('eight.tif'); c=[222272300270221194]; r=[21217512112175]; BW=roipoly(I,c,r); imshow(I)

基于Matlab的数字图像处理系统毕业设计论文

论文(设计)题目: 基于MATLAB的数字图像处理系统设计 姓名宋立涛 学号201211867 学院信息学院 专业电子与通信工程 年级2012级 2013年6月16日

基于MATLAB的数字图像处理系统设计 摘要 MATLAB 作为国内外流行的数字计算软件,具有强大的图像处理功能,界面简洁,操作直观,容易上手,而且是图像处理系统的理想开发工具。 笔者阐述了一种基于MATLAB的数字图像处理系统设计,其中包括图像处理领域的大部分算法,运用MATLAB 的图像处理工具箱对算法进行了实现,论述了利用系统进行图像显示、图形表换及图像处理过程,系统支持索引图像、灰度图像、二值图像、RGB 图像等图像类型;支持BMP、GIF、JPEG、TIFF、PNG 等图像文件格式的读,写和显示。 上述功能均是在MA TLAB 语言的基础上,编写代码实现的。这些功能在日常生活中有很强的应用价值,对于运算量大、过程复杂、速度慢的功能,利用MATLAB 可以既能快速得到数据结果,又能得到比较直观的图示。 关键词:MATLAB 数字图像处理图像处理工具箱图像变换

第一章绪论 1.1 研究目的及意义 图像信息是人类获得外界信息的主要来源,近代科学研究、军事技术、工农业生产、医学、气象及天文学等领域中,人们越来越多地利用图像信息来认识和判断事物,解决实际问题,由此可见图像信息的重要性,数字图像处理技术将会伴随着未来信息领域技术的发展,更加深入到生产和科研活动中,成为人类生产和生活中必不可少的内容。 MATLAB 软件不断吸收各学科领域权威人士所编写的实用程序,经过多年的逐步发展与不断完善,是近几年来在国内外广泛流行的一种可视化科学计算软件。MATLAB 语言是一种面向科学与工程计算的高级语言,允许用数学形式的语言来编写程序,比Basic、Fortan、C 等高级语言更加接近我们书写计算公式的思维方式,用MATLAB 编写程序犹如在演算纸上排列出公式与求解问题一样。它编写简单、编程效率高并且通俗易懂。 1.2 国内外研究现状 1.2.1 国内研究现状 国内在此领域的研究中具有代表性的是清华大学研制的数字图像处理实验开发系统TDB-IDK 和南京东大互联技术有限公司研制的数字图像采集传输与处理实验软件。 TDB-IDK 系列产品是一款基于TMS320C6000 DSP 数字信号处理器的高级视频和图像系统,也是一套DSP 的完整的视频、图像解决方案,该系统适合院校、研究所和企业进行视频、图像方面的实验与开发。该软件能够完成图像采集输入程序、图像输出程序、图像基本算法程序。可实现对图像信号的实时分析,图像数据相对DSP独立方便开发人员对图像进行处理,该产品融合DSP 和FPGACPLD 两个高端技术,可以根据用户的具体需求合理改动,可以分析黑白和彩色信号,可以完成图形显示功能。 南京东大互联技术有限公司研制的数字图像采集传输与处理实验软件可实现数字图像的采集、传输与处理。可利用软件及图像采集与传输设备,采集图像并实现点对点的数字图像传输,可以观察理解多种图像处理技术的效果和差别,

matlab 图像处理报告

《 MATLAB 实践》 课程设计 学生姓名: 学号: 专业班级: 指导教师: 二○○九年三月十三日

1.设计目的…………………………………………………第 3页 2.题目分析…………………………………………………第3 页 3.总体设计…………………………………………………第4 页 4.具体设计…………………………………………………第 6页 5.结果分析…………………………………………………第 20页 6.心得体会…………………………………………………第 20页 7.参考书目…………………………………………………第 20页

1 课程设计的目的: 综合运用MATLAB工具箱实现图像处理的GUI程序设计。 2、题目分析 课程设计的基本要求 1)熟悉和掌握MATLAB 程序设计方法 2)掌握MATLAB GUI 程序设计 3)学习和熟悉MATLAB图像处理工具箱 4)学会运用MATLAB工具箱对图像进行处理和分析 课程设计的内容 学习MATLAB GUI程序设计,利用MATLAB图像处理工具箱,设计和实现自己的Photoshop 。要求:按照软件工程方法,根据需求进行程序的功能分析和界面设计,给出设计详细说明。然后按照自己拟定的功能要求进行程序设计和调试。 以下几点是程序必须实现的功能。 1)图像的读取和保存。 2)设计图形用户界面,让用户能够对图像进行任意的亮度和对比度变化调整,显示和对比变换前后的图像。 3)设计图形用户界面,让用户能够用鼠标选取图像感兴趣区域,显示和保存该选择区域。 4)编写程序通过最近邻插值和双线性插值等算法将用户所选取的图像区域进行放大和缩小整数倍的操作,并保存,比较几种插值的效果。 5)图像直方图统计和直方图均衡,要求显示直方图统计,比较直方图均衡后的效果。 6)能对图像加入各种噪声,并通过几种滤波算法实现去噪并显示结果。比较去噪效果。

matlab图像处理小结

1.function [center, r] = solve_circle(pt1, pt2, pt3) 2.%Effect: solve the circle which across points 'pt1', 'pt2' and 'pt3' 3.%Inputs: 4.%pt1, pt2, pt3: [x, y] 5.%center: the circle center [x0; y0] 6.%r: the radius of the circle 7.%Author: Su dongcai at 2012/1/2 8. A = zeros(2, 2); B = zeros(2, 1); 9.[A(1, :), B(1)] = circle2line(pt1, pt2); 10.[A(2, :), B(2)] = circle2line(pt2, pt3); 11.center = A\B; 12.r = norm(pt1' - center); 13. 14.function [A, B] = circle2line(pt1, pt2) 15.%Effect: cast 2 circles equation into 1 linear equation: 16.%(a-x1)^2 + (b-y1)^2 = r^2 | 17.% |==> 2(x1-x2)a + 2(y1-y2)b = (x1^2 + y1^2) - (y2^2 + y2^2) 18.%(a-x2)^2 + (b-y2)^2 = r^2 | 19.%Inputs: 20.%pt1, pt2: [x1, y1], [x2, y2] 21.%Outputs: 22.%A: 2[x1-x2, y1-y2] 23.%B: (x1^2 + y1^2) - (x2^2 + y2^2) 24.%Author: Su dongcai at 2012/1/2 25.A = 2*(pt1 - pt2); 26.B = norm(pt1)^2 - norm(pt2)^2; close all;clear;clc; >> i=imread('rice.png'); %>> imshow(i); >> background=imopen(i,strel('disk',15)); >> i2=imsubtract(i,background); %>> figure,imshow(i2); >> i3=imadjust(i2,stretchlim(i2),[0 1]); %>> figure,imshow(i3); >> level=graythresh(i3); >> bw=im2bw(i3,level); %>> figure,imshow(bw); >> [labeled,numobjects]=bwlabel(bw,4); graindata=regionprops(labeled,'all');

基于matlab的数字图像处理论文

迭代与分形 姓名:吴涛班级:2007级电科一班学号:20074053053 摘要:几何学研究的对象是客观世界中物体的形状。传统欧氏几何学的研究对象,都是规则并且光滑的,比如:直线、曲线、曲面等。但客观世界中物体的形状,并不完全具有规则光滑等性质,因此只能近似当作欧氏几何的对象,比如:将凹凸不平的地球表面近似为椭球面。虽然多数情况下通过这样的近似处理后,能够得到符合实际情况的结果,但是对于极不规则的形态,比如:云朵、烟雾、树木等,传统的几何学就无能为力了。 如何描述这些复杂的自然形态?如何分析其内在的机理?这些就是分形几何学所面对和解决的问题。 关键字:迭代;分形;树形 一、问题分析 在我们的世界上,存在着许多极不规则的复杂现象,比如:弯弯曲曲的海岸线、变化的云朵、宇宙中星系的分布、金融市场上价格的起伏图等,为了获得解释这些极端复杂现象的数学模型,我们需要认识其中蕴涵的特性,构造出相应的数学规则。 曼德尔布罗特(Mandelbrot)在研究英国的海岸线形状等问题时,总结出自然界中很多现象从标度变换角度表现出对称性,他将这类集合称作自相似集,他发现维数是尺度变换下的不变量,主张用维数来刻划这类集合。Mandelbrot将这类几何形体称为分形(fractal),意思就是不规则的、分数的、支离破碎的,并对它们进行了系统的研究,创立了分形几何这一新的数学分支。Mandelbrot认为海岸、山峦、云彩和其他很多自然现象都具有分形的特性,因此可以说:分形

是大自然的几何学。 分形几何体一般来说都具有无限精细的自相似的层次结构,即局部与整体的相似性,图形的每一个局部都可以被看作是整体图形的一个缩小的复本。早在19世纪就已经出现了一些具有自相似特性的分形图形,比如:瑞典数学家科赫(von Koch)设计的类似雪花和岛屿边缘的一类曲线,即Koch曲线;英国植物学家布朗通过观察悬浮在水中的花粉的运动轨迹,提出来的布朗运动轨迹。 分形几何把自然形态看作是具有无限嵌套的层次结构,并且在不同尺度下保持某种相似的属性,于是,简单的迭代过程,就是描述复杂的自然形态的有效方法。 (Koch曲线) (布朗运动轨迹) 二、背景知识介绍 1、分形几何的形成。 分形几何的概念是美籍法国数学家曼德尔布罗特(Mandelbrot)于1975年首先提出的,但最早的工作可追朔到1875年,德国数学家维尔斯特拉斯(Weierestrass)构造了处处连续但处处不可微的函数,集合论创始人康托尔(Cantor,德国数学家)构造了有许多奇异性质的康托尔三分集。1890年,意大利数学家皮亚诺(Peano)构造了填充空间的曲线。1904年,瑞典数学家科赫(Koch)设计出类似雪花和岛屿边缘的一类曲线。1915年,波兰数学家谢尔宾斯基(Sierpinski)设计了象地毯和海绵一样的几何图形。这些都是为解决分析与拓朴学

图像增强及MATLAB实现

《数字图像处理》课程设计 课设题目:图像增强与MATLAB实现学校学院:华东交通大学理学院 学生班级:13级信息计算(2)班学生:超 学生学号:20130810010216 指导老师:自柱

图像增强与MATLAB实现 摘要 数字图像处理是指将图像信号转换成数字格式并利用计算机对其进行处理的过程。图像增强是数字图像处理的过程中经常采用的一种方法,它对提高图像质量起着重要的作用。本文先对图像增强的原理进行概述,然后对图像增强的方法分类并给出直方图增强、对比度增强、平滑和锐化等几种常用的增强方法的理论基础,通过Matlab实验得出的实际处理效果来对比各种算法的优缺点,讨论不同的增强算法的技术要点,并对其图像增强方法进行性能评价。 关键字:图像;图像增强;算法

目录 一、MATLAB的简介 (1) 1.1MATLAB主要功能 (1) 二、MATLAB的主要功能 (1) 2.1数字增强技术概述 (1) 2.2数字图像的表示 (2)

三、直方图的均衡化 (2) 3.1图像的灰度 (2) 3.2灰度直方图 (2) 3.3直方图均衡化 (3) 四、图像二值化 (5) 4.1图像二值化 (5) 五、对比度增强 (7) 5.1对比度增强 (7) 5.2灰度调整 (8) 5.3对数变换 (9) 六、滤波 (10) 6.1平滑滤波 (10) 6.2线性平滑滤波程序: (11) 6.3非线性滤波 (12) 七、锐化 (18) 八、参考文献 (19) 九、自我评价 (20)

一、Matlab的简介 1.1 MATLAB主要功能 MATLAB是建立在向量、数组和矩阵基础上的一种分析和仿真工具软件包,包含各种能够进行常规运算的“工具箱”,如常用的矩阵代数运算、数组运算、方程求根、优化计算及函数求导积分符号运算等;同时还提供了编程计算的编程特性,通过编程可以解决一些复杂的工程问题;也可绘制二维、三维图形,输出结果可视化。目前,已成为工程领域中较常用的软件工具包之一。 二、MATLAB的主要功能 2.1数字增强技术概述 图像增强是按特定的需要突出一幅图像中的某些信息,同时,消弱或去除某些信息使得图像更加实用。图像增强技术主要包含直方图修改处理、图像平滑处理、图像尖锐化处理等。 图像增强技术主要包括:直方图修改处理,图像平滑处理,图像尖锐化处理,彩色图像处理。从纯技术上讲主要有两类:频域处理法和空域处理法。 频域处理法主要是卷积定理,采用修改图像傅立叶变换的方法实现对图像的增强处理技术;空域处理法:是直接对图像中的像素进行处理,基本上是以灰度映射变换为基础的。

(完整版)基于matlab的数字图像处理毕业设计论文

优秀论文审核通过 未经允许切勿外传 摘要 数字图像处理是一门新兴技术,随着计算机硬件的发展,数字图像的实时处理已经成为可能,由于数字图像处理的各种算法的出现,使得其处理速度越来越快,能更好的为人们服务。数字图像处理是一种通过计算机采用一定的算法对图形图像进行处理的技术。数字图像处理技术已经在各个领域上都有了比较广泛的应用。图像处理的信息量很大,对处理速度的要求也比较高。MATLAB强大的运算和图形展示功能,使图像处理变得更加的简单和直观。本文介绍了MATLAB 语言的特点,基于MATLAB的数字图像处理环境,介绍了如何利用MATLAB及其图像处理工具箱进行数字图像处理,并通过一些例子来说明利用MATLAB图像处理工具箱进行图像处理的方法。主要论述了利用MATLAB实现图像增强、二值图像分析等图像处理。关键词:MATLAB,数字图像处理,图像增强,二值图像

Abstract Digital image processing is an emerging technology, with the development of computer in various areas on the processing speed requirement is relatively ),线性量化(liner quantization ),对数量化,MAX 量化,锥形量化(tapered quantization )等。 3. 采样、量化和图像细节的关系 上面的数字化过程,需要确定数值N 和灰度级的级数K 。在数字图像处理中,一般都取成2的整数幂,即: (2.1) (2.2) 一幅数字图像在计算机中所占的二进制存储位数b 为: *log(2)**()m N N b N N m bit == (2.3) 例如,灰度级为256级(m=8)的512×512的一幅数字图像,需要大约210万个存储位。随着N 和m 的增加,计算机所需要的存储量也随之迅速增加。 由于数字图像是连续图像的近似,从图像数字化的过程可以看到。这种近似的程度主要取决于采样样本的大小和数量(N 值)以及量化的级数K(或m 值)。N 和K 的值越大,图像越清晰。 2.2 数字图像处理概述 2.2.1 基本概念 数字图像处理(Digital Image Processing)是通过计算机对图像进行去除噪声、增强、复原、分割、提取特征等处理的方法和技术。数字图像处理的产生和迅速发展主要受三个因素的影响:一是计算机的发展;二是数学的发展(特别是离散数学理论的创立和完善);三是广泛的农牧业、林业、环境、军事、工业和医学等方面的应用需求的

matlab图像处理综合实验实验报告

《数字图像处理》 实验报告 学院: 专业: 班级: 姓名: 学号:

实验一 实验名称:图像增强 实验目的:1.熟悉图像在Matlab下的读入,输出及显示; 2.熟悉直方图均衡化; 3.熟悉图像的线性指数等; 4.熟悉图像的算术运算及几何变换. 实验仪器:计算机,Matlab软件 实验原理: 图像增强是为了使受到噪声等污染图像在视觉感知或某种准则下尽量的恢复到原始图像的水平之外,还需要有目的性地加强图像中的某些信息而抑制另一些信息,以便更好地利用图像。图像增强分频域处理和空间域处理,这里主要用空间域的方法进行增强。空间域的增强主要有:灰度变换和图像的空间滤波。 图像的直方图实际上就是图像的各像素点强度概率密度分布图,是一幅图像所有像素集合的最基本统计规律,均衡化是指在每个灰度级上都有相同的像素点过程。 实验内容如下: I=imread('E:\cs.jpg');%读取图像 subplot(2,2,1),imshow(I),title('源图像') J=rgb2gray(I)%灰度处理 subplot(2,2,2),imshow(J) %输出图像 title('灰度图像') %在原始图像中加标题 subplot(2,2,3),imhist(J) %输出原图直方图 title('原始图像直方图') 0100200

I=imread('E:\cs.jpg');%读取图像 subplot(1,2,1),imshow(I); theta = 30; K = imrotate(I,theta); subplot(1,2,2),imshow(K) 对数运算: I=imread('E:\dog.jpg'); subplot(2,2,1),imshow(I),title('源图像') J=rgb2gray(I)%灰度处理 subplot(2,2,2),imshow(J),title('灰度变换后图像') J1=log(1+double(J)); subplot(2,2,3),imshow(J1,[]),title('对数变换后') 指数运算: I=imread('E:\dog.jpg'); f=double(I); g=(2^2*(f-1))-1 f=uint8(f); g=uint8(g);

图像处理matlab程序实例

程序实例 1旋转: x=imread('d:\MATLAB7\work\flower.jpg'); y=imrotate(x,200,'bilinear','crop'); subplot(1,2,1); imshow(x); subplot(1,2,2); imshow(y) 2.图像的rgb clear [x,map]=imread('D:\Program Files\MATLAB\R2012a\bin\shaohaihe\shh1.jpg');y=x(90:95,90:95);imshow(y)R=x(90:95,90:95,1);G=x(90:95,90:95,2);B=x(90:95,90:95,3);R,G,B 3.加法运算clear I=imread('D:\Program Files\MATLAB\R2012a\bin\shaohaihe\shh3.jpg');J=imnoise(I,'gaussian',0,0.02);%向图片加入高斯噪声subplot(1,2,1),imshow(I);%显示图片subplot(1,2,2),imshow(J);K=zeros(242,308);%产生全零的矩阵,大小与图片的大小一样for i=1:100%循环100加入噪声J=imnoise(I,'gaussian',0,0.02);J1=im2double(J);K=K+J1;end K=K/100; figure,imshow(K);save

4.减法 clear I=imread('D:\Program Files\MATLAB\R2012a\bin\shaohaihe\shao.jpg'); J=imread('D:\Program Files\MATLAB\R2012a\bin\shaohaihe\shao1.jpg'); K=imsubtract(I,J);%实现两幅图相减 K1=255-K;%将图片求反显示 figure;imshow(I); title('有噪声的图'); figure;imshow(J); title('原图'); figure;imshow(K1); title('提取的噪声'); save 5.图像的乘法 H=imread('D:\Program Files\MATLAB\R2012a\bin\shaohaihe\shao.jpg'); I=immultiply(H,1.2);将此图片乘以1.2 J=immultiply(H,2); subplot(1,3,1),imshow(H); title('原图'); subplot(1,3,2),imshow(I); title('·放大1.2'); subplot(1,3,3),imshow(J); title('放大2倍'); 6除法运算 moon=imread('moon.tif'); I=double(moon); J=I*0.43+90; K=I*0.1+90; L=I*0.01+90; moon2=uint8(J); moon3=uint8(K); moon4=uint8(L); J=imdivide(moon,moon2); K=imdivide(moon,moon3); L=imdivide(moon,moon4); subplot(2,2,1),imshow(moon); subplot(2,2,2),imshow(J,[]); subplot(2,2,3),imshow(K,[]); subplot(2,2,4),imshow(L,[]);

相关文档
最新文档