我谈维纳(Wiener)复原滤波器

Rafael Gonzalez的《数字图像处理》中,图像复原这章内容几乎全错。上篇谈了图像去噪,这篇谈图像复原。

图像复原也称为盲解卷积,不处理点扩散函数(光学传递函数)的都不是图像复原。几何校正不属于图像复原,图像投影重建也不属于图像复原,都不能归入图像复原。由于图像复原是图像降质模型的求逆过程,其目的是使估计图像逼近原图像。以频域和空域的分类不合理,频域只是实现方式,最小均方误差复原和最小二乘复原都有频域和空域解。逆滤波可认为是最小二乘复原的频域解,假设噪声不存在的情况下推导逆滤波的思路不合理。维纳滤波是线性最小均方复原的频域解,它是最小均方误差估计,不是最小二乘估计。MATLAB 也认为维纳滤波是最小二乘解。最小均方估计和最小二乘估计是两个完全不同的概念,最小均方估计假设已知信号的分布,线性最小均方误差估计假设已知信号的一、二阶矩,最小二乘估计无须已知信号的统计知识。

维纳(Wiener)复原滤波器

Gonzalez的维纳(Wiener)复原滤波器问题很多,他的概念不清楚。
在这里插入图片描述
在这里插入图片描述
①不能随便假设信号或噪声的均值为零,Gonzalez总这样,在早期版本,在逆滤波中假设噪声为零,后来版本中就直接删除了这样的假设,那逻辑更不通了。逆滤波那里问题更大,谈到最小二乘估计再说。有些可以假设,不是想假设就假设。
②维纳滤波是线性最小均方复原的频域解,它是最小均方误差估计,不是最小二乘估计。
③功率信号不能做傅里叶变换。
④自相关的傅里叶变换是功率谱。 ∣ N ( u , v ) ∣ 2 |N(u,v)|^2 N(u,v)2是能量谱。

维纳(Wiener)复原滤波器的推导

维纳-霍普夫方程式

在这里插入图片描述
在这里插入图片描述

频域维纳复原滤波器

在这里插入图片描述
在这里插入图片描述

最后,维纳滤波的推导建立在零均值平稳随机过程的基础之上。当数据做了中心化处理(减去均值)之后,互相关等价于互协方差,互相关才能衡量两个随机变量是否相关。所以信号处理中通常信号都是做中心化处理的,所以也就不区分相关函数和协方差函数。因为两者的概念毕竟不一样,所以就会导致难以阅读。

假设随机过程是均值遍历的,在频域滤波之前需要减去整幅图像的均值,滤波之后再加回均值。MATLAB 图像处理工具箱中的维纳滤波函数有误,我们书中在二维码提供的代码中修正了相关部分。
在这里插入图片描述

写在后面的话

某人将维纳滤波放在了约束复原,人家维纳滤波是经典的无约束复原,错得离谱。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/60153.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

10款音频剪辑推荐!!你的剪辑好帮手!!

在如今的数据化浪潮中,工作已经采用了线上线下相结合。我的工作就需要借助一些剪辑工具,来实现我对音频工具的剪辑。我初次接触到音频剪辑也是因为工作需求,从起初我只是一个音频剪辑的小白,这些工具的协助。吸引着我。对于这些工…

Rocky、Almalinux、CentOS、Ubuntu和Debian系统初始化脚本v9版

Rocky、Almalinux、CentOS、Ubuntu和Debian系统初始化脚本 Shell脚本源码地址: Gitee:https://gitee.com/raymond9/shell Github:https://github.com/raymond999999/shell脚本可以去上面的Gitee或Github代码仓库拉取。 支持的功能和系统&am…

Scrapy搭配Selenium爬取豆瓣电影250排行榜动态网页数据

参考CSDN博客:https://blog.csdn.net/qq_43213783/article/details/113063557 2024年11月11日实现。 创建movie_douban爬虫项目: scrapy startproject movie_douban 进入spiders: cd movie_douban/movie_douban/spiders 创建doubanMovieSpi…

想定制RK3566/3568安卓11开机logo吗?触觉智能Purple Pi OH来教你

本文介绍瑞芯微RK3566/RK3568主板/开发板安卓Android11系统替换开机Logo的方法,使用触觉智能Purple Pi OH鸿蒙开发板演示,搭载了瑞芯微RK3566芯片,4核1.8Ghz1T算力NPU;类树莓派设计,Laval社区主荐,已适配全…

【AliCloud】ack + ack-secret-manager + kms 敏感数据安全存储

介绍 ack-secret-manager支持以Kubernetes Secret实例的形式向集群导入或同步KMS凭据信息,确保您集群内的应用能够安全地访问敏感信息。通过该组件,您可以实现密钥数据的自动更新,使应用负载通过文件系统挂载指定Secret实例来使用凭据信息&a…

网页设计平台:6个技术亮点

想要创建个人或商业网站来分享知识或推广商品吗?这篇文章将为你介绍6个免费的网页制作平台,帮助你即使没有编程基础也能快速、轻松地搭建出专业且引人注目的网站。让我们一起探索这些平台,发现它们的特色和优势。 即时设计 即时设计是一个云…

构造,CF 2029D - Cool Graph

目录 一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 二、解题报告 1、思路分析 2、复杂度 3、代码详解 一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 D - Cool Graph 二、解题报告 1、思路分析 我们对每条 <u, v>&…

