我是信号处理的新手。我知道离散卷积运算用于FIR滤波器:在卷积公式y[n] = x[n] * h[n] = sum(x[k] x h[n-k])
中,右侧显然没有y[n]
。通过这个卷积运算的定义,我是否正确地假设它一般是用于IIR滤波器的而不是,因为IIR滤波器可以在右侧引用?用于IIR滤波器的卷积操作是?
回答
虽然你的符号有点奇怪,但你对IIR滤波器的陈述是正确的。 IIR滤波器使用差分方程实现,而不是卷积。
您可能会感兴趣的这篇博客,让你开始:http://blog.bjornroche.com/2012/08/basic-audio-eqs.html
信号处理的一个基本结论是,任何LTI滤波器(FIR或IIR)可以表示为输入与冲动的卷积响应:
y[n] = x[n] * h[n]
现在,FIR滤波器(或“全零滤波器”)是h[n]
已界定支撑,即,它具有非零系数的有限(因此而得名)数的过滤器。因此,输出可以表示输入的(有限)线性组合,或有限卷积。相比之下,IIR具有无限系数,因此输出仍然是输入的卷积(或线性组合),但是具有无限项。当然,如果必须以数字方式实现卷积,除非有一个有限数量的项,否则不能明确地进行。
一个简单的IIR例子是y[n] = y[n-1]/2 + x[n]
(1)
此IIR滤波器的脉冲响应是一个递减的指数:h[n]= (1/2)^n (n>0)
,这意味着输入输出可以表示为
y[n] = x[n] + x[n-1]/2 + x[n-2]/4 + x[n-3]/8 + ....
(2)
这也可以通过检查获得。现在,第一种形式(1)是递归的,并且是数值实现过滤器的自然方式(不是唯一的)。第二种形式(2)是非递归的(但是具有无限的项)并且显式地显示了卷积y[n] = x[n] * h[n]
;这在概念上很重要,但是,当然,这不是一个可行的实施方式。
感谢您的解释。所以对我原来的问题(本贴的标题)的简短回答基本上是“不”,对吧?由于IIR滤波器需要无限系数,因此卷积算子不能用于实际实现;相反,您需要将其作为差异等式来实现。这是一个正确的解释吗? – stackoverflowuser2010
@ stackoverflowuser2010:是的,基本上。有关详情,请参阅http://en.wikipedia.org/wiki/Digital_filter#Filter_realization或http://web.cecs.pdx.edu/~mperkows/CAPSTONES/DSP1/ELG6163_IIR.pdf – leonbloy
- 1. 级联系统,解卷积,IIR滤波器
- 2. Matlab IIR滤波器
- 3. IIR滤波器的优化
- 4. 两个卷积滤波器的组合
- 5. 空间卷积与频率卷积图像的逆滤波器
- 6. 滤波器卷积反射边界
- 7. 卷积矩阵锐化滤波器
- 8. 递归:用`IIR滤波器scipy.lfilter`
- 9. 计算iir滤波器的w系数
- 10. 频域滤波器vs IIR和FIR滤波器?
- 11. 火花斯卡拉RDD [双] IIR滤波(顺序反馈滤波操作)
- 12. Tensorflow中是否有卷积函数来应用Sobel滤波器?
- 13. CUDA中的FIR滤波器(作为1D卷积)
- 14. Theano中的卷积是否旋转滤波器?
- 15. cudnn卷积滤波器的形状/顺序是什么?
- 16. 用于IIR过滤器的C++库
- 17. 应用高斯滤波器内核后的卷积
- 18. MATLAB:使用带有IIR滤波器的FFT/IFFT在频域中进行滤波
- 19. 为什么卷积滤波器在卷积神经网络中翻转?
- 20. 在CUDA中使用滤波器进行卷积,阵列
- 21. 使用C++ AMP优化二维卷积滤波器
- 22. 使用CUDA与索贝尔滤波器进行卷积
- 23. 使用滤波器和二维卷积发现符号变化
- 24. 如何设置卷积神经网络的滤波器系数
- 25. 如何提取在卷积层中学习到的滤波器?
- 26. 卷积神经网络中滤波器的可视化
- 27. 就地卷积滤波器的正确性?
- 28. cv :: filter2D和Gabor滤波器上独立卷积的差别
- 29. 如何解释TensorFlow的卷积滤波器和步进参数?
- 30. 减少卷积神经网络中的滤波器大小
您可能想在http://dsp.stackexchange.com/上提问这样的问题,而不是在这里。 –