Modeling Filters and Whitening Filters
Colored and White Process
White Process
White Process,又称为White Noise(白噪声),其中white来源于白光,寓意着PSD的平坦分布,white noise指的就是在PSD上具有平坦分布(常数)的随机过程。PSD是auto-correlation的傅里叶变换,PSD上为常数意味着auto-correlation是一个位于零点上的脉冲函数。
回顾auto-correlation的定义:
$R_{xx}(\tau) = E\Big\{x(t+\tau)x(t)\Big\}$
Auto-correlation在零点上为脉冲,除此之外都是0,这表明了各个采样点之间是相互独立的,正是由于各采样点之间相互独立,才体现出了white noise的white这一特点。
理想的White noise要求PSD是一个常数,不过由于传输媒介以及有限的监测能力的关系,通常我们所得到的PSD都受限于某个带宽范围之内,因此如果一个process的PSD在监测范围(或者我们所感兴趣的频率范围)表现得平坦的话,就可以称该process为white noise。比如,如果一个音频的PSD在20~20000Hz内表现平坦的话,我们就可以称该音频为white noise。
i.i.d. process就是一个最简单white noise的例子。i.i.d. process中样本的PDF常见的有Uniform、Poisson、Gaussian等分布方式,如果PDF为Gaussian,则该process称为Gaussian white noise。
Colored Process
PSD表现得平坦的就是white noise,否则就是colored process。
Modeling Filter
输入为white process,输出为colored process的LTI系统被称为Modeling filter或者shaping filter。如果我们需要某个PSD为$S_{xx}(e^{j\Omega})$的process,可以通过设计一个LTI系统,并且对该系统输入mean为0的Bernoulli process(PSD为常数1)来得到,所设计的系统需要使得输出的process的PSD为$S_{xx}(e^{j\Omega})$。根据WSS Process在LTI系统中的性质,有
$\displaystyle{ H(e^{j\Omega}) = \sqrt{S_{xx}(e^{j\Omega})} }$
我们只需要对$H(e^{j\Omega})$进行傅里叶逆变换就可以得到所需LTI系统的脉冲响应$h[n]$。

其中也可能会出现一些特殊情况,比如说所需要的process的PSD,即$S_{xx}(e^{j\Omega})$中包含脉冲,这些情况下,PSD可以表示为脉冲PSD与非脉冲PSD之和,由于傅里叶变换的线性性质,LTI系统的脉冲响应最终也可以表示为脉冲PSD的脉冲响应与非脉冲PSD的脉冲响应之和。非脉冲PSD可以按照上面的步骤求解,而脉冲PSD主要分为两种情况:
- 脉冲在零点。那么脉冲PSD的脉冲响应是一个常数,该常数的大小与脉冲PSD的大小有关。
- 脉冲在$\Omega = \pm \Omega_0\neq 0$上。那么脉冲PSD的脉冲响应是一个余弦函数$Acos(\Omega_0 n+\Theta)$,其中$A$以及$\Theta$都与脉冲PSD的大小有关。

※这一段只是计算时需要,不算理解时的重点,如想加深了解,请参考常用序列的DTFT。
Whitening Filter
输入为colored process,输出为white process的LTI系统被称为Whitening filter。如下系统框图:

