1成绩数字图像处理实验报告院(系)名称电子信息工程学院专业名称通信工程学生学号学生姓名2017年5月2目录目录............................................................................................................................................2实验一图像变换实验..............................................................................................................3实验二图像复原实验..............................................................................................................9实验三图像分割处理实验....................................................................................................14实验四用Hough变换进行曲线的参数提取.....................................................................19实验五手写数字识别............................................................................................................26附录..........................................................................................................................................413实验一图像变换实验1.实验目的:学会对图像进行傅立叶等变换,在频谱上对图像进行分析,增进对图像频域上的感性认识,并用图像变换进行压缩。2.实验内容:对Lena或cameraman图像进行傅立叶、离散余弦、哈达玛变换。在频域,对比他们的变换后系数矩阵的频谱情况,进一步,通过逆变换观察不同变换下的图像重建质量情况。3.实验要求实验采用获取的图像,为灰度图像,该图像每象素由8比特表示。具体要求如下:(1)对图像进行傅立叶变换、获得变换后的系数矩阵;(2)将傅立叶变换后系数矩阵的频谱用图像输出,观察频谱;(3)通过设定门限,将系数矩阵中95%的(小值)系数置为0,对图像进行反变换,获得逆变换后图像;(4)观察逆变换后图像质量,并比较原始图像与逆变后的峰值信噪比(PSNR)。(5)对输入图像进行离散余弦、哈达玛变换,重复步骤1-5;(6)比较三种变换的频谱情况、以及逆变换后图像的质量(PSNR)。44.实验结果图1.1傅里叶变换及逆变换图1.2离散余弦变换及逆变换5图1.3哈达玛变换及逆变换观察结果可以发现,将系数矩阵中95%的(小值)系数置为0,对图像进行反变换之后获得逆变换的图像质量有所下降,信噪比提高。但是图像质量的下降在可以接受的范围内,并且过程中实现了对于图像的压缩。通过对于信噪比的比较可以发现:离散余弦变换的效果最好,傅里叶变换的效果最差。5.实验代码:*******************************傅里叶变换****************************functionFourier_Callback(hObject,eventdata,handles)%-------------------------显示原图像---------------------------------figure=imread('lena512.bmp');subplot(1,3,1);imshow(figure);title('Lena原图');%-----------------------傅里叶变换频谱图------------------------------fourier=fft2(figure);fourier=fftshift(fourier);6R=real(fourier);I=imag(fourier);spectrum=abs(fourier);spectrum_norm=(spectrum-min(min(spectrum)))/(max(max(spectrum))-min(min(spectrum)))*255;subplot(1,3,2);imshow(spectrum_norm);title('傅里叶变换频谱图');%-----------------------傅里叶逆变换----------------------------------[height,width]=size(spectrum);spectrum_adjust=sort(reshape(spectrum,[1,height*width]));threshold=spectrum_adjust(round(0.95*height*width));fori=1:heightforj=1:widthifspectrum(i,j)=thresholdR(i,j)=0;I(i,j)=0;endendendrefigure=ifft2(ifftshift(R+1i*I));subplot(1,3,3);imshow(uint8(refigure));title('逆变换图像');%--------------------------PSNR-------------------------------------PSNR=PSNR_cal(figure,refigure,8);set(handles.edit2,'string',PSNR);*******************************离散余弦变换****************************functiondct_Callback(hObject,eventdata,handles)%-------------------------显示原图像---------------------------------figure=imread('lena512.bmp');subplot(1,3,1);imshow(figure);title('Lena原图');%----------------------离散余弦变换频谱图------------------------------DCT=dct2(figure);subplot(1,3,2);imshow(uint8(abs(DCT)));title('离散余弦变换频谱图');%-----------------------离散余弦逆变换--------------------------------Size=size(DCT);height=Size(1);7width=Size(2);DCT_sort=sort(reshape(DCT,1,width*height));threhold=DCT_sort(round(width*height*0.95));DCT(abs(DCT)threhold)=0;refigure=idct2(DCT);subplot(1,3,3);imshow(uint8(refigure));title('逆变换图像');%--------------------------PSNR-------------------------------------PSNR=PSNR_cal(figure,refigure,8);set(handles.edit2,'string',PSNR);*******************************哈达玛变换****************************functionHadamard_Callback(hObject,eventdata,handles)%-------------------------显示原图像---------------------------------figure=imread('lena512.bmp');subplot(1,3,1);imshow(figure);title('Lena原图');%-----------------------哈达玛变换频谱图------------------------------H=hadamard(512);figure=double(figure);DHT=(H*figure*H)./512;subplot(1,3,2);imshow(uint8(DHT));title('哈达玛变换频谱图');%-----------------------哈达玛逆变换----------------------------------Size=size(figure);height=Size(1);width=Size(2);DHT_sort=sort(reshape(DHT,1,width*height));threhold=DHT_sort(round(width*height*0.95));DHT(abs(DHT)threhold)=0;iH=H^-1;refigure=(iH*DHT*iH)*512;subplot(1,3,3);imshow(uint8(refigure));title('逆变换图像');%--------------------------PSNR-------------------------------------PSNR=PSNR_cal(figure,refigure,8);set(handles.edit2,'string',PSNR);*******************************PSNR计算函数****************************function[PSNR]=PSNR_cal(figure1,figure2,bit)8img=double(figure2);imgn=double(figure1);Size=size(figure1);height=Size(1);width=Size(2);MAX=2^bit-1;PMSE=sum(sum((img-imgn).^2))/(height*width)/MAX^2;PSNR=-10*log10(PMSE);end9实验二图像复原实验1.实验目的:利用反向滤波和维纳滤波进行降质图像复原,比较不同参数选择对复原结果的影响。2.实验内容:(1)利用反向滤波方法进行图像复原;(2)利用维纳滤波方法进行图像复原。3.实验要求:(1)输入图像采用实验1所获取的图像,对输入图像采用运动降质模型,如下式所示,sinexp,/2,/21,...,1,0,1,...,/21THuvaubvjaubvaubvuvNNN与降值图像相关的参数是:5,1,1Tab;(2)对每一种方法通过计算复原出来的图像的峰值信噪比,进行最优参数的选择,包括反向滤波方法中进行复原的区域半径0r、维纳方法中的噪声对信号的频谱密度比值K;(3)将降质图像和利用最优参数恢复后的图像同时显示出来,以便比较。104.实验结果:图2.1反向滤波图2.2维纳滤波11反向滤波方法中进行复原的区域半径0r越大,复原效果越好,当=1时,能够完全复原降质图像;维纳滤波方法中的噪声对信号的频谱密度比值K值越小,复原效果越好,当K=0时,能够完