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 ...
随机推荐
- [程序员的业余生活]一周读完《高效能人士的七个习惯》Day1:这是不是一碗鸡汤?
提出问题 今天突然想聊聊最近对职场的一些感悟. 这段时间,小端一直在思考一个问题:作为一个程序员,怎么才能成为团队的核心? 还记得刚入职场那几年,小端一直觉得,技术过硬,经验丰富,敢打敢拼,就是答案. ...
- pycharm 常用快捷键操作
#最重要的快捷键 1. ctrl+shift+A:万能命令行 2. shift两次:查看资源文件 #新建工程第一步操作 1. module设置把空包分层去掉,compact empty middle ...
- Python-random模块-59
random模块: 随机数模块 >>> import random #随机小数 >>> random.random() # 大于0且小于1之间的小数 0.76643 ...
- Python_练习题_49
# 3.用map来处理字符串列表,把列表中所有人都变成sb,比方alex_sb name=['alex','wupeiqi','yuanhao','nezha'] def func(item): re ...
- ajax成功后XML 解析错误:格式不佳
就是Ajax发送请求后,意图回显数据时会出现这个错误,貌似chrome浏览器不会报用火狐能看到: 可能的原因有两个,就是后台应该返回一个json格式的字符串,但是你返回的是浏览器看不懂的,也就是返回格 ...
- bug总结
1.被除数为0 2.Java 空指针异常(java.lang.NullPointerException) 即对象没有进行实例化便进行了使用.实例化的意义,就是将对象实例的地址赋值给对象符号. 比如 S ...
- openstack-KVM安装与使用
一.KVM安装 1.安装条件 VT-x BIOS Intel9R) Virtualization Tech [Enabled] cat /proc/cpuinfo | grep -e vmx -e n ...
- 搭建RISC-V错误记录
错误:riscv64-unknown-elf-gcc: Command not found 解决办法:将riscv64-unknown-elf-gcc文件拷贝到根目录的/bin目录下. 原因是make ...
- Is there a way to avoid undeployment memory leaks in Tomcat?
tomcat 项目部署问题 - yshy - 博客园http://www.cnblogs.com/yshyee/p/3973293.html jsp - tomcat - their classes ...
- [转帖]Docker 清理占用的磁盘空间
Docker(二十七)-Docker 清理占用的磁盘空间 https://www.cnblogs.com/zhuochong/p/10076599.html docker system docker ...