Wiener Filtering
文章目录
- 基本
- 滤波的推导
- 特别的情况
- 特别的例子
Signals, Systems and Inference, Chapter 11: Wiener Filtering (mit.edu)
基本
在图像处理的时候, 遇到了这个维纳滤波, 其推导的公式不是很理解, 于是上网查了查, 并做个简单的总结.
符号 | 说明 |
---|---|
x [ k ] ] x[k]] x[k]] | 观测信号 x x x的第k个元素 |
y ^ \hat{y} y^ | 为 y y y的一个估计 |
v v v | 噪声信号 |
e [ k ] e[k] e[k] | 误差, 为 e [ k ] = y ^ [ k ] − y [ k ] e[k]=\hat{y}[k] - y[k] e[k]=y^[k]−y[k] |
R x y ( i , j ) R_{xy}(i, j) Rxy(i,j) | 相关系数: E { x [ n − i ] y [ n − j ] } E\{x[n-i]y[n-j]\} E{x[n−i]y[n−j]} |
S x y S_{xy} Sxy | 傅里叶变换: F { R x y } \mathcal{F} \{R_{xy}\} F{Rxy} |
基本的假设:
y [ k ] y[k] y[k]服从wide-sense stationary (WSS), 即
- E [ y [ k ] ] = E [ y [ 0 ] ] E[y[k]] = E[y[0]] E[y[k]]=E[y[0]];
- R y y ( i , j ) = R y y [ j − i ] R_{yy}(i, j) = R_{yy}[j-i] Ryy(i,j)=Ryy[j−i].
维纳滤波可以应用于很多场景, 但是这里只讨论下面的去噪的情形:
x [ n ] = y [ n ] + v [ n ] , x[n] = y[n] + v[n], x[n]=y[n]+v[n],
且假设 y , v y, v y,v之间相互独立, E [ v ] = 0 E[v]=0 E[v]=0.
我们的目标是找到一个滤波 h h h, 得到一个估计
y ^ [ n ] = h ⋆ x [ n ] , \hat{y}[n] = h\star x [n], y^[n]=h⋆x[n],
使得下式最小
E [ e 2 [ n ] ] . E[e^2[n]]. E[e2[n]].
维纳滤波需要分情况讨论, 这里只关注离散的情形, 包括
- non-causal: y ^ [ n ] = ∑ k = − ∞ + ∞ h [ k ] y [ n − k ] \hat{y}[n] = \sum_{k=-\infty}^{+\infty} h[k]y[n-k] y^[n]=∑k=−∞+∞h[k]y[n−k];
- FIR: y ^ [ n ] = ∑ k = 0 N − 1 h [ k ] y [ n − k ] \hat{y}[n] = \sum_{k=0}^{N-1} h[k]y[n-k] y^[n]=∑k=0N−1h[k]y[n−k].
causal的情况这里就不写了.
滤波的推导
自然地, 寻找驻点:
∂ E [ e 2 [ n ] ] ∂ h [ m ] = 2 E [ e [ n ] ∂ e [ n ] ∂ h [ m ] ] = 2 E [ e [ n ] x [ n − m ] ] = 2 ( h ⋆ R x x [ m ] − R y x [ m ] ) = 0. \begin{array}{ll} \frac{\partial E[e^2[n]]}{\partial h[m]} &=2E[e[n]\frac{\partial e[n]}{\partial h[m]}] \\ &=2E[e[n]x[n-m]] \\ &=2(h\star R_{xx}[m] -R_{yx}[m]) \\ &=0. \end{array} ∂h[m]∂E[e2[n]]=2E[e[n]∂h[m]∂e[n]]=2E[e[n]x[n−m]]=2(h⋆Rxx[m]−Ryx[m])=0.
于是必须满足
h ⋆ R x x [ m ] = R y x [ m ] . (1) \tag{1} h \star R_{xx}[m] = R_{yx}[m]. h⋆Rxx[m]=Ryx[m].(1)
相应的在频率域内存在(假设DFT存在, 参考文献用的z变换, 这个不是特别了解):
H [ u ] S x x [ u ] = S y x [ u ] . (2) \tag{2} H[u] S_{xx}[u] = S_{yx}[u]. H[u]Sxx[u]=Syx[u].(2)
在FIR情况下, 可以通过(1)推导出一个线性方程组从而求解, non-causal下可用(2)推导出结果.
注: H [ u ] H[u] H[u]用了[]是为了保持一致, 在non-causal情况下 H ( z ) H(z) H(z)可能更加妥当.
故最优解为:
H = S y x / S x x . (*) \tag{*} H = S_{yx} / S_{xx}. H=Syx/Sxx.(*)
特别的情况
进一步, 由于
S x x = F { R x x } = F { E [ ( y [ n ] + v [ n ] ) ( y [ n − m ] + v [ n − m ] ) ] } = S y y + S v v , S_{xx} = \mathcal{F}\{R_{xx}\} = \mathcal{F}\{E[(y[n]+v[n])(y[n-m]+v[n-m])]\} =S_{yy} + S_{vv}, Sxx=F{Rxx}=F{E[(y[n]+v[n])(y[n−m]+v[n−m])]}=Syy+Svv,
最后一步成立的原因是 E v = 0 E{v}=0 Ev=0, 且 v , y v, y v,y相互独立.
同时
S y y = S y x . S_{yy} = S_{yx}. Syy=Syx.
所以:
H = S y y S y y + S v v . (3) \tag{3} H = \frac{S_{yy}}{S_{yy} + S_{vv}}. H=Syy+SvvSyy.(3)
特别的例子
在图像数字处理中, 给出的这样的情形(FIR):
x [ n ] = g ⋆ y [ n ] + v [ n ] , x[n] = g \star y [n] + v[n], x[n]=g⋆y[n]+v[n],
记 r [ n ] = g ⋆ y [ n ] r[n] = g \star y [n] r[n]=g⋆y[n],
则
S r r [ u ] = F { R r r [ m ] } [ u ] = F { E [ r [ n ] r [ n − m ] ] } [ u ] = E [ r [ n ] F { r [ n − m ] } ] [ u ] = E [ r [ n ] G [ − u ] Y [ − u ] e − j 2 π n u / N ] = G [ − u ] E [ r [ n ] Y [ − u ] e − j 2 π n u / N ] = G [ − u ] F { R r y [ m ] } [ u ] = G [ − u ] F { E [ r [ n + m ] y [ n ] ] } [ u ] = G [ − u ] E [ F { r [ n + m ] } [ u ] y [ n ] ] = G [ − u ] E [ G [ u ] Y [ u ] e − j 2 π n u / N y [ n ] ] = G [ − u ] G [ u ] F { R y y [ m ] } [ u ] = G [ − u ] G [ u ] S y y [ u ] \begin{aligned} S_{rr}[u] &= \mathcal{F}\{R_{rr}[m]\}[u] \\ &= \mathcal{F}\{E[r[n] r[n-m]]\}[u] \\ &= E[r[n] \mathcal{F}\{r[n-m]\}][u] \\ &= E[r[n] G[-u] Y[-u] e^{-j2\pi nu/N}] \\ &= G[-u] E[r[n]Y[-u] e^{-j2\pi nu/N}] \\ &= G[-u] \mathcal{F}\{R_{ry}[m]\}[u] \\ &= G[-u] \mathcal{F}\{E[r[n+m]y[n]]\}[u] \\ &= G[-u] E[\mathcal{F}\{r[n+m]\}[u]y[n]] \\ &= G[-u] E[G[u]Y[u]e^{-j2\pi nu/N}y[n]] \\ &= G[-u]G[u] \mathcal{F}\{R_{yy}[m]\}[u] \\ &= G[-u]G[u] S_{yy}[u] \end{aligned} Srr[u]=F{Rrr[m]}[u]=F{E[r[n]r[n−m]]}[u]=E[r[n]F{r[n−m]}][u]=E[r[n]G[−u]Y[−u]e−j2πnu/N]=G[−u]E[r[n]Y[−u]e−j2πnu/N]=G[−u]F{Rry[m]}[u]=G[−u]F{E[r[n+m]y[n]]}[u]=G[−u]E[F{r[n+m]}[u]y[n]]=G[−u]E[G[u]Y[u]e−j2πnu/Ny[n]]=G[−u]G[u]F{Ryy[m]}[u]=G[−u]G[u]Syy[u]
由于
S y x = S y r = G [ − u ] S y y [ u ] , S_{yx} = S_{yr} = G[-u]S_{yy}[u], Syx=Syr=G[−u]Syy[u],
证明和上面是类似的,
S x x = S r r + S v v , S_{xx} = S_{rr} + S_{vv}, Sxx=Srr+Svv,
于是
H [ u ] = 1 G [ u ] 1 1 + S v v [ u ] / ( G [ − u ] G [ u ] S y y [ u ] ) . H[u] = \frac{1}{G[u]}\frac{1}{1 + S_{vv}[u] / (G[-u]G[u]S_{yy}[u])}. H[u]=G[u]11+Svv[u]/(G[−u]G[u]Syy[u])1.
当 g g g为实的时候, 有 G [ − u ] G [ u ] = ∣ G [ u ] ∣ 2 G[-u]G[u]=|G[u]|^2 G[−u]G[u]=∣G[u]∣2, 在数字图像处理书中, 给出的公式中:
S y y [ u ] = ∣ F [ u ] ∣ 2 , S v v [ u ] = ∣ V [ u ] ∣ 2 , S_{yy}[u] = |F[u]|^2, S_{vv}[u] = |V[u]|^2, Syy[u]=∣F[u]∣2,Svv[u]=∣V[u]∣2,
个人觉得是这里的期望 E E E用
R y y [ m ] = ∑ n = 0 N − 1 y [ n ] y [ n − m ] , R_{yy}[m] = \sum_{n=0}^{N-1} y[n]y[n-m], Ryy[m]=n=0∑N−1y[n]y[n−m],
代替了,
所以
F { R y y [ m ] } = F ∗ ( u ) F ( u ) = ∣ F ( u ) ∣ 2 , \mathcal{F}\{R_{yy}[m]\} = F^*(u)F(u) = |F(u)|^2, F{Ryy[m]}=F∗(u)F(u)=∣F(u)∣2,
这里假设 y [ n ] ∈ R y[n] \in \mathbb{R} y[n]∈R.
S v v [ u ] S_{vv}[u] Svv[u]也是类似的.
Wiener Filtering相关推荐
- VVC/VTM: 自适应环路滤波(ALF, Adaptive Loop Filtering)中维纳滤波(Wiener Filtering)的公式推导
0 前言 自适应环路滤波(ALF)并不是在 H.266/VVC 标准制定过程中才被提出来的技术,实际上其早在 H.265/HEVC 标准制定时就基本确定了现有形式的雏形,只是由于当时硬件算力的限制未能 ...
- Wiener Filter
假设分别有两个WSS process:$x[n]$,$y[n]$,这两个process之间存在某种关系,并且我们也了解这种关系.现在我们手头上有process $x[n]$,目的是要设计一个LTI系统 ...
- 「技术综述」一文道尽传统图像降噪方法
https://www.toutiao.com/a6713171323893318151/ 作者 | 黄小邪/言有三 编辑 | 黄小邪/言有三 图像预处理算法的好坏直接关系到后续图像处理的效果,如图像 ...
- Reproducible Research in Computational Science
Reproducible Research in Computational Science from: http://www.csee.wvu.edu/~xinl/source.html " ...
- 数字图像处理:第十三章 图象复原
第十三章 图象复原 目录 1. 引言 2. 数学模型 3. 维纳滤波(Wiener Filtering) 作业 1. 引言 图象复原是早期图象处理的主要内容之一,目的在于消除或减轻 ...
- 基于matlab 论文知网,基于MATLAB的校园图像处理与分析
内容介绍 原文档由会员 jiji888 发布 基于MATLAB的校园图像处理与分析 2.13万字 我自己原创的毕业设计,今年最新的,仅在本站独家提交,大家放心使用 摘要 随着计算机科学技术的不断发展以 ...
- 图像 理想低通滤波_图像处理之滤波(下)
[toc]目录 一.常规滤波 低通 高通 带通 带阻 二.非局部均值滤波 三.维纳滤波 四.卡尔曼滤波 前言 所谓滤波,其实就是从混合在一起的诸多信号中提取出所需要的信号. 信号的分类: 确定型信号, ...
- 【MATLAB图像处理】图像复原
理论: 图像复原:图像复原是图像处理的主要内容之一,所谓图像复原就是指去除或减轻在图像获取过程中发生的图像质量的下降.成像过程中的图像"退化",是指由于成像系统各种因素的影响,使得 ...
- 个人网页、博客、课程--不断更新
论文和相关代码 :https://paperswithcode.com/ Caiming Xiong http://www.stat.ucla.edu/~caiming/ 论文,代码,博客 肖小粤的啵 ...
最新文章
- Nginx 禁止某 IP 访问
- 皮一皮:人生就像编程,总有防不胜防的bug会被人发现...
- 前端学习(2518):生命周期钩子
- Platform Invoke and Marshaling Data: [1/3]
- 计算机导论布尔运算,计算机导论第2讲-符号化-计算化-自动化.pdf
- php能转换音频采样率吗,音频采样频率怎么设置-音频采样率转换软件下载
- Linux命令Man解释:PPPD(8):点对点daemon协议
- Golang 实现【链表反转】
- Sublime Text 3快捷键大全
- linux下svn常用命令集锦
- Android数据库hibernate框架
- python飞机大战概要设计说明书_飞机大战概要设计文档 4改
- java代码读写者问题_一整套Java线上故障排查技巧,爱了!
- Atitit 企业常见100个职能 组织职能 社会职能 政府职能 家庭职能 团队职能
- fastreport按条件查询_查询代价的
- docker nginx 反向代理
- java字符串分割方法
- 【论文学习】《One-shot Voice Conversion by Separating Speaker and Content Representations with IN》
- DHT11 温湿度传感器
- Ubuntu16.04(14.04) 安装网卡驱动教程
热门文章
- AI之NLP:2020年6月21日北京智源大会演讲分享之15:15-15:40黄萱菁教授《自然语言处理中的表示学习》
- [NCTF2019]Fake XML cookbook 1
- imx6u开发板导入实际应用(一)熟悉开发板,建立调试环境
- 对于offsetWidth,offsetHeight,offsetLeft,offsetTop的理解
- Java MD5和SHA256等常用加密算法
- Nginx proxy反向代理 缓存处理流程
- 20230308-二维数组的长度
- 带你简化理解Spring 基于注解配置的原理
- 基于android的旅游app毕设,安卓157旅游记忆(app+server)
- 硬件版--苹果ios免越狱脚本实现硬件方案