ImageVerifierCode 换一换
格式:DOCX , 页数:33 ,大小:925.02KB ,
资源ID:9189136      下载积分:1 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-9189136.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数字图像处理期中大作业.docx)为本站会员(b****0)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

数字图像处理期中大作业.docx

1、数字图像处理期中大作业 数字图像处理期中大作业 姓名:罗树英学号:24092200017序号:21湖南理工学院南湖学院2012年4月 第一部分:IPT函数的应用1、 读取并显示一张彩色图像,然后将其灰度化,并将灰度化后的结果存入计算机中,最后再将其二值化;解答: (1)程序 f=imread(luo.jpg) %读入图像fan imshow(f) %显示图像fan g=rgb2gray(f) %调用灰度处理函数对fan进行灰度处理 figure,imshow(g) %显示原图,显示灰度处理后的图像g h=im2bw(g) %调用二值转换函数将图像g转换成二值图像 figure,imshow(h

2、) %显示原图,显示灰度处理图像g,显示二值图像h imwrite(g,g.jpg) %将灰度图像g写入计算机 imwrite(h,g.jpg) %将二值图像h写入计算机 (2)运行结果 (3)结果分析调用灰度函数rgb2gray对图像进行灰度化,然后进行二值处理,默认阈值为0.5.可以看出图像的明显变化,趋于0的部分变亮,趋于1的部分变暗。2、调用函数完成图像的DFT变换及平移(1)程序f5=rgb2gray(imread(luo.jpg) %读入图像并进行灰度处理imshow(f5) %显示图像F=fft2(f5) %对图像进行DFT计算S=abs(F) %得到频谱图figure,imsh

3、ow(S,) %显示原图及频谱图Fc=fftshift(F) %进行图像的平移figure,imshow(abs(Fc),) %显示之前图像,显示平移后图像S2=log(1+abs(Fc) %进行对数变换figure,imshow(S2,) %显示图像(2)运行结果 图1 灰度图像 2 进行DFT计算后图像图3 平移后图像 图4 进行对数变换后图像(3)结果分析通过调用函数fft2进行DFT计算,然后利用fftshift将变换的原点平移到频率矩阵中心,可以明显 看到图像中心点的变化(图3),然后利用对数变化增强视觉效果(图4),结果变化明显,一目了然。3、计算图像的直方图并对其进行均衡化和规定

4、化;(1.1)直方图均衡化(1)程序f2=rgb2gray(imread(luo.jpg); %读入图像fan,并进行灰度处理imshow(f2); %显示灰度图像f2figure,imhist(f2); %显示灰度图像f2,显示f2的直方图ylim(auto); %设定刻度线和取值范围g2=histeq(f2,256); %对图像f2进行直方图均衡化处理,生成图像g2figure,imshow(g2); %显示之前的所有图像,显示g2figure,imhist(g2) %显示之前所有图像,显示g2的直方图ylim(auto) %设定刻度线和取值范围imwrite(f2,f2.jpg) %将灰

5、度图像f2写入计算机imwrite(g2,g2.jpg) %将均衡化后的图像g2写入计算机(1.2)直方图均衡化运行结果: 图1 灰度处理后的图像f2 图2 f2直方图 图3均衡化处理后效果g2 图4 g2直方图(2.1)直方图的规定化(1)程序f4=rgb2gray(imread(luo.jpg) %读入图像fan,并进行灰度处理imshow(f4) %显示灰度图像f4imwrite(f4,f4.jpg) %将灰度图像f4写入计算机figure,imhist(f4) %得到f4直方图ylim(auto) %设定刻度值和取值范围xlim(auto) %设定刻度值和取值范围g4=histeq(f

6、4,0 50 100 150 200 256)%进行直方图规定化,生成图像g4figure,imshow(g4) %保持显示之前图像,显示g4figure,imhist(g4) %保持显示之前图像,显示g4直方图ylim(auto) %设定刻度值和取值范围xlim(auto) %设定刻度值和取值范围imwrite(g4,g4.jpg) %将g4写入计算机(2.2)直方图规定化运行结果: 图1 灰度图像f4 图2 f4直方图 图3 进行规定化之后的效果g4 图4 g4直方图(3)结果分析将直方图进行均衡化之后,不难发现直方图抽样点被拉伸,对比图1,图3的平均亮度和对比度的增强十分明显。均衡化后的

7、图像的直方图中的灰度级平均值高于原始值。而直方图规定化,是使图像获得最为匹配的效果。使图像按我们所设定的方向进行,进行图像的规定化。4、调用噪声函数对读入的图像加噪,然后调用空间噪声滤波函数进行滤波,并对滤波效果进行分析(1)程序w=rgb2gray(imread(luo.jpg) %将图像灰度化imshow(w) %显示图像k=imnoise(w,salt & pepper) %加椒盐噪声figure,imshow(k) %显示原图,显示被噪声污染的图像k1=medfilt2(k) %使用中值滤波器滤波figure,imshow(k1) %保留显示之前所有图像,并显示滤波后图像imwrite

8、(k,k.jpg) %将噪声图像写入计算机imwrite(w,w.jpg) %见灰度图像写入计算机(2)运行结果 图1 灰度图像w 图2 加椒盐噪声图像 图3 滤波处理后图像(3)结果分析首先得到灰度图像,然后加入默认噪声密度为0.05的椒盐噪声。得到被噪声轻度污染的图像(图2),然后用中值滤波器进行滤波,滤除椒盐噪声,且滤波效果良好,接近原图,较为清晰。 5、查找Matlab图像处理工具箱(IPT)中的亮度变换函数,并使用亮度变换函数完成一张灰度图片的亮度调整。(1)程序f1=rgb2gray(imread(luo.jpg) %读入图像fan并进行灰度处理g1=imadjust(f1,0.5

9、 0.85,0 1) %对灰度图像f1进行亮度调整imshow(f1),figure,imshow(g1) %显示灰度图像f1和亮度调整后图像g1imwrite(f1,f1.jpg) %将灰度图像f1写入计算机imwrite(g1,g1.jpg) %将亮度处理后的图像g1写入计算机(2)运行结果图1 原灰度图像 图2 进行亮度处理后的图像(3)结果分析调用亮度处理函数imadjust处理图像后,将0.5至0.85之间的灰度级拓展到0 1。突出其中的灰度级。由图2可以看出,图像的亮暗发生了明显的变化。6、调用库函数,完成对加噪图像的滤波,并和空间滤波函数效果进行比较。(1)程序f6=imread

10、(luo.jpg) %读入噪声图像h=fspecial(motion) %创建一个滤波器g6=imfilter(f6,h) %空间滤波imshow(f6),figure,imshow(g6) %显示噪声图像和滤波后图像imwrite(g6,g6.jpg) %将滤波后图像写入计算机g6=medfilt2(f6) %调用库函数对噪声图像进行中值滤波figure,imshow(g6) %显示滤波后图像 imwrite(g6,g6.jpg) %将中值滤波后图像写入计算机(2)运行结果 图1 噪声图像 图2 空间滤波处理后图像 图3调用库函数滤波后图像(3)运行结果通过分别调用空间滤波函数和库函数对图像

11、进行滤波,不难发现,空间滤波函数在处理椒盐噪声图像始终不如中值滤波函数的处理效果好。中值滤波对于去除椒盐噪声效果明显,是因为椒盐噪声只在画面上的部分点随机出现,而中值滤波根据数据排序,将未被污染的点代替噪声点的值的概率较大,所以抑制效果好。第二部分:自编函数完成下述算法1、完成图像的几何变换算法设计,包括平移、旋转、缩放、错切等;(1)程序:.commond:clearclose allclcI=imread(2.bmp); %图像平移figureoutimage=imtranslate1(I,50,50);subplot(1,2,1),imshow(I),title(原图)subplot(1

12、,2,2),imshow(outimage,),title(平移后图像) %图像镜像figureoutimage_h=immirr(I,horizontal);outimage_v=immirr(I,vertical);outimage=immirr(I,both);subplot(2,2,1),imshow(I),title(原图)subplot(2,2,2),imshow(outimage_h,),title(水平镜像)subplot(2,2,3),imshow(outimage_v,),title(垂直镜像)subplot(2,2,4),imshow(outimage,),title(水

13、平垂直镜像) %图像旋转figureoutimage=imrotate0(I,30);subplot(1,2,1),imshow(I),title(原图)subplot(1,2,2),imshow(outimage,),title(旋转30图像) %图像缩放figureoutimage_NNI=imzoom(I,0.2,NNI);outimage_BL=imzoom(I,0.2,BL);outimage_BC=imzoom(I,0.2,BC);subplot(2,2,1),imshow(I),title(原图)subplot(2,2,2),imshow(outimage_NNI,),title

14、(最近邻插值法放大0.2倍)subplot(2,2,3),imshow(outimage_BL,),title(双线性插值法放大0.2倍)subplot(2,2,4),imshow(outimage_BC,),title(双三次插值法放大0.2倍) %图像错切figureoutimage=imageskew(I,45,0);subplot(1,3,1),imshow(I),title(原图)subplot(1,3,2),imshow(outimage,),title(沿水平方向错切45图像)outimage=imageskew(I,-45,1);subplot(1,3,3),imshow(ou

15、timage,),title(沿垂直方向错切-45图像)2). Imageskew:function r=imageskew(I,theta,mode)h0 w0=size(I);th=theta*pi/180;tga=tan(th);ctga=1/tan(th);%图像原四个顶点坐标srcx1=0;srcy1=0;srcx2=w0;srcy2=0;srcx3=0;srcy3=h0;srcx4=w0;srcy4=h0;%图像旋转后四个顶点坐标if mode=0 dstx1=srcx1;dsty1=srcy1; dstx2=srcx2;dsty2=tga*srcx2+srcy2; dstx3=s

16、rcx3;dsty3=srcy3; dstx4=srcx4;dsty4=tga*srcx4+srcy4;else dstx1=srcx1;dsty1=srcy1; dstx2=srcx2;dsty2=srcy2; dstx3=srcx3+ctga*srcy3;dsty3=srcy3; dstx4=srcx4+ctga*srcy4;dsty4=srcy4; end %计算旋转后图像的宽与高度h=max(abs(dsty4-dsty1),abs(dsty2-dsty3)+0.5;w=max(abs(dstx4-dstx1),abs(dstx2-dstx3)+0.5;h=floor(h);w=flo

17、or(w);r=zeros(h,w);f1=w0*tga;f2=h0*ctga;for x=1:w for y=1:h if mode=0 x0=x; if (theta0) y0=floor(-x*tga+y+f1); else y0=floor(-x*tga+y); end else y0=y; if (theta0 & x00 & y00 & x00 & y00 & x0(k)0 & y0(k)3 zoom=zoo;endif zoom outimage=zeros(m+deltay,n+deltax);else outimage=zeros(m,n);endm0 n0=size(out

18、image);for y=1:m0 for x=1:n0 x0=x-deltax; y0=y-deltay; if x0=1 & x0=1 & y0=m outimage(y,x)=I(y0,x0); end endend%show imagesubplot(121),imshow(I);subplot(122),imshow(outimage,);7). Imzoom:function result=imzoom(I,r,mode)%Input: I the image to be zoom%Output: result the image zoomed%mode is NNI,BL or

19、BC.if (ndims(I)=2) error(the input I must be an image of two dimensional!);endif (r=0);endm n=size(I);result=zeros(round(m*r),round(n*r);for i=ceil(2*r):m*r-2*r for j=ceil(2*r):n*r-2*r switch (mode) case NNI result(i,j)=I(ceil(i/r),ceil(j/r); case BL u=i/r-floor(i/r);v=j/r-floor(j/r); result(i,j)=(1

20、-u)*(1-v)*I(floor(i/r),floor(j/r) + . (1-u)*v*I(floor(i/r),floor(j/r)+1) + . u*(1-v)*I(floor(i/r)+1,floor(j/r) + . u*v*I(floor(i/r)+1,floor(j/r)+1); case BC u=i/r-floor(i/r);v=j/r-floor(j/r); A= S(u + 1) S(u + 0) S(u - 1) S(u - 2) ; B=I(floor(i/r)-1, floor(j/r)-1) I(floor(i/r)-1, floor(j/r)+0) I(floor(i/r)-1, floor(j/r)+1) I(floor(i/r)-1, floor(j/r)+2); I(floor(i/r)+0, floor(j/r)-1) I(floor(i/r)+0,

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2