信号处理——滤波器
2017-03-15 18:08
218 查看
滤波器有四种表示形式:差分方程、脉冲函数、传输函数和频率响应。其中前两个是定义在实数域中,后两个定义在复数域中。
我们由滤波器的差分形式退出滤波器的频率响应形式。假设有滤波器的差分方程为:
ΣNk=0aky[n−k]=ΣMk=0bkx[n−k]
对每一项进行离散傅里叶变换,得到:
a0Y(Ω)+a1e−jΩY(Ω)+a2e−j2ΩY(Ω)+⋯+aNe−jNΩY(Ω)=b0X(Ω)+b1e−jΩX(Ω)+b2e−j2ΩX(Ω)+⋯+bMe−jMX(Ω)
得到:
H(Ω)=Y(Ω)X(Ω)=b0+b1e−jΩ+b2e−j2Ω+⋯+bMe−jMa0+a1e−jΩ+a2e−j2Ω+⋯+aNe−jNΩ
称H(Ω)为滤波器的频率响应。H(Ω)是复数,可以用极坐标形式表示H(Ω)=|H(Ω)|ejθ(Ω),|H(Ω)表示滤波器在数字频率Ω处的增益,θ(Ω)是相位差。
正弦输入:
现在把余弦(或正弦)信号(频域上的)写成简写形式,方便在频域中计算。比如输入x[n]=Acos(nΩ0+θX)的X(Ω)可以记作A|θX。假设在频率Ω0下,频率响应的增益为H,相位差为θ,那么频率响应可以简写成H|θ,那么DFT的相乘现在很容易计算:
Y(Ω)=H(Ω)X(Ω)=(H|θ)(A|θX)=HA | θ+θX
而且很容易再转换到实数域上:
y[n]=HAcos(nΩ0+θ+θX)
注意,所有的幅度响应都是周期为2π的偶函数;所有的相位响应都是周期为2π的奇函数。所以两个响应图的自变量范围只需要在[0,π]上就可以表示所有情况。
滤波器的形状由幅度响应给出,幅度响应说明了滤波器的类型,如低通、高通、带通、带阻。
但是给定滤波器的频率响应H(Ω),我们是没有办法画出它的幅度响应曲线的。那怎么判断滤波器的类型呢?可以通过极零点位置确定滤波器的形状。假设滤波器的传输函数为:
H(z)=K(z−z0)(z−p0)(z−p1)
其中K是增益,zj是零点,pj是极点,那么滤波器的形状为:
|H(Ω)|=K|ejΩ−z0||ejΩ−p0||ejΩ−p1|=K×(半径为1的上半圆上Ω对应的点到z0的距离)(半径为1的上半圆上Ω对应的点到p0的距离)(半径为1的上半圆上Ω对应的点到p1的距离)
当极点和零点比较靠近单位圆时,会导致幅值大小的剧烈变化,标明滤波器的选择性比较好。
差分方程
脉冲函数
传输函数
频率响应
首先看一下离散傅里叶变换的定义。我们由滤波器的差分形式退出滤波器的频率响应形式。假设有滤波器的差分方程为:
ΣNk=0aky[n−k]=ΣMk=0bkx[n−k]
对每一项进行离散傅里叶变换,得到:
a0Y(Ω)+a1e−jΩY(Ω)+a2e−j2ΩY(Ω)+⋯+aNe−jNΩY(Ω)=b0X(Ω)+b1e−jΩX(Ω)+b2e−j2ΩX(Ω)+⋯+bMe−jMX(Ω)
得到:
H(Ω)=Y(Ω)X(Ω)=b0+b1e−jΩ+b2e−j2Ω+⋯+bMe−jMa0+a1e−jΩ+a2e−j2Ω+⋯+aNe−jNΩ
称H(Ω)为滤波器的频率响应。H(Ω)是复数,可以用极坐标形式表示H(Ω)=|H(Ω)|ejθ(Ω),|H(Ω)表示滤波器在数字频率Ω处的增益,θ(Ω)是相位差。
正弦输入:
现在把余弦(或正弦)信号(频域上的)写成简写形式,方便在频域中计算。比如输入x[n]=Acos(nΩ0+θX)的X(Ω)可以记作A|θX。假设在频率Ω0下,频率响应的增益为H,相位差为θ,那么频率响应可以简写成H|θ,那么DFT的相乘现在很容易计算:
Y(Ω)=H(Ω)X(Ω)=(H|θ)(A|θX)=HA | θ+θX
而且很容易再转换到实数域上:
y[n]=HAcos(nΩ0+θ+θX)
幅度响应和相位响应
幅度响应是增益|H(Ω)|和Ω之间的关系图,相位响应是相位差θ(Ω)和|Omega之间的关系图。频率响应可以用幅度响应和相位响应表示。注意,所有的幅度响应都是周期为2π的偶函数;所有的相位响应都是周期为2π的奇函数。所以两个响应图的自变量范围只需要在[0,π]上就可以表示所有情况。
滤波器的形状由幅度响应给出,幅度响应说明了滤波器的类型,如低通、高通、带通、带阻。
但是给定滤波器的频率响应H(Ω),我们是没有办法画出它的幅度响应曲线的。那怎么判断滤波器的类型呢?可以通过极零点位置确定滤波器的形状。假设滤波器的传输函数为:
H(z)=K(z−z0)(z−p0)(z−p1)
其中K是增益,zj是零点,pj是极点,那么滤波器的形状为:
|H(Ω)|=K|ejΩ−z0||ejΩ−p0||ejΩ−p1|=K×(半径为1的上半圆上Ω对应的点到z0的距离)(半径为1的上半圆上Ω对应的点到p0的距离)(半径为1的上半圆上Ω对应的点到p1的距离)
当极点和零点比较靠近单位圆时,会导致幅值大小的剧烈变化,标明滤波器的选择性比较好。
相关文章推荐
- 信号处理中的滤波器的阶数和谐波的理解
- 信号处理小结(2):滤波器
- 信号处理理解及滤波器&窗函数原理
- sigsuspend 用于等待信号处理程序设置全局变量
- 系统信号处理机制
- 基于信号处理的在线云评测+社区系统( 5)
- UNIX环境编程学习笔记(25)——信号处理进阶学习之 sigaction 函数
- 关于处理语音信号的python库 librosa的安装
- [信号处理小结系列1]信号和信息
- Signal信号处理
- 理解信号处理中的卷积
- 信号处理算法方向的一些SCI杂志(他人经验)
- 信号处理---可重入函数
- ZeroMQ学习 (六) 信号中断的处理
- 一个无聊的自动提款机程序---最终版——进行信号的处理
- linux 信号处理机制简介
- Java 工具(jmap,jstack)在linux上的源码分析(二)信号处理
- ch04:信号处理
- 关于信号函数处理过程中对信号的屏蔽理解。
- matlab自带滤波器函数小结(图像处理)