图像处理课程设计报告书

  • 格式:doc
  • 大小:1.43 MB
  • 文档页数:21

下载文档原格式

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

《图像处理技术应用实践》课程设计题目图像增强算法综合应用

学生帅_______

学号 ___

院系计算机与软件学院

专业计算机科学与技术

任课教师春年____

二O一七年五月

图像处理技术应用实践—课程设计2

1、设计容

图像增强处理:设计一套空间域与频率域结合的图像增强算法,处理以下任一组图片中的带噪声图像,去除噪声,提高图像质量。

(1)已知:噪声为随机噪声和周期噪声混合噪声;

(2)要求:

a)去噪处理后,计算均方误差评估去噪处理后图像的去噪效果b)撰写完整的科技报告(形式类似科技论文)表述自己的算法设计,算法实现与算法评估过程。

第一组图片:

第二组图片:

2、图像增强算法

2.1问题分析

(1)图片中加入了随机噪声和周期噪声混合噪声。针对不同的噪声,不同的去噪方法效果不同,因此应该采用不同的去噪方法以达到最好的去噪效果。

(2)随机噪声应在空间域去除,而空域去噪方法中,中值滤波法效果最好。

(3)周期噪声应在频域中消去。

(4)去除噪声后的图像仍然可以改善处理。

(5)均方误差评估去噪处理后图像的去噪效果。

2.2算法设计

(1)读入初始图片及加噪图片。

clc; clear;

f=imread();

g=imread();

(2)利用空域滤波,去除随机噪声,此时用中值滤波法,并显示它的频谱图和直方图。

g=medfilt2(g,[3,3]);

(3)利用频域滤波,去除周期噪声。先转化成double型,进行傅里叶变换,再转化成数据矩阵,最后利用低通滤波去除周期噪声。

G=double(g); %转化double

G=fft2(G);

G=fftshift(G);

[M,N]=size(G);

nn=2;

d0=25;

m =fix(m/2);

n =fix(n/2);

for i = 1 : M

for j = 1 : N

d = sqrt((i-m)^2+(j-n)^2);

h = 1/(1+0.414*(d/d0)^(2*nn)); % 计算低通滤波器传递函数

result(i,j) = h * G(i,j);

end

end

(4)计算均方误差评估去噪效果。

[m n]=size(p); l=f-p;

he=sum(sum(l));

avg=he/(m*n);

k=l-avg;

result1=(sum(sum(k.^2)))/(m*n);

if result1==0

disp('dog图均方误差'); result2=0 else

disp('dog图均方误差');

result2=sqrt(result1)

end

3、算法实现

clear;clc;

f=imread('C:\dogOriginal.bmp');

g=imread('C:\dogDistorted.bmp');

f1=double(f);

f2=fft2(f1);

f2=fftshift(f2);

g1=double(g);

g2=fft2(g1);

g2=fftshift(g2);

g3=medfilt2(g,[3,3]); %3*3模板中值滤波去除随机噪声

g4=double(g3);

F1=fft2(g3);

F1=fftshift(F1);

G=F1;

[M,N]=size(G); %低通滤波

nn=2;

d0=25;

m=fix(M/2);

n=fix(N/2);

for i=1:M

for j=1:N

d=sqrt((i-m)^2+(j-n)^2);

h=1/(1+0.414*(d/d0)^(2*nn));

%h=1/(1+(d/d0)^(2*nn)); %备用

G(i,j)=h*G(i,j);

end

end

p=uint8(real(ifft2(ifftshift(G))));

subplot(341);imshow(f),title('原图');

subplot(345);imshow(log(abs(f2)),[]),title('频谱'); subplot(349);imhist(f),title('原图');

subplot(342);imshow(g),title('噪声');

subplot(346);imshow(log(abs(g2)),[]),title(' '); subplot(3,4,10);imhist(g),title('噪声');

subplot(343);imshow(g3),title('去随机噪声'); subplot(347);imshow(log(abs(F1)),[]),title(' '); subplot(3,4,11);imhist(g3),title('去随机噪声');

subplot(344);imshow(p,[]),title('去噪');

subplot(348);imshow(log(abs(G)),[]),title(' '); subplot(3,4,12);imhist(p),title('去噪');

[m,n]=size(p);

l=f-p;