资源预览内容
第1页 / 共10页
第2页 / 共10页
第3页 / 共10页
第4页 / 共10页
第5页 / 共10页
第6页 / 共10页
第7页 / 共10页
第8页 / 共10页
第9页 / 共10页
第10页 / 共10页
亲,该文档总共10页全部预览完了,如果喜欢就下载吧!
资源描述
-摘 要MATLAB全称是Matri* Laboratory矩阵实验室,一开场它是一种专门用于矩阵数值计算的软件,从这一点上也可以看出,它在矩阵运算上有自己独特的特点。实际上MATLAB中的绝大多数的运算都是通过矩阵这一形式进展的。这一特点也就决定了MATLAB在处理数字图像上的独特优势。理论上讲,图像是一种二维的连续函数,然而在计算机上对图像进展数字处理的时候,首先必须对其在空间和亮度上进展数字化,这就是图像的采样和量化的过程。二维图像进展均匀采样,就可以得到一幅离散化成MN样本的数字图像,该数字图像是一个整数阵列,因而用矩阵来描述该数字图像是最直观最简便的了。本文通过一些简单的图像处理实例来阐述MATLAB处理数字图像的方便功能。关键字:MATLAB、几何变换、灰度、降噪基于MATLAB的数字图像处理0引言众所周知,MATLAB在数值计算、数据处理、自动控制、图像、信号处理、神经网络、优化计算、模糊逻辑、小波分析等众多领域有着广泛的用途,特别是MATLAB的图像处理和分析工具箱支持索引图像、RGB图像、灰度图像、二进制图像,并能操作*.bmp、*.jpg、*.tif等多种图像格式文件。如果能灵活地运用MATLAB提供的图像处理分析函数及工具箱,会大大简化具体的编程工作,充分表达在图像处理和分析中的优越性。1数字图象处理介绍1.1数字图像处理主要研究的容数字图像处理主要研究的容有以下几个方面: 1) 图像变换由于图像阵列很大,直接在空间域中进展处理,涉及计算量很大。因此,往往采用各种图像变换的方法,如傅立叶变换、沃尔什变换、离散余弦变换等间接处理技术,将空间域的处理转换为变换域处理,不仅可减少计算量,而且可获得更有效的处理如傅立叶变换可在频域中进展数字滤波处理。目前新兴研究的小波变换在时域和频域中都具有良好的局部化特性,它在图像处理中也有着广泛而有效的应用。 2) 图像编码压缩图像编码压缩技术可减少描述图像的数据量即比特数,以便节省图像传输、处理时间和减少所占用的存储器容量。压缩可以在不失真的前提下获得,也可以在允许的失真条件下进展。编码是压缩技术中最重要的方法,它在图像处理技术中是开展最早且比较成熟的技术。 3) 图像增强和复原图像增强和复原的目的是为了提高图像的质量,如去除噪声,提高图像的清晰度等。图像增强不考虑图像降质的原因,突出图像中所感兴趣的局部。如强化图像高频分量,可使图像中物体轮廓清晰,细节明显;如强化低频分量可减少图像中噪声影响。图像复原要求对图像降质的原因有一定的了解,一般讲应根据降质过程建立 降质模型,再采用*种滤波方法,恢复或重建原来的图像。 4) 图像分割图像分割是数字图像处理中的关键技术之一。图像分割是将图像中有意义的特征局部提取出来,其有意义的特征有图像中的边缘、区域等,这是进一步进展图像识别、分析和理解的根底。虽然目前已研究出不少边缘提取、区域分割的方法,但还没有一种普遍适用于各种图像的有效方法。因此,对图像分割的研究还在不断深入之中,是目前图像处理中研究的热点之一。 5) 图像描述图像描述是图像识别和理解的必要前提。作为最简单的二值图像可采用其几何特性描述物体的特性,一般图像的描述方法采用二维形状描述,它有边界描述和区域描述两类方法。对于特殊的纹理图像可采用二维纹理特征描述。随着图像处理研究的深入开展,已经开场进展三维物体描述的研究,提出了体积描述、外表描述、广义圆柱体描述等方法。 6) 图像分类识别图像分类识别属于模式识别的畴,其主要容是图像经过*些预处理增强、复原、压缩后,进展图像分割和特征提取,从而进展判决分类。图像分类常采用经典的模式识别方法,有统计模式分类和句法构造模式分类,近年来新开展起来的模糊模式识别和人工神经网络模式分类在图像识别中也越来越受到重视。1.2 MATLAB在图像处理中的应用MATLAB6*提供了2O类图像处理函数,涵盖了图像处理包括近期研究成果在的几乎所有的技术方法,是学习和研究图像处理的人员难得的珍贵资料和加工工具箱。这些函数按功能可分为图像显示、图像文件IO、图像算术运算、几何变换、图像登记、像素值与统计、图像分析、图像增强、线性滤波、线性二元滤波设计、图像去模糊、图像变换、邻域与块处理、灰度与二值图像的形态学运算、构造元素创立与处理、基于边缘的处理、色彩映射表操作、色彩空间变换及图像类型与类型转换Maflab数字图像处理工具箱函数包括以下几类:(1)图像显示函数;(2)图像文件输入、输出函数;(3)图像几何操作函数;(4)图像像素值及统计函数;(5)图像分析函数;(6)图像增强函数;(7)线性滤波函数;(8)二维线性滤波器设计函数;(9)图像变换函数;(10)图像邻域及块操作函数;(11)二值图像操作函数;(12)基于区域的图像处理函数;(13)颜色图操作函数;(14)颜色空间转换函数;(15)图像类型和类型转换函数。2 常用图像操作2.1 图像几何操作1imread(图片所在地址)imread函数用于读入各种图像文件。 a=imread(C:UsersW*QPicturesdesk_cg_98.jpg);2image(图片名)image函数是MATLAB提供的最原始的图像显示函数。 image(a)得到图像:3imcrop(图片名,*起点,y起点,*宽度,y宽度)用imcrop()函数可剪切图像中的一个矩形子图。 b=imcrop(a,600,0,800,900); imshow(b);得到图像:4imrotate(图片名,旋转角度,Method)imrotate()函数用于图像旋转。 c=imrotate(b,-90,bilinear); imshow(c);得到图像:5imresize(图片名 缩放大小 Method)MATLAB图像处理工具箱中的函数imresize可以用上述的3种方法对图像进展插值缩放,如果不指定插值方法,则默认为最邻近插值法。 d=imresize(a,90,144); subplot(211);imshow(a) subplot(212);imshow(d)得到与原始图片的比照图像:3 二维图形的处理3.1 图像增强功能图像增强是数字图像处理过程中常用的一种方法, 目的是采用一系列技术去改善图像的视觉效果或将图像转换成一种更适合于人眼观察和机器自动分析的形式。常用的图像增强方法有灰度变换与直方图均衡化。3.2 灰度直方图均衡化与灰度转换1rgb2gray(RGB图像)说明: 这个命令是把R.G.B色彩影像转化为灰度色彩的影像,适用于将三维数组转化为二维的数组,从而方便MATLAB处理数字图像。2histeq(灰度图象)均匀量化的自然图像的灰度直方图通常在低灰度区间上频率较大,使得图像中较暗区域中的细节看不清楚。采用直方图修整可使原图像灰度集中的区域拉开或使灰度分布均匀,从而增大反差,使图像的细节清晰,到达增强目的。直方图均衡化可用histeq0函数实现。3imhist(灰度图象)MATLAB图象处理工具箱提供了imhist函数来计算和显示图象的直方图,imhist函数的语法格式为:imhist(I,n)或imhist(*,map)其中imhist(I,n)计算和显示灰度图象I的直方图,n为指定的灰度级数目,默认值为256。imhist(*,map)计算和显示索引色图象*的直方图,map为调色板。4imshow(图片名)imshow()与image()都是用来显示图片的,只是image()可以直接显示图像坐标而imshow()需要调用。5imadjust(图片名,low_in high_in,low_out high_out)如果原图象f(*,y)的灰度围是m,M,我们希望调整后的图象g(*,y)的灰度围是n,N,则下述变换就可以实现这一要求。MATLAB图象处理工具箱中提供的imadjust函数,可以实现上述的线性变换比照度增强。说明:low_in high_in为原图象中要变换的灰度围,low_out high_out指定了变换后的灰度围。3.3 程序灰度直方图均衡化与灰度转换的程序如下所示: a=imread(C:UsersW*QPicturesdesk_cg_98.jpg); b=rgb2gray(a);把三维RGB像素的a图转化为二维灰度色的b图 c=histeq(b); d=imadjust(b,0.1 0.7,); figure(1);imshow(a)figure(2);imshow(b); figure(3);imshow(c); figure(4);subplot(311);imhist(b); figure(4);subplot(312);imhist(c); figure(4);subplot(313);imhist(d);由直方图可以看出经过均衡化之后figure(3)比figure(2)的灰度有明显的均衡化,取值比较接近。 e=imadjust(a,0.1 0.7,); figure(5);subimage(e); figure(6);imshow(d);经过灰度转换之后figure(6)比figure(2)的白色色调明显增多,图片整体偏明亮化。4 数字图像去噪典型算法及matlab实现4.1 数字化图片的降噪处理图像去噪是数字图像处理中的重要环节和步骤。去噪效果的好坏直接影响到后续的图像处理工作如图像分割、边缘检测等。图像信号在产生、传输过程中都可能会受到噪声的污染,一般数字图像系统中的常见噪声主要有:高斯噪声主要由阻性元器件部产生、椒盐噪声等。4.2 均值滤波算法也称线性滤波,主要思想为邻域平均法,即用几个像素灰度的平均值来代替每个像素的灰度。有效抑制加性噪声,但容易引起图像模糊,可以对其进展改进,主要避开对景物边缘的平滑处理。4.3 Wiener维纳滤波使原始图像和其恢复图像之间的均方误差最小的复原方法,是一种自适应滤波器,根据局部方差来调整滤波器效果。对于去除高斯噪声效果明显。4.4 图片的降噪处理通过在高斯噪声图片上使用均值滤波算法与Wiener维纳滤波,从而比较出哪种降噪方法更加使用与除去高斯噪声。1imnoise()在MATLAB中提供了给图像参加噪声的函数imnoise,imnoise函数用于对图像生成模拟噪声。imnoise的语法格式为:J = imnoise(I,type)或J = imnoise(I,type,parameters)其中J = imnoise(I,type)返回对原始图像I添加典型噪声的有噪图像J。参数type和parameters用于确定噪声的类型和相应的参数。2wiener2(I,m,n)维纳滤波wiener2能够完成维纳滤波的功能,wiener2强调图象空间域锐化的作用,其中J=wiener2(I,m,n)返回有噪声图像I经过wierner(维纳)滤波后的图像,m,n指定滤波器窗口大小为m*n,默认值为3*3。3filter2函数MATLAB图像处理工具箱提供了基于卷积的图象滤波函数filter2,filter2的语法格式为:Y = filter2(h,*)。其中Y = filter2(h,*)返回图像*经滤波算子h滤波后的结果,默认返回图像Y与输入图像*大小一
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号