1. 數字濾波器的經常使用幾種形式:html
1)自適應數字濾波器(DF)git
經常使用的自適應濾波技術有:最小均方(LMS)自適應濾波器、遞推最小二乘(RLS)濾波器格型濾波器和無限衝激響應(IIR)濾波器等。github
2)複數數字濾波器算法
在輸入信號爲窄帶信號處理系統中,常採用複數 DF 技術。函數
3)多維數字濾波器.net
在圖像處理、地震、石油勘探的數據處理中都用到多維DF(經常使用是二維 DF)。htm
2. 常規的數字濾波算法blog
1) 限幅濾波隊列
限幅濾波的方法是考慮到被測參數在兩次採樣時間間隔內,通常最大變化的增量 ,老是在必定的範圍內,若是先後兩次採樣的實際增量 ,則認爲是正常的,不然認爲是干擾形成的,則用上次的採樣代替本次採樣。由此獲得限幅濾波的算法算式:get
2) 限速濾波
3)中值濾波
中值濾波能有效地克服因偶然因素引發的波動干擾。對溫度、液位等變化緩慢的被測參數採用此辦法能收到良好的濾波效果。但對於流量、速度等快速變化的參數通常不宜採用中值濾波法。
4) 算術平均濾波
算術平均值對週期性干擾具備良好的抑制做用,對脈衝干擾的抑制不夠理想。
5)去極值平均濾波
算術平均濾波不能消除脈衝干擾引發測量值的誤差,中值濾波因只採樣點,只有很窄的濾波範圍。去極值平均濾波防脈衝干擾的算術平均濾波是把上述兩種濾波方法結合起來,作到既防止脈衝干擾的影響,又能使週期性干擾獲得平滑處理。具體的算法是對連續採集的多個採樣用排隊的方法按大小順序排列,而後除去兩端的最大值和最小值,剔除明顯脈衝干擾的影響,取剩餘的採樣進行平均,所得結果做爲本次濾波輸出。
這種方法兼有算術平均濾波和中值濾波的優勢,對快變參數和慢變參數都有抑制干擾做用,有利於提升採樣的真實性。但應注意到,若採樣點數太少,則趨於中值濾波的做用。若爲了加快測量計算速度,也不能太大。常取爲,即爲四取二再取平均值法。它具備計算方便、速度快、存儲量小等特色。
6)滑動平均濾波
以上介紹的各類平均濾波算法有一個共同點,即每取得一個有效採樣值必須連續進行若干次採樣,當採樣速度較慢如雙積分型A/D轉換或目標參數變化較快時,系統的實時性得不到保障。滑動平均濾波算法只採樣一次,將這一次採樣值和過去的若干次採樣值一塊兒求平均,獲得的有效採樣值便可投入使用。若是取n個採樣值求平均,RAM中必須開闢n個數據的暫存區。每新採集一個數據便存人暫存區,同時去掉一個最老的數據,保持這n個數據始終是最新的數據。這種數據存放方式能夠用環型隊列結構方便地實現,每存入一個新數據便自動衝去一個最老的數據。
滑動平均濾波法對週期性干擾有良好的抑制做用,平滑度高,靈敏度低但對偶然出現的脈衝性干擾的抑制做用差,不易消除因爲脈衝干擾引發的採樣值的誤差。所以,它不適用於脈衝干擾比較嚴重的場合,而適用於高頻振盪系統。經過觀察不一樣值下滑動平均的輸出響應來選取值,以便既減小佔有時間,又能達到最好的濾波效果。
2. 信號分析基本原理:
1)採樣定理
2)變換:離散傅里葉變換IDFT/快速傅里葉變換FFT
3)譜分析:指的是把時間域的各類動態信號經過變換變換到頻率域進行分析,譜分析通常泛指:
頻譜分析:包括幅值譜和相位譜。
功率譜分析:包括自譜和互譜。
頻率相應函數分析:系統輸出信號頻譜與輸入信號頻譜之比。
相干函數分析:系統輸入信號與輸出信號之間譜的相關程度。
倒頻譜分析:頻譜自己再進行Fourier變換而獲得新的譜,包括功率倒頻譜和復倒頻譜。
4)隨機信號的統計特徵
均值:表明隨機信號變化的中心趨勢,即穩定份量或直流份量;
均方值:反應信號的強度或功率;
方差:反映的是信號幅值相對於均值的分散程度.
3.數字濾波的相關開源庫(C++版)
1.) SP++ 3.0
SP++ (Signal Processing in C++) 是一個關於信號處理與數值計算的開源C++程序庫,該庫提供了信號處理與數值計算中經常使用算法的C++實現。(開源博客+源代碼)
博客連接:https://my.oschina.net/zmjerry/blog/13049
Github連接:https://github.com/ceze/tspl
2.) eDSP
Github連接: https://github.com/mohabouje/eDSP
3.) Armadillo
連接: http://arma.sourceforge.net/docs.html#part_sigproc
4.) libdspl-2.0
Github連接:https://github.com/Dsplib/libdspl-2.0#libdspl-20-free-digital-signal-processing-algorithm-library
5.) IT++
連接:http://itpp.sourceforge.net/4.3.1/modules.html