北航数字图象处理实验报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数字图像处理实验报告

实验二图像变换实验

1.实验目的

学会对图像进行傅立叶等变换,在频谱上对图像进行分析,增进对图像频域上的感性认识,并用图像变换进行压缩。

2.实验内容

对Lena或cameraman图像进行傅立叶、离散余弦、哈达玛变换。在频域,对比他们的变换后系数矩阵的频谱情况,进一步,通过逆变换观察不同变换下的图像重建质量情况。

3. 实验要求

实验采用获取的图像,为灰度图像,该图像每象素由8比特表示。具体要求如下:

(1)输入图像采用实验1所获取的图像(Lena、Cameraman);

(2)对图像进行傅立叶变换、获得变换后的系数矩阵;

(3)将傅立叶变换后系数矩阵的频谱用图像输出,观察频谱;

(4)通过设定门限,将系数矩阵中95%的(小值)系数置为0,对图像进行反变换,获得逆变换后图像;

(5)观察逆变换后图像质量,并比较原始图像与逆变后的峰值信噪比(PSNR)。

(6)对输入图像进行离散余弦、哈达玛变换,重复步骤1-5;

(7)比较三种变换的频谱情况、以及逆变换后图像的质量(PSNR)。

4. 实验结果

1. DFT的源程序及结果

J=imread('10021033.bmp');

P=fft2(J);

for i=0:size(P,1)-1

for j=1:size(P,2)

G(i*size(P,2)+j)=P(i+1,j);

end

end

Q=sort(G);

for i=1:size(Q,2)

if (i=size(Q,2)*0.95)

t=Q(i);

end

end

G(abs(G)

for n=0:size(P,1)-1

for m=1:size(P,2)

W(n+1,m)= G(n*size(P,2)+m);

end

end

f2=ifft2(W);

f3=uint8(f2);

axes(handles.axes2);

imshow(f3)

axes(handles.axes1);

imshow(J)

psnr1=psnr(J,f3);

set(handles.text3,'string',psnr1);

2. DCT的源程序及结果

J=imread('10021033.bmp');

P=dct2(J);

for i=0:size(P,1)-1

for j=1:size(P,2)

G(i*size(P,2)+j)=P(i+1,j);

end

end

Q=sort(G);

for i=1:size(Q,2)

if (i=size(Q,2)*0.95)

t=Q(i);

end

end

G(abs(G)

for n=0:size(P,1)-1

for m=1:size(P,2)

W(n+1,m)= G(n*size(P,2)+m);

end

end

f2=idct2(W);

f3=uint8(f2);

axes(handles.axes2);

imshow(f3)

axes(handles.axes1);

imshow(J)

psnr1=psnr(J,f3);

set(handles.text3,'string',psnr1);

3.哈达玛变换的源程序及结果

J=imread('cat.jpg');

J=rgb2gray(J);

P=hadamard(512)*(im2double(J))*hadamard(512);

for i=0:size(P,1)-1

for j=1:size(P,2)

G(i*size(P,2)+j)=P(i+1,j);

end

end

Q=sort(G);

for i=1:size(Q,2)

if (i=size(Q,2)*0.5)

t=Q(i);

end

end

G(abs(G)

for n=0:size(P,1)-1

for m=1:size(P,2)

W(n+1,m)= G(n*size(P,2)+m);

end

end

f2=inv(hadamard(512))*W*inv(hadamard(512));

mm1=max(max(f2));mn1=min(min(f2));

f2=255+255/(mm1-mn1)*(f2-mm1);

f3=uint8(f2);

axes(handles.axes2);

imshow(f3)

axes(handles.axes1);

imshow(J)

psnr1=psnr(J,f3);

set(handles.text3,'string',psnr1);3

实验三图像复原实验

1.实验目的

利用反向滤波和维纳滤波进行降质图像复原,比较不同参数选择对复原结果的影响。2.实验内容

(1)利用反向滤波方法进行图像复原;

(2)利用维纳滤波方法进行图像复原。

3. 实验要求

(1)输入图像采用实验1所获取的图像,对输入图像采用运动降质模型,如下式所示

相关文档
最新文档