又见FFT

两个问题

先提几个问题:

  1. 滤波器中的数字频率是怎么表示的?
  2. 传递函数中的零点、极点的物理意义是什么?

这两个问题是数字信号处理中的基本问题,但是真正理解还是不容易。

  1. 设连续时间信号为x(t)=Acos(Ωt+α),对信号进行采样得到离散时间信号x[n]=x(nTs)=Acos(ΩTsn+α),那么定义数字频率w=ΩTs=2πF0Ts,定义采样频率为Fs=1/Ts,则数字频率改写为w=2πF0/Fs。即:数字频率是采样后得到的离散信号的角频率。

  2. 传递函数中的零点表示对某个频率的信号,输出响应为0。极点表示对某个频率的信号,输出为无穷大。这可以用在下列应用中:
    一个0~6KHZ的信号中有一个1.5K左右的窄带干扰信号,设采样频率为12K。由1可知数字频率为2π*1.5/12=π/4。那么只需要对传递函数设置零点Z1=ejw=e(jπ/4)和Z1=ejw=e(-jπ/4)就可以滤除这个干扰。

而又有多少人能清晰地捋清这些“知识”的脉络和逻辑。自己的体会是,大学教学丢弃了那些真正值得去追寻的真知,而在招式上锦上添花。真正的现实也是这样。可悲。不过批判解决不了任何问题,只有建设才是个人能做出的最大努力。

这次看一个语音处理算法又遇到了FFT(快速离散傅里叶变换),决定这次把他的前因后果弄得一清二楚。

对序列X[n]进行傅里叶变换。把它看做由基数序列和偶数序列构成。Xeven=DFT{x[0],x[2],…,x[N-2]}。Xodd=DFT{x[1],x[3],…,x[N-1]},而由于复数的性质(e^-j2π/4)=-1,刚好序列的一部分可以用另一部分的因子进行代替。
这就导致了蝶形算子的出现。

又两个问题

  1. 如何理解蝶形算子
    2个DFT点就可以构成一个蝶形算子。至于蝶形算子的具体形式,请参见[2]。

  2. 如何倒位排序
    如取8个点

000 0——000 0

001 1——100 4

010 2——010 2

011 3——110 6

100 4——001 1

101 5——101 5

110 6 ——011 3

111 7——111 7

Reference

[1].http://www.dspguide.com/ch18/2.htm (大牛的书)
[2].http://zhangzhenyuan163.blog.163.com/blog/static/8581938920132284816197

你可能感兴趣的:(又见FFT)