数字图像处理实验报告
- 格式:docx
- 大小:1.12 MB
- 文档页数:36
数字图像处理实验报告实验一1.实验过程A.了解实验目的,实验原理。
B.在MATLAB中进行代码的输入。
C.选择合适的图片进行实验,并调试代码。
D.对照实验指导书,输出实验结果结果。
附实验代码:代码一:clear;clc;close all;x=imread('D:\std_test_images\flower.bmp');x=rgb2gray(x);subplot(1,2,1);imshow(x);title('original image');for i=1:256h(i)=sum(sum(x==i-1));endsubplot(1,2,2);imhist(x);title('Histogram of orignal image');y=x;s=sum(h);for i=1:256j=find(x==i-1);y(j)=sum(h(1:i))/s*255;endfigure;subplot(1,2,1);imshow(y);title('Result of histogtam equaliztion');subplot(1,2,2);imhist(y);title('Histogram of result of histogram equalization');clear;代码二:clc;close all;x=imread('D:\std_test_images\hole filling.bmp');figure;imshow(x);title('Original image');y=imnoise(x,'salt & pepper',.2);figure;imshow(y);title('Image corrupted by slat-and-peper');x1= medfilt2(y);figure;imshow(x1);title('Result of 3*3 median filter');x2=medfilt2(y,[7,7]);figure;imshow(x2);title('Result of 7*7 median filter');代码三:clear;clc;close all;x=imread('D:\std_test_images\cameraman.bmp');figure;imshow(x);title('Original image')[r,c]=size(x);y=x;for row=2:r-1for col=2:c-1h=abs(x(row+1,col-1)+2*x(row+1,col)+x(row+1,col+1)-x(row-1,col-1)-2*x (row-1,col)-x(row-1,col+1));v=abs(x(row+1,col+1)+2*x(row,col+1)+x(row-1,col+1)-x(row-1,col-1)-2*x(row,col-1)-x(row+1,col-1)); y(row,col)=v+h;endendfigure;imshow(y);title('Sobel gradient')y=x+y;y=double(y);ma=max(max(y));y=(255.*y)./ma;figure;imshow(uint8(y));title('Sobel gradient');2.实验结果原始图像&直方图均衡化图像&直方图原始图像椒盐噪声污染图像3×3中值滤波7×7中值滤波锐化前原始图像图像边缘锐化处理结果3.实验结果分析通过实验结果,可以看出均衡化后的图像的对比度增强,视觉效果更好。
中值滤波可以有效去除椒盐噪声,掩膜的大小对实验效果有明显的影响,掩膜大的去噪效果更好。
用Sobel算子可以提取图像边缘,将边缘与原始图像叠加,可以得到明显的锐化效果。
实验二1.实验过程A. 了解实验目的,实验原理。
B. 在MATLAB中进行代码的输入。
C. 选择合适的图片进行实验,并调试代码。
D. 对照实验指导书,输出实验结果结果。
附实验代码:代码一clear;clc;close all;x=imread('D:\std_test_images\1.bmp');figure;imshow(x);title('Original image')[r,c]=size(x);y=fft2(x);y=fftshift(y);y=abs(y);ma=max(max(y));y1=(255.*y)/ma;figure;imshow(uint8(y1));title('frequency spectrum scaled linearly');y2=log(1+y);ma=max(max(y2));y2=(255.*y2)/ma;figure;imshow(uint8(y2));title('Frequency spectrum of applying Log tranformation');代码二clear;clc;close all;I=imread('D:\std_test_images\1.bmp'); figure;imshow(I);title('Original image');[f1,f2]=freqspace(size(I),'meshgrid'); D=0.3;n=4;Hd=ones(size(I));r=sqrt(f1.^2+f2.^2);for i=1:size(I,1)for j=1:size(I,2)t=r(i,j)/(D*D);Hd(i,j)=1/(t^n+1);endendY=fft2(double(I));Y=fftshift(Y);Ya=Y.*Hd;Ya=ifftshift(Ya);la=ifft2(Ya);figure;imshow(uint8(la));title('Result of BLPF');for i=1:size(I,1)for j=1:size(I,2)t=(D*D)/r(i,j);Hd(i,j)=1/(t^n+1);endendY=fft2(double(I));Y=fftshift(Y);Ya=Y.*Hd;Ya=ifftshift(Ya);la=ifft2(Ya);figure;imshow(uint8(la));title('Result of BHPF');2.实验结果原始图像频谱线性变换频谱Log变换低通滤波高通滤波3.实验结果分析实验第一部分是输出了原始图像的两种频谱变换后的图像。
然后用巴特沃兹滤波算法,对原始图像进行了高通和低通处理。
得到了高低通滤波后的结果。
高通滤波后图像的轮廓明显。
实验三1.实验过程A. 了解实验目的,实验原理。
B. 在MATLAB中进行代码的输入。
C. 选择合适的图片进行实验,并调试代码。
D. 对照实验指导书,输出实验结果结果。
附实验代码:clear all;clc;close all;I=imread('D:\std_test_images\aerial_view_no_turb.tif'); figure;imshow(I);[r,c]=size(I);fftI=fft2(I);for u=1:rfor v=1:cH(u,v)=exp(-0.0015*((u-r/2).^2+(v-c/2).^2)^(5/6)); D(u,v)=sqrt((u-r/2)^2+(v-c/2)^2);if D(u,v)>r/4M(u,v)=1;elseM(u,v)=1/H(u,v);endendendma=max(max(H));figure;imshow(uint8(H.*255./ma));G=H.*fftshift(fftI);g=(ifft2(G));g=abs(real(g));figure;imshow(uint8(g));fftG=fft2(uint8(g));fftF=fftshift(fftG)./H;F=(ifft2(fftF))F=abs(real(F));ma=max(max(F));F=F.*255/ma;figure;imshow(uint8(F));fftF=fftshift(fftG).*M;F=(ifft2(fftF));F=abs(real(F));figure;imshow(uint8(F));T=(H.^2./(H.^2+0.0005));F2=(1./H).*T.*fftshift(fftG);f2=(ifft2(F2));f2=abs(real(f2));f2=f2(1:r,1:c);figure;imshow(uint8(f2));2.实验结果原始图像光学传递函数湍流退化图像全逆滤波复原半径受限逆滤波维纳滤波3.实验结果分析从结果可以看出逆滤波复原存在缺陷,N(u,v)/H(u,v)的比值决定复原的结果,当H(u,v)的值为零或接近原点时,会导致复原结果产生畸变。
维纳滤波则克服了这个缺点。
实验四1.实验过程A. 了解实验目的,实验原理。
B. 在MATLAB中进行代码的输入。
C. 选择合适的图片进行实验,并调试代码。
D. 对照实验指导书,输出实验结果结果。
附实验代码:clc;clear;img=imread('D:\std_test_images\flower.bmp');imshow(img)img1(:,:,1)=img(:,:,1);img1(:,:,2)=0;img1(:,:,3)=0;img2(:,:,2)=img(:,:,2);img2(:,:,1)=0;img2(:,:,3)=0;img3(:,:,3)=img(:,:,3);img3(:,:,1)=0;img3(:,:,2)=0;figure;imshow(img1);title('red');figure;imshow(img2);title('green');figure;imshow(img3);title('blue');rgb=im2double(img);r=rgb(:,:,1);g=rgb(:,:,2);b=rgb(:,:,3);num=0.5*((r-g)+(r-b));den=sqrt((r-g).^2+(r-b).*(g-b));theta=acos(num./(den+eps));H=theta;H(b>g)=2*pi-H(b>g);H=H/(2*pi);num=min(min(r,g),b);den=r+b+g;den(den==0)=eps;S=1-3.*num./den;H(S==0)=0;I=(r+b+g)/3;imgHSI=cat(3,H,S,I);img_H=imgHSI(:,:,1);img_S=imgHSI(:,:,2);img_I=imgHSI(:,:,3);figure;imshow(imgHSI);title('HSI');figure;imshow(img_H);title('Hue');figure;imshow(img_S);title('Saturation');figure;imshow(img_I);title('Intensity');2.实验结果原始图像红色分量图绿色分量图蓝色分量图转换后的HSI图H色调分量图S饱和度分量图I亮度分量图实验五1.实验过程A. 了解实验目的,实验原理。