文档详情

数字图像处理研究生期末作业解析.doc

发布:2016-04-28约7.48千字共20页下载文档
文本预览下载声明
2015年在职研究生 专业期末考试试题(开卷) 姓名: 学号: 自己拍摄的图像完成以下作业(用Matlab语言完成) 打开一个BMP文件 将其局部区域的灰度值进行改变 另存为一个新的BMP文件 原图像: zuoye1=imread(Hist1.bmp); [m,n]=size(zuoye1); f=zuoye1(50:200,500:1000); zuoye2=imadjust(f,[0.5 0.75],[0 1],5); zuoye=zuoye1; zuoye(50:200,500:1000)=zuoye2; imshow(zuoye1); figure,imshow(zuoye) 新图像: Matlab编程实现图像傅立叶高通、低通滤波,给出算法原理及实验结果。 高通滤波: I= imread(Hist1.bmp); F=rgb2gray(I); figure,imshow(I); title(原图像); F=fftshift(fft2(I)); [f,h]=size(F); f0=round(f/2); h0=round(h/2); d=10; p=0.2;q=0.5; for i=1:f for j=1:h distance=sqrt((i- f0)^2+(j- h0)^2); if distance=d H=0; else H=1; end; F(i,j)=(p+q*H)*F(i,j); end; end; F=uint8(real(ifft2(ifftshift(F)))); figure(2); imshow(F);title(高通滤波所得图像); 低通滤波: I=imread(Hist1.bmp); F=rgb2gray(I); figure,imshow(I); title(原图像); F=fftshift(fft2(I)); [f,h]=size(F); f0=round(f/2); h0=round(h/2); d=10; for i=1:f for j=1:h distance=sqrt((i- f0)^2+(j- h0)^2); if distance=d H=1; else H=0; end; F(i,j)=H*F(i,j); end; end; F=uint8(real(ifft2(ifftshift(F)))); figure(2); imshow(F); title(低通滤波所得图像); 找一幅曝光不足的灰度或彩色图像,用Matlab按照直方图均衡化的方法进行处理。 HD=imread(DCL.BMP); imshow(HD) title(输入的彩色BMP图像) imwrite(rgb2gray(HD),HDTX.bmp); HD=rgb2gray(HD); figure,imshow(HD) title(灰度化后的图像) [m,n]=size(HD); GP=zeros(1,256); for k=0:255 GP(k+1)=length(find(HD==k))/(m*n); end figure,bar(0:255,GP,g) title(原图像直方图) xlabel(灰度值) ylabel(出现概率) S1=zeros(1,256); for i=1:256 for j=1:i S1(i)=GP(j)+S1(i); end end S2=round(S1*256); for i=1:256 GPeq(i)=sum(GP(find(S2==i))); end figure,bar(0:255,GPeq,b) title(均衡化后的直方图) xlabel(灰度值) ylabel(出现概率) figure,plot(0:255,S2,r) legend(灰度变化曲线) xlabel(原图像灰度级) ylabel(均衡化后灰度级) PA=HD; for i=0:255 PA(find(HD==i))=S2(i+1); end figure,imshow(PA) title(均衡化后图像) imwrite(PA,JHCLTX.bmp); 用Matlab打开一幅图像,添加椒盐、高斯噪声,然后使用邻域平均法、中值滤波法进行平滑。 原图像: 添加椒盐噪声: ①邻域平均法处理 I0=imread(Hist2.bmp); I=rgb2gray(I0); J=imnoise(I,salt pepper,0.02); figure,imshow(J)
显示全部
相似文档