参考资料:

陷波滤波器—matlab实现

http://blog.sina.com.cn/s/blog_ebd29d830102wdzw.html

图像复原之约束最小二乘方滤波

https://blog.csdn.net/yi_tech_blog/article/details/54605146

图像去模糊(约束最小二乘方滤波)

https://blog.csdn.net/bluecol/article/details/47359421

约束最小二乘方滤波去模糊

https://blog.csdn.net/yuyangyg/article/details/78681007

图像去模糊(维纳滤波)

https://blog.csdn.net/bluecol/article/details/46242355

%% 仿真逆滤波、维纳滤波,约束最小二乘滤波close all;
clear all;
clc;
% Display the original image.
I = imread('Lena512.png');
[d1,d2,d3] = size(I);
if(d3 > 1)
I = rgb2gray(I);
end
I = im2double(I);
[hei,wid,~] = size(I);
subplot(3,3,1),imshow(I);
title('Original Image ');% Simulate a motion blur.
LEN = 50;
THETA = 11;
PSF = fspecial('motion', LEN, THETA);
blurred = imfilter(I, PSF, 'conv', 'circular');
subplot(3,3,2), imshow(blurred); title('Blurred Image');% Simulate additive noise.
noise_mean = 0;
% noise_var = 0.00001;
noise_var = 0.0001;
blurred_noisy = imnoise(blurred, 'gaussian', ...noise_mean, noise_var);
subplot(3,3,3), imshow(blurred_noisy)
title('Simulate Blur and Noise')%% 使用自带的 deconvwnr 进行维纳滤波。 deconvreg进行约束最小二乘滤波
% deconvwnr 维纳滤波,如果没有参数NSPR,则为逆滤波%自带 逆滤波 对已添加噪声图像 deconvwnr
deblurred4 = deconvwnr(blurred_noisy,PSF);
subplot(3,3,4), imshow(deblurred4); title('deconvwnr逆滤波 对 运动+噪声')%自带 维纳滤波 对已添加噪声图像 deconvwnr
deblurred4 = deconvwnr(blurred_noisy,PSF,0.005); %0.005为噪声信号比
subplot(3,3,5), imshow(deblurred4); title('deconvwnr维纳滤波 对 运动+噪声')%自带的 deconvreg 进行约束最小二乘滤波
subplot(3,3,6);
imshow(deconvreg(blurred_noisy, PSF,20)); %20 为噪声功率
title('deconvreg最小二乘滤波 对 运动+噪声');%% 自写 逆滤波,约束最小二乘滤波%自写 逆滤波 对未添加噪声图像
If = fft2(blurred);
Pf = psf2otf(PSF,[hei,wid]);
deblurred = ifft2(If./Pf);
subplot(3,3,7), imshow(deblurred); title('逆滤波 对 仅运动')
%自写 逆滤波 对已经添加噪声图像
If2 = fft2(blurred_noisy);
deblurred2 = ifft2(If2./Pf);
subplot(3,3,8), imshow(deblurred2); title('逆滤波 对 运动+噪声')% Try restoration using  Home Made Constrained Least Squares Filtering.
% 自写约束最小二乘滤波
p = [0 -1 0;-1 4 -1;0 -1 0];
P = psf2otf(p,[hei,wid]);gama = 0.001;
If = fft2(blurred_noisy);numerator = conj(Pf);
denominator = Pf.^2 + gama*(P.^2);deblurred2 = ifft2( numerator.*If./ denominator );
subplot(3,3,9), imshow(deblurred2)
title('约束最小二乘滤波');

