图象恢复——(逆滤波,维纳滤波)

2023-11-06

目的:对获取图像在频域用高斯函数进行退化并叠加白噪声,对退化图像进行逆滤波和维纳滤波恢复,比较原始图像和恢复图像,对利用逆滤波和维纳滤波恢复方法恢复图像进行比较。

一、基本原理

      图像复原是一种客观的操作,通过使用退化现象的先验知识重建或恢复一副退化的图像;图像在形成、传输和记录的过程中,由于受多种原因的影响,图像的质量会有下降,典型表现为图像模糊、失真、有噪声等,这一降质的过程称为图像的退化。而图像复原试图利用退化现象的某种先验知识(即退化模型),把已经退化了的图像加以重建和复原。其目的就是尽可能地减少或去除在获取图像过程中发的图像质量的下降(退化),恢复被退化图像的本来面目。
      图像复原基本思路:弄清退化原因,建立退化模型,反向推演,恢复图像。
     逆滤波复原过程:对退化的图像进行二位傅里叶变换;计算系统点扩散函数的二位傅里叶变换;引入H(fx,fy)计算并且对结果进行逆傅里叶变换。

      维纳滤波:在一定的约束条件下,其输出与一给定函数(通常称为期望输出)的差的平方达到最小,通过数学运算最终可变为一个托布利兹方程的求解问题。维纳滤波器又被称为最小二乘滤波器或最小平方滤波器,目前是基本的滤波方法之一。维纳滤波是利用平稳随机过程的相关特性和频谱特性对混有噪声的信号进行滤波的方法。

逆滤波:简单的就是将退化函数去除,直接的逆滤波没有什么意义,只处理了靠近直流分量的部分,其他不做处理。如果加入巴特沃斯低通滤波器,效果会好点,可是在运动模糊的图片中就不好使了。

维纳斯滤波:使图像尽可能的平滑,可以消除很严重的噪声,回复图像。最小二乘滤波器。

二、结果图分析

 

     逆滤波和维纳滤波算法简单,使用灵活,有较高的使用精度。

 

    在带有噪声干扰的情况下,逆滤波的效果随着噪声的方差值的变大而变小,维纳滤波同样结果,同时恢复结果都带有不同程度的振铃效应。但维纳滤波的效果要比逆滤波的效果好,且随着噪声的加强对比效果变得更明显。改变K值可以改善逆滤波但不及维纳滤波的效果好。

 

三、完整程序

clc; 
clear;
x=rgb2gray(imread('C:\Users\lenovo\Desktop\zhang.jpg')); 
x1=x(:,:,1);
x1=double(x1); 
[r,r1]=size(x1); 
y1=fftshift(fft2(x1));
[r,r1]=size(y1); 
figure(1);
imshow(x1,[]);
title('原始的图像') ;
figure(2);
imshow(abs(y1),[0,250000]);
title('原始的图像频谱');
m=1:r; 
m1=1:r1; 
[m,m1]=meshgrid(m,m1);%生成网格空间 
noise=20.*imnoise(zeros(r,r1),'gaussian',0,0.008);%高斯噪声 
figure(3);  
subplot(1,2,1);
imshow(noise,[]);
title('白噪声') ;
a=double(21/100);%x方向的最大移动量为ra的0.21倍,可调 
b=double(21/100);%y方向的最大移动量为ca的0.21倍,可调 
t=double(88/100);%移动到最大所需的时间默认为0.88
f=ones(r,r1);   
g=(m-r/2-1).*a+(m1-r1/2-1).*b+eps;   
f=t.*sin(pi.*g).*exp(-j.*pi.*g)./(pi.*g);
h=f'.*y1; 
tu=ifft2(h);  
tu=abs(tu)+noise; 
subplot(1,2,2);
imshow(tu,[]);
title('退化的图像')%原图傅立叶变换估计值 
y1=h./f'; 
figure(4)
subplot(1,2,1);
imshow(abs(ifft2(y1)),[]);
title('逆滤波的结果');
h=fftshift(fft2(tu));
x=fftshift(fft2(noise));
K=x.*conj(x)./(y1.*conj(y1));%计算K值  
w=(f.*conj(f))'.*h./(f.*(f.*conj(f)+K'))'; 
weina=abs(ifft2(w)); 
subplot(1,2,2);
imshow(weina,[]);
title('维纳滤波的结果');

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

图象恢复——(逆滤波,维纳滤波) 的相关文章

  • Cesium教程(十九):Cesium粒子系统

    Cesium教程 十九 Cesium粒子系统 1 粒子系统 1 1 什么是粒子系统 Cesium粒子系统是一种模拟复杂物理效应的图形技术 是由小图像组成的集合 当他们在一起形成更复杂的 模糊 对象时 会形成火 烟 云或烟火等 1 2 初始粒

