数字图像处理(运动模糊 + 逆滤波)

0 前言

今天在做数字图像处理实验的时候,笔者遇到了一个不会做的题目,通过各种手段在实验结束之前还是没有成功地做出来,浪费了不少时间,实验结束后,笔者重新将课本上的相关知识通读了一遍,公式简单推导了一下,立马恍然大悟,没几分钟就把实验当中不会做的题目做出来了。这个经历也是教会了笔者很多,所以在此记录一下,倘若能帮助到读者您那就太好了哈哈!

题目如下:

读入一幅图像“pepper256.jpg”(imread)和运动模糊传递函数H(u,v)(load), 忽略噪声影响的前提下,分别求出以下两幅图像并显示(imshow)。
(1)原图像的运动模糊图像。
(2)对运动模糊图像使用逆滤波方法得到的恢复图像。

由于笔者上课没认真听讲(其实听了,懵懵懂懂就过去了,没有钻入进去思考,呜呜呜~~)

1 笔者在实验室的天使(shabi)行为

  1. 疯狂使用GPT3.5和claude2进行问答
  2. 运行错误,继续问或上网搜索
  3. 修改后还是不对,继续问说上网搜索
  4. 一直重复3

就这样时间一分一秒就过去了,浪费了将近两个小时(我真实个天使(shabi)),因为我不懂,一点不知道怎么操作,就是瞎折腾!!!

这是GPT3.5的回答,啥也不是,就这样被折磨了好久,呜呜~~

% 读取原图像 
My_pepper = imread("pepper256.jpg");
% 加载模糊核
load("传递函数.mat");
% 生成运动模糊图像
Blurred = imfilter(My_pepper, H, 'circular', 'conv');
% 逆滤波恢复
H_inverse = 1./H; 
Recovered = imfilter(Blurred, H_inverse, 'circular', 'conv');
% 显示结果
subplot(1,3,1); imshow(My_pepper); title('原始图像'); 
subplot(1,3,2); imshow(abs(Blurred)); title('运动模糊图像');
subplot(1,3,3); imshow(Recovered); title('逆滤波恢复图像');

下面这是我实验结束之后,通读了一遍相关知识点后写的:

load("传递函数.mat"); % 传递函数是 H
My_pepper = imread("pepper256.jpg");
subplot(1, 3, 1);
imshow(My_pepper);
title('原始图像');

F = fft2(im2double(My_pepper));
F = fftshift(F);
G = F .* H;
g = real(ifft2(ifftshift(G)));

subplot(1, 3, 2);
imshow(g);
title("运动模糊图像")

% 逆滤波恢复
F = G ./ H;
f = real(ifft2(ifftshift(F)));
subplot(1, 3, 3);
imshow(f);
title("逆滤波恢复图像");

这是运行结果
在这里插入图片描述

1.1 运动模糊图像

其实就是一个两个公式
G = H ∗ F g = h ∗ f \begin{align} G &= H * F \tag{1} \\ g &= h * f \tag{2}\\ \end{align} Gg=HF=hf(1)(2)

其中 G 、 H 、 F G、H、F GHF 分别是运动模糊图像、传递函数、原始图像的频率域
g 、 h 、 f g、h、f ghf 分别是运动模糊图像、传递函数、原始图像的空间域

题目中已经知道原始图像的空间域 f f f 和传递函数的频率域 H H H,此时只需要将 f f f 通过傅里叶变换到频率域就可以了,然后根据公式 ( 1 ) (1) (1) 便可得出运动模糊图像的频率域 G G G,然后通过傅里叶反变换到空间域 g g g

1.2 逆滤波

通过运动模糊图像得到原始图像的空间域 f f f,那就是先通过公式 ( 1 ) (1) (1) 得到
F = G / H F = G / H F=G/H

F = G ./ H;

然后再通过傅里叶反变换到空间域就可以了!

Ok 这就完事了,是不是很简单!!!我真天使(shabi),倘若做实验不会时,我去通读一遍相关知识点,或许也不会浪费那么长时间,其实其他事情也一样,把与问题有关的相关事情搞明白,这个问题往往也自然而然就解决了。

总结

以上就是笔者的分享,这件事教会了笔者遇到困难一定要专注于困难本身,想方设法先把与困难相关的知识点或者事情搞懂,然后再去做,最好不要埋头就去找答案,这样既不能产生实质性的提高和进步,反而浪费了不该浪费的时间,真的是不划算,中国有句古话叫做”磨刀不误砍柴工“,真的现在感觉这句话真的充满了智慧。倘若有大佬发现问题,直接评论区斧正即可,感谢感谢🌞。
好的,我们下期再见🌞拜拜!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_a_yang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值