网站大量收购独家精品文档,联系QQ:2885784924

数字图像处理实验一二.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数字图像处理实验一二

实验一 数字图像的基本处理 预习要求: 熟悉MATLAB的使用环境; 熟悉数字图像的矩阵表示形式; 掌握二维离散傅里叶变换。 实验目的 掌握MATLAB中数字图像的存储、读取和显示 掌握MATLAB中的基本数据、图像类型,以及类型之间的相互转换 掌握二维离散傅里叶变换的常用函数 实验原理 1、MATLAB中数字图像的存储、读取和显示 读取图像通过imread来执行,语法为: f=imread(‘filename’); 其中,filename参数表示输入的文件名,包括路径和文件名,函数返回值f是一个图像数组。MATLAB支持的图像类型有TIFF、JPEG、GIF、BMP、PNG和XWD等。 保存图像使用函数imwrite来执行,语法有以下几种: imwrite(f, ’filename’); %默认方式,文件格式由后缀名来指定 imwrite(f, ’filename’, ’tif’); %由第三个参数指定保存文件的格式 imwrite(f, ‘filename.jpg’ , ‘quality’, q); %保存JPEG文件,指定JPEG的压缩质量 显示图像使用imshow来执行,基本语法为: imshow(f, G); %f是图像数组,G是该图像显示的灰度级数,默认灰度级数256 imshow(f, [low high]); %所有大于high的显示为白色,小于low的显示为黑色 imshow(f, [ ]); %low设置为f的最小值,high设置为f的最大值 当用imshow显示另一幅图像g时,MATLAB会在屏幕上用新图替换旧图像,为保持第一幅图像同事显示第二幅图像,可以使用figure函数:figure, imshow( g ) 2、MATLAB中的数据类型级相互转换 MATLAB中常用的数据类型有:double, uint8, uint16, uint32, int8, int16, int32, single, char, logical等。支持的图像类型有亮度图像、二值图像、索引图像和RGB图像。 表1 常用的图像格式 格式名称 描述 可识别的扩展符 TIFF 加标识的图像文件格式 .tif, .tiff JPEG 联合图像专家组 .jpg, .jpeg GIF 图形交换格式 .gif BMP Windows位图 .bmp PNG 可移植的网络图形 .png 常用的图像类型转换函数: g=im2uint8(f); %图像转换到uint8类型 g=im2gray(f, [ fmin, fmax ]); %图像转换到double类型,值在[0,1]区间,规定fmin,fmax 是为了在转换时将f中小于fmin的值在g中转换为0,大于fmax的值转换为1。图像的信息可以通过whos f 显示。 3、二维离散傅里叶变换 MATLAB中,傅里叶变换采用快速傅里叶变换函数来实现,基本语法: F=fft2( f ); 其中,f是输入图像,F是傅里叶变换结果,默认f与F的尺寸相同。 傅里叶的逆变换函数为 ifft2( F ); 图像处理中,逆变换一般只取实部,f=real( ifft2( F ) ); 傅里叶频谱可以用以下函数来计算: S=abs(F); 由于傅里叶变换的周期性问题,在频域内的一个周期内只能观察到紧邻的4个1/4周期的频谱,不能观察到一个完整的周期。为了方便显示,可将傅里叶变换后的原点移动到频谱中心,相应的函数为:FC=fftshift( F ); 逆操作为:F=ifftshift( FC ); 对数变换函数常用来扩展低灰度范围,压缩高灰度范围,这样可以使低灰度值的图像细节更清楚。对数变换函数采用:g( x, y )=log(f( x, y)+1); 实验内容 1、练习图像的存储与显示,以及图像的压缩存储(参考程序1); 2、补填程序2的空白处,完成程序的编译,输出结果。 实验方法及程序 程序1: %***保存图像*** f=imread(D:/Matlab/work/kid.jpg); imshow(f); %***以质量参数为25%保存图像*** imwrite(f,kid.jpg,quality,25); g25=imread(kid.jpg); figure,imshow(g25,[ ]); %***显示压缩文件的相关信息*** imfinfo kid.jpg %***由imfinfo产生的信息附加到形式为K域的结构变量中*** K=imfinfo(kid

文档评论(0)

peain + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档