我是信號處理的新手。我知道離散卷積運算用於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/上提問這樣的問題,而不是在這裏。 –