输入process为$x[n]$,其PSD为$\displaystyle{S_{xx}(e^{j\Omega}) = \mathcal{F}R_{xx}[m]}$,输出为白噪声,该白噪声的variance为$\sigma_{w}^2$,mean为0。
那么根据WSS Process在LTI系统中的性质,有
$\displaystyle{S_{ww}(e^{j\Omega}) = |H(e^{j\Omega})|^2S_{xx}(e^{j\Omega})}$
进一步可以推导出(详情请查看Reference的第二条链接)
$\displaystyle{|H(e^{j\Omega})|^2 = \frac{\sigma_w^2}{S_{xx}(e^{j\Omega})}}$
Reference:
Alan V. Oppenheim: Signals, Systems and Inference, Chapter 10:Power Spectral Density
Where does the delta function come from if we derive autocorrelation directly?
Modeling Filters and Whitening Filters的更多相关文章
- [转]ASP.NET Core Exception Filters and Resource Filters
本文转自:https://damienbod.com/2015/09/30/asp-net-5-exception-filters-and-resource-filters/ This article ...
- flex 4 Filters
<s:RectangularDropShadow id="dropShadow" blurX="10" blurY="10" alph ...
- Jersey(1.19.1) - Client API, Using filters
Filtering requests and responses can provide useful functionality that is hidden from the applicatio ...
- mvc Filters 过滤器
项目需要控制controller和action的访问权限. 看了下资料,发觉还是很方便的. 首先在mvc项目下创建一个文件夹 Filters, 然后在Filters中创建一个类.代码如下 namesp ...
- ASP.NET Core 2 学习笔记(十四)Filters
Filter是延续ASP.NET MVC的产物,同样保留了五种的Filter,分别是Authorization Filter.Resource Filter.Action Filter.Excepti ...
- Filters in ASP.NET Core (转自MSDN)
Filters in ASP.NET Core MVC allow you to run code before or after specific stages in the request pro ...
- Spring Security – security none, filters none, access permitAll
1.概述 Spring Security提供了几种将请求模式配置为不安全或允许所有访问的机制.取决于这些机制中的哪一种 - 这可能意味着根本不在该路径上运行安全过滤器链,或者运行过滤器链并允许访问 2 ...
- Filters.h各种信号恢复滤波器头文件
这篇文章有部分原理:http://blog.csdn.net/u013467442/article/details/41125473 代码下载地址:http://read.pudn.com/downl ...
- Filters in ASP.NET Core
Filters in ASP.NET Core allow code to be run before or after specific stages in the request processi ...
随机推荐
- object detection[faster rcnn]
这部分,写一写faster rcnn 0. faster rcnn 经过了rcnn,spp,fast rcnn,又到了faster rcnn,作者在对前面的模型回顾中发现,fast rcnn提出的ro ...
- Python 中的 10 个常见安全漏洞,以及如何避免(上)
简评:编写安全代码很困难,当你学习一个编程语言.模块或框架时,你会学习其使用方法. 在考虑安全性时,你需要考虑如何避免被滥用,Python 也不例外,即使在标准库中,也存在用于编写应用的不良实践.然而 ...
- Android如果有一个任意写入的漏洞,如何将写权限转成执行权限
这个题目我以为是考的怎么进行提权,结果原来是这样的: . DexClassLoader 动态载入应用可写入的 dex 可执行文件 . java.lang.Runtime.exec 方法执行应用可写入的 ...
- zookeepeer使用java api
一.引入依赖 <!-- https://mvnrepository.com/artifact/org.apache.zookeeper/zookeeper --> <dependen ...
- Java Statement PK PrepareStatement
PreparedStatement是用来执行SQL查询语句的API之一,Java提供了 Statement.PreparedStatement 和 CallableStatement三种方式来执行查询 ...
- 前端自动化 shell 脚本命令 与 shell-node 脚本命令 简单使用 之 es6 转译
(背景: 先用 babel 转译 es6 再 用 browserify 打包 模块化文件,来解决浏览器不支持模块化 )(Browserify是一个让node模块可以用在浏览器中的神奇工具) 今天折腾了 ...
- 亲测可以永久破解2018版本的pycharm
pycharm是很强大的开发工具,但是每次注册着实让人头疼.网络上很多注册码.注册服务器等等.但都只是一年或者不能用:为次有如下解决方案.亲测有效!!! 如果想让pycharm永久被激活,比如截止日到 ...
- stark组件之展示数据(查)
1.编辑按钮构建完成 2.构造表头,删除,checkbox,links编辑 3.代码+总结 1.编辑按钮构建完成 1.必备知识预习 第一个会打印5. 第二个输出alex alex是person ...
- 福州大学软件工程1816 | W班 第10次作业[软件工程实践总结]
作业链接 个人作业--软件工程实践总结 评分细则 本次由五个问题(每个十分)+创意照片(五分)+附加题(十分)组成 评分统计图 千帆竞发图 汇总成绩排名链接 汇总链接
- 【Python3练习题 012】 输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
ASCII 码表的对应值,知道 ord('a') 能将字符 'a' 转化为 ASCII 码表上对应的数值,就可以了.其中,数字 0-9 对应的码值为 48-57,大写字母 A-Z 对应 65-90,小 ...