uniapp—android原生插件开发(1环境准备)

本篇文章从实战角度出发&#xff0c;将UniApp集成新大陆PDA设备RFID的全过程分为四部曲&#xff0c;涵盖环境搭建、插件开发、AAR打包、项目引入和功能调试。通过这份教程&#xff0c;轻松应对安卓原生插件开发与打包需求&#xff01; 项目背景&#xff1a; UniApp集成新大陆P…

第2章2.3立项【硬件产品立项的核心内容】

硬件产品立项的核心内容 2.3 硬件产品立项的核心内容2.3.1 第一步&#xff1a;市场趋势判断2.3.2 第二步&#xff1a;竞争对手分析1.竞争对手识别2.根据竞争对手分析制定策略 2.3.3 第三步&#xff1a;客户分析2.3.4 第四步&#xff1a;产品定义2.3.5 第五步&#xff1a;开发执…

常见计算机网络知识整理(未完,整理中。。。)

TCP和UDP区别 TCP是面向连接的协议&#xff0c;发送数据前要先建立连接&#xff1b;UDP是无连接的协议&#xff0c;发送数据前不需要建立连接&#xff0c;是没有可靠性&#xff1b; TCP只支持点对点通信&#xff0c;UDP支持一对一、一对多、多对一、多对多&#xff1b; TCP是…

突破性能瓶颈,几个高性能Python网络框架,高效实现网络应用

引言 随着互联网和大数据时代的到来&#xff0c;高性能网络应用的需求日益增加。Python作为一种流行的编程语言&#xff0c;在高性能网络编程领域也具有广泛的应用。本文将深入探讨基于Python的几种高性能网络框架&#xff0c;分析它们各自的优势和适用场景&#xff0c;帮助开发…

中国智能网联汽车技术规程(C-ICAP-2024版)之基础行车辅助测试介绍及文档分享24年7月1号实施

C-ICAP(2024 版)对辅助驾驶测评单元(行车辅助项目、泊车辅助项目)、智慧座舱测评单元、隐私保护测评单元开展测试评价。 1 行车辅助评价项目 行车辅助项目包括基础行车辅助和领航行车辅助。其中,基础行车辅助部分为必测项,包括跟车能力、组合控制能力、紧急避险能力和驾…

一文详解MacOS使用VSCode搭建SpringBoot+Gradle开发环境

开发后端Java应用时&#xff0c;大多数开发者使用的是IntelliJ IDEA&#xff0c;但该软件是一个付费软件&#xff0c;所以希望可以使用开源且免费的VSCode来创建和开发后端项目。本文为本人在 Mac 上使用 Visual Studio Code&#xff08;简称 VSCode&#xff09;集成开发环境来…

创建者模式之【建造者模式】

建造者模式 概述 将一个复杂对象的构建与表示分离&#xff0c;使得同样的构建过程可以创建不同的表示。 分离了部件的构造(由Builder来负责)和装配(由Director负责)。 从而可以构造出复杂的对象。这个模式适用于&#xff1a;某个对象的构建过程复杂的情况。由于实现了构建和…

pyspark入门基础详细讲解

1.前言介绍 学习目标&#xff1a;了解什么是Speak、PySpark&#xff0c;了解为什么学习PySpark&#xff0c;了解课程是如何和大数据开发方向进行衔接 使用pyspark库所写出来的代码&#xff0c;既可以在电脑上简单运行&#xff0c;进行数据分析处理&#xff0c;又可以把代码无缝…

5. 类加载子系统

一、前言 前面我们了解了字节码文件的大致组成部分&#xff0c;那么 JVM 是如何加载 .class字节码文件的&#xff1f;加载到.class字节码文件后又做了哪些事情呢&#xff1f; 二、类加载子系统初步认识 首先类加载子系统作为虚拟机和外界的一个对接口&#xff0c;主要负责以…

AI 写作(六):核心技术与多元应用(6/10)

一、AI 写作的核心技术概述 AI 写作在当今数字化时代正发挥着越来越重要的作用。它不仅极大地提高了写作效率&#xff0c;还为不同领域带来了创新的可能性。 AI 写作的核心技术主要包括基于模板的文本生成和基于深度学习的文本生成。基于模板的文本生成通常依赖预先设定的模板…

显卡驱动版本过低怎么办?显卡驱动升级的方法

显卡驱动程序是计算机与显卡之间沟通的桥梁&#xff0c;它负责将操作系统发出的指令翻译成显卡可以理解的语言&#xff0c;从而确保图形显示的流畅与高效。当您遇到显卡驱动版本过低的问题时&#xff0c;升级驱动程序不仅能够提升电脑的图形处理能力&#xff0c;还能解决兼容性…

java导出word文件(手绘)

文章目录 代码细节效果图参考资料 代码细节 使用的hutool的WordUtil&#xff0c;WordUtil对poi进行封装&#xff0c;但是这一块的官方封装的很少&#xff0c;很多细节都没有。代码中是常见的绘制段落&#xff0c;标题、表格等常用api Word07Writer writer WordUtil.getWriter(…

UML的另一个主角——用例图

顺序图和类图已经出过单集&#xff0c;本贴要分享的是用例图。 类图https://blog.csdn.net/jsl123x/article/details/143526286?spm1001.2014.3001.5501顺序图https://jslhyh32.blog.csdn.net/article/details/134350587 目录 一.系统 二.参与者 1.主要参与者 2.次要参与…