随机推荐

  • 将figma的设计图上传到蓝湖

    前言 将figma的设计图上传到蓝湖 实现步骤 1 把文件保存到本地 拿到一个 fig的文件 2 打开一个在线的 ui编辑软件 MasterGo 注 该软件跟figma一样 都可以在线编辑 好用 点个赞 注册个账户或者微信登录 3 导入我们
  • 如何将TXT文本编码变为GB2312

    如果你用记事本 另存为选择ansi就是gb2312 另外 如果你不确认文件是什么编码 推荐用Replace Pioneer 首先用Replace Pioneer检测出一个文件是什么编码 1 选择Tools gt Encoding Detec
  • RPC服务

    1 rpc是什么 RPC Remote Procedure Call 是远程过程调用 它是一种通过网络从远程计算机程序上请求服务 而不需要了解底层网络技术的协议 简单的理解是一个节点请求另一个节点提供的服务 RPC协议假定某些传输协议的存在
  • Latex报错_101719.bbl! perhaps a missing \item. immediate help.immediate help.l.24\end{thebibliography}

    IEEElatex模板 报这个错 可能是bib文件中文献重复 或者tex文件里面cite的文献不在bib文件里面造成的 要仔细检查bib文件 补充 IEEE使用bib应用参考文献的标准用法 去IEEE官网 IEEE Manuscript T
  • 入职后发现是超级「屎山」代码,怎么破?网友看不下去了...... 丨黑马头条

    大家好 我是播妞 昨天有位粉丝和我聊天 说他喜欢的一位女生说他是 技术宅 问我这是褒义还是贬义 思考了两秒我回答 如果妹子喜欢你就是褒义 不喜欢你就是贬义 看到文章的各位技术宅们 大家觉得是什么意思呢 又到了每周的黑马头条时间 最近的技术圈
  • 09 线性回归及矩阵运算

    09 线性回归及矩阵运算 线性回归 定义 通过一个或者多个自变量与因变量之间进行建模的回归分析 其中可以为一个或者多个自变量之间的线性组合 一元线性回归 涉及到的变量只有一个 多元线性回归 变量两个或以上 通用公式 h w w0 w1x1
  • kafka生产者幂等与事务

    目录 前言 幂等 事务 总结 参考资料 前言 Kafka 消息交付可靠性保障以及精确处理一次语义的实现 所谓的消息交付可靠性保障 是指 Kafka 对 Producer 和 Consumer 要处理的消息提供什么样的承诺 常见的承诺有以下三
  • 【杨氏矩阵】

    文章目录 前言 一 题目描述 二 题目解析 一 解法1 二分查找 二 解法2 Step wise线性搜索解法 总结 前言 大家好 我是熊猫 今天要和大家一起学习的是在杨氏矩阵中寻找数字的问题 一 题目描述 有一个数字矩阵 矩阵的每行从左到右
  • centos和ubantu安装软件的区别

    序言 安装软件时经常会遇到类似下面这张图 那这些不同的Linux版本有哪些区别 安装软件又应该注意哪些 本文将就以下问题展开讨论 Linux发行版本有哪些 Linux不同版本安装软件的方式和区别 说明 图中FreeBSD Oracle So
  • 小技巧:如何在R语言与excel/word之间进行复制粘贴

    原创 康哥 勤用统计 问 R语言中能进行类似电脑中control C control V的操作吗 现实数据处理过程中 经常需要进行R语言与Excel word等文件的数据传输 笨方法 是直接导出or导入整个文件 答 R语言也可以与Excel
  • [蓝桥杯][算法提高VIP]我们的征途是星辰大海

    题目 题目链接 题解 实现题 这也很基础 写代码的时候细心点就行 代码 include
  • 时序预测

    时序预测 MATLAB实现PSO BP时间序列预测 粒子群优化BP神经网络时间序列预测 多指标评价 目录 时序预测 MATLAB实现PSO BP时间序列预测 粒子群优化BP神经网络时间序列预测 多指标评价 效果一览 基本介绍 程序设计 参考
  • 动态路由协议

    动态路由协议 在各台路由器上 激活同一种协议后 路由器间沟通计算获取未知路由信息 最终生成路由表实现全网可达 静态协议的缺点 1 在中大型网络中配置量大 2 不能实时收敛 不能基于拓扑的变化而变化 动态协议的优点 1 在中大型的配置量较静态
  • CRM-统计分析--线索统计--新增线索数量折线图(接口实现)

    统计分析 线索统计 新增线索数量折线图 需求 统计出一段时间内的每一天 新增的线索数量 通过每天新增的线索数量和线索总数量 分析线上线下活动的执行情况 难度级别 B级 接口名 report salesStatistics 请求方式 get请
  • 个人免签支付云端监听免挂机支付宝收款

    GOGO支付 打不开了 貌似liangle 然后自己根据原理实现了一套 方案用来替代 gogo支付收款 云端监听免挂机 支付宝采用抓包技术云端调用官方接口 获取收款信息 监听效率非常高 而且很稳定 GOGO支付个人免签支付系统实现原理说明
  • 让flexmojos modulefiles支持通配符文件集,模块输出不带版本号且按包结构输出

    jar包下载 http download csdn net source 1879817 1 从http svn sonatype org flexmojos tags flexmojos 3 2 0 check out 源码 2 修改fl
  • 《Attention Is All You Need》

    论文地址 https arxiv org abs 1706 03762 谷歌于2017年发布论文 Attention Is All You Need 提出了一个只基于attention的结构来处理序列模型相关的问题 比如机器翻译 相比传统的
  • 什么是Base64

    一 什么是Base64 百度百科中对Base64有一个很好的解释 Base64是网络上最常见的用于传输8Bit字节码的编码方式之一 Base64就是一种基于64个可打印字符来表示二进制数据的方法 什么是 可打印字符 呢 为什么要用它来传输8
  • logback mdc日志跟踪

    1 简介 MDC Mapped Diagnostic Context 映射调试上下文 是 log4j logback及log4j2 提供的一种方便在多线程条件下记录日志的功能 MDC 可以看成是一个与当前线程绑定的哈希表 可以往其中添加键值
  • 图象恢复——(逆滤波,维纳滤波)

    目的 对获取图像在频域用高斯函数进行退化并叠加白噪声 对退化图像进行逆滤波和维纳滤波恢复 比较原始图像和恢复图像 对利用逆滤波和维纳滤波恢复方法恢复图像进行比较 一 基本原理 图像复原是一种客观的操作 通过使用退化现象的先验知识重建或恢复一