图像处理:图像复原与重建之逆滤波、维纳滤波、约束最小二乘滤波——Matlab实现相关推荐

  1. 第5章 Python 数字图像处理(DIP) - 图像复原与重建14 - 逆滤波

    标题 逆滤波 逆滤波 逆滤波 逆滤波 图像的退化函数已知或者由前面的方法获取退化函数,则可以直接逆滤波 F^(u,v)=G(u,v)H(u,v)(5.78)\hat{F}(u,v) = \frac{G ...

  2. 第5章 Python 数字图像处理(DIP) - 图像复原与重建15 - 最小均方误差(维纳)滤波

    标题 最小均方误差(维纳)滤波 最小均方误差(维纳)滤波 目标是求未污染图像fff的一个估计f^\hat{f}f^​,使它们之间的均方误差最小. e2=E{(f−f^)2}(5.80)e^2 = E ...

  3. matlab 约束最小二乘方滤波,约束最小二乘方滤波

    最小二乘自适应滤波引 言基于最小均方误差(MMSE)准则的算法, 如最陡下降法.... (002)014 [摘要]介绍了图像退化模型和约束最小二乘滤波器以及平滑约束最小二乘滤 波器,并用 MATLAB ...

  4. [数字图像处理]图像复原--逆滤波

    1.逆滤波的问题点       图像的老化,可以视为以下这样的一个过程.一个是退化函数的影响(致使图片模糊,褪色等),一个可加性噪声的影响. 用算式表示为      前几篇博文,主要是介绍可加性噪声的 ...

  5. 第5章 Python 数字图像处理(DIP) - 图像复原与重建16 - 约束最小二乘方滤波、几何均值滤波

    标题 约束最小二乘方滤波 几何均值滤波 约束最小二乘方滤波 F^(u,v)=[H∗(u,v)∣H(u,v)∣2+γ∣P(u,v)∣2]G(u,v)(5.89)\hat{F}(u,v) = \bigg[ ...

  6. 数字图像处理——第五章 图像复原与重建

    数字图像处理--第五章 图像复原与重建 文章目录 数字图像处理--第五章 图像复原与重建 写在前面 1 图像退化/复原过程的模型 2 噪声模型 2.1 高斯噪声 2.2 椒盐噪声 3 仅有噪声的复原- ...

  7. 数字图像处理 第五章图像复原与重建

    文章目录 数字图像处理 第五章 图像复原与重建 引言 5.1背景知识 5.2图像退化与复原 5.3噪声模型 高斯噪声 椒盐噪声 瑞丽噪声 伽马噪声 5.4只存在噪声的复原--空间滤波 均值滤波 统计排 ...

  8. paper 108:系统学习数字图像处理之图像复原与重建

    首先,必须注意这里所限制的处理条件. 关于图像退化/复原模型 退化的图像是由成像系统的退化加上额外的噪声形成的. 1.只考虑噪声引起的退化 噪声模型,包含于空间不相关和相关两种,除了空间周期噪声,这里 ...

  9. 系统学习数字图像处理之图像复原与重建

    首先,必须注意这里所限制的处理条件. 关于图像退化/复原模型 退化的图像是由成像系统的退化加上额外的噪声形成的. 1.只考虑噪声引起的退化 噪声模型,包含于空间不相关和相关两种,除了空间周期噪声,这里 ...

最新文章

  1. 团队分数分配方法——BY 李栋
  2. 牛客网练习赛7--购物 动态规划
  3. 再论c++模板之类型识别之如何得到类型信息
  4. 带头结点的单链表的逆置
  5. MFC消息处理学习总结
  6. apache arm 交叉编译_arm apache php交叉编译
  7. SAP UI5里xml fragment getContent方法的实现
  8. xenserver 虚拟机扩容lvm磁盘分区的方法_Linux磁盘扩容
  9. java打印等腰梯形
  10. php 按位左移,PHP位运算符
  11. 瑞典正成为欧洲硅谷?
  12. crontab使用方法
  13. appender log4j 扩展_详解Tomcat使用Log4j输出catalina.out日志
  14. SQL存储过程、存储函数
  15. 微信小程序下拉刷新功能
  16. 学了Java可以做什么工作
  17. android缩放大图片加载
  18. 单龙芯3A3000-7A1000PMON研究学习-(1)硬件原理图
  19. 不解决产能低下的问题,直供模式也拯救不了小米
  20. 医疗管理系统-图形报表、POI报表

热门文章

  1. 查看 php-cgi 进程数
  2. apache 虚拟主机如何配置
  3. 支持企业互联网的正确故障恢复方法
  4. 【搜索引擎】Smartsys部署ES的准备工作
  5. zz 递归算法转换为非递归算法
  6. 用webpack构建一个常规项目,好处和坏处分析
  7. FD_CLOEXEC用法及原因_转
  8. C#-WinForm-无边框窗体的移动和阴影-API
  9. 请编程实现:产生一个int数组,长度为100,并向其中随机插入1-100,并且不能重复(百度了一下,get一种高性能算法,非递归)...
  10. shopnc 发票项目