導航:首頁 > 源碼編譯 > 濾波演算法影響

濾波演算法影響

發布時間:2023-01-08 00:05:18

1. 什麼是濾波演算法

卡爾曼濾波器(Kalman Filter)是一個最優化自回歸數據處理演算法(optimal recursive data processing algorithm)。對於解決很大部分的問題,他是最優,效率最高甚至是最有用的。他的廣泛應用已經超過30年,包括機器人導航,控制,感測器數據融合甚至在軍事方面的雷達系統以及導彈追蹤等等。近年來更被應用於計算機圖像處理,例如頭臉識別,圖像分割,圖像邊緣檢測等等。

最佳線性濾波理論起源於40年代美國科學家Wiener和前蘇聯科學家Kолмогоров等人的研究工作,後人統稱為維納濾波理論。從理論上說,維納濾波的最大缺點是必須用到無限過去的數據,不適用於實時處理。為了克服這一缺點,60年代Kalman把狀態空間模型引入濾波理論,並導出了一套遞推估計演算法,後人稱之為卡爾曼濾波理論。卡爾曼濾波是以最小均方誤差為估計的最佳准則,來尋求一套遞推估計的演算法,其基本思想是:採用信號與雜訊的狀態空間模型,利用前一時刻地估計值和現時刻的觀測值來更新對狀態變數的估計,求出現時刻的估計值。它適合於實時處理和計算機運算。

現設線性時變系統的離散狀態防城和觀測方程為:

X(k) = F(k,k-1)·X(k-1)+T(k,k-1)·U(k-1)

Y(k) = H(k)·X(k)+N(k)

其中

X(k)和Y(k)分別是k時刻的狀態矢量和觀測矢量

F(k,k-1)為狀態轉移矩陣

U(k)為k時刻動態雜訊

T(k,k-1)為系統控制矩陣

H(k)為k時刻觀測矩陣

N(k)為k時刻觀測雜訊

則卡爾曼濾波的演算法流程為:

預估計X(k)^= F(k,k-1)·X(k-1)

計算預估計協方差矩陣
C(k)^=F(k,k-1)×C(k)×F(k,k-1)'+T(k,k-1)×Q(k)×T(k,k-1)'
Q(k) = U(k)×U(k)'

計算卡爾曼增益矩陣
K(k) = C(k)^×H(k)'×[H(k)×C(k)^×H(k)'+R(k)]^(-1)
R(k) = N(k)×N(k)'

更新估計
X(k)~=X(k)^+K(k)×[Y(k)-H(k)×X(k)^]

計算更新後估計協防差矩陣
C(k)~ = [I-K(k)×H(k)]×C(k)^×[I-K(k)×H(k)]'+K(k)×R(k)×K(k)'

X(k+1) = X(k)~
C(k+1) = C(k)~

2. 擴展卡爾曼濾波(EKF)演算法詳細推導及模擬(Matlab)

姓名:王柯禕

學號:20021110373T

轉自 :https://blog.csdn.net/gangdanerya/article/details/105105611

【嵌牛導讀】介紹擴展卡爾曼濾波(EKF)演算法的詳細推導,局限性和MATLAB模擬。

【嵌牛鼻子】擴展卡爾曼濾波(EKF)

【嵌牛正文】

擴展卡爾曼濾波演算法 是解決非線性狀態估計問題最為直接的一種處理方法,盡管EKF不是最精確的」最優「濾波器,但在過去的幾十年成功地應用到許多非線性系統中。所以在學習非線性濾波問題時應該先從EKF開始。

EKF演算法是將非線性函數進行泰勒展開,然後省略高階項,保留展開項的一階項,以此來實現非線性函數線性化,最後通過卡爾曼濾波演算法近似計算系統的狀態估計值和方差估計值。

一、EKF演算法詳細推導

【注】EKF推導參考的是黃蔚的博士論文「CKF及魯棒濾波在飛行器姿態估計中的應用研究」,論文中EKF,UKF和CKF等演算法講解的都很詳細,值得一看。

我們把KF與EKF演算法拿出來對比可以發現:

二、EKF演算法局限性:

該演算法線性化會引入階段誤差從而導致濾波精度下降,同時當初始狀態誤差較大或系統模型非線性程度較高時,濾波精度會受到嚴重影響甚至發散。

需要計算雅克比矩陣,復雜,計算量大,影響系統的實時性,還會導致EKF演算法的數值穩定性差。

當系統存在模型失配,量測干擾,量測丟失,量測延遲或狀態突變等復雜情況時,EKF演算法魯棒性差。

三、Matlab模擬:

clear all;clc;   close all;

tf = 50; 

Q = 10;w=sqrt(Q)*randn(1,tf); 

R = 1;v=sqrt(R)*randn(1,tf);

P =eye(1);

x=zeros(1,tf);

Xnew=zeros(1,tf);

x(1,1)=0.1; 

Xnew(1,1)=x(1,1);

z=zeros(1,tf);

z(1)=x(1,1)^2/20+v(1);

zjian=zeros(1,tf);

zjian(1,1)=z(1);

for k = 2 : tf

%%%%%%%%%%%%%%%模擬系統%%%%%%%%%%%%%%%

    x(:,k) = 0.5 * x(:,k-1) + (2.5 * x(:,k-1) / (1 + x(:,k-1).^2)) + 8 * cos(1.2*(k-1)) + w(k-1); 

    z(k) = x(:,k).^2 / 20 + v(k);

%%%%%%%%%%%%%%%EKF開始%%%%%%%%%%%%%%%

    Xpre = 0.5*Xnew(:,k-1)+ 2.5*Xnew(:,k-1)/(1+Xnew(:,k-1).^2) + 8 * cos(1.2*(k-1));  

    zjian =Xpre.^2/20;

    F = 0.5 + 2.5 * (1-Xnew.^2)/((1+Xnew.^2).^2);

    H = Xpre/10;    

    PP=F*P*F'+Q; 

    Kk=PP*H'*inv(H*PP*H'+R);

    Xnew(k)=Xpre+Kk*(z(k)-zjian);

    P=PP-Kk*H*PP;

end

  t = 2 : tf;  

 figure;   plot(t,x(1,t),'b',t,Xnew(1,t),'r*');  legend('真實值','EKF估計值');

模擬結果:

3. 采樣頻率對四點加權平均濾波有什麼影響

四點加權平均濾波演算法是對各次采樣輸入值取不同的比例後再相加.一般,次數愈靠 後,控制系數(比例)取愈大,這樣,最近一次采樣輸入值影響愈大.

4. 數學濾波演算法可以處理三個坐標點嗎

濾波演算法可以處理三個坐標點的。濾波在三坐標中的應用:
1、粗糙度對測量的影響:測量點也在圖中被放大獲取到大量的點,表面粗度被認為是,引起「噪點」的原因。
2、探針的機械濾波:
選擇探針直徑-使用探針測量工件會由於工件表面結構的影響產生機械濾波。
由於探針直徑過大精細的工件表面的形狀無法捕捉,因此可看作是機械低通濾波。
3、三坐標的濾波:
用同樣參數進行低通濾波的掃描線。
如下圖所示,描繪出的圖形差異並不明顯。

4、2 RC濾波:不再使用圓度測量最初的標准化濾波器,但是已被現代濾波計算所取代。
5、高斯濾波:坐標測量技術中標准濾波演算法。此濾波方法為標准演算法被廣泛使用。他使用高斯曲線加權計算測量點得到新的輪廓。
6、樣條濾波:基於濾波方程的增強濾波方法(多項式計算),樣條濾波更合乎標准,也更優於高斯濾波但並不是標准濾波方法。
(4)濾波演算法影響擴展閱讀:
圖像濾波是一種非常重要的圖像處理技術,現在大火的卷積神經網路其實也是濾波的一種,都是用卷積核去提取圖像的特徵模式。不過,傳統的濾波,使用的卷積核是固定的參數,是由經驗非常豐富的人去手動設計的,也稱為手工特徵。而卷積神經網路的卷積核參數初始時未知的,根據不同的任務由數據和神經網路反向傳播演算法去學習得到的參數,更能適應於不同的任務。
自適應中值濾波
中值濾波器是一種常用的非線性濾波器,其基本原理是:選擇待處理像素的一個鄰域中各像素值的中值來代替待處理的像素。主要功能使某像素的灰度值與周圍領域內的像素比較接近,從而消除一些孤立的雜訊點,所以中值濾波器能夠很好的消除椒鹽雜訊。不僅如此,中值濾波器在消除雜訊的同時,還能有效的保護圖像的邊界信息,不會對圖像造成很大的模糊(相比於均值濾波器)。
中值濾波器的效果受濾波窗口尺寸的影響較大,在消除雜訊和保護圖像的細節存在著矛盾:濾波窗口較小,則能很好的保護圖像中的某些細節,但對雜訊的過濾效果就不是很好,因為實際中的雜訊不可能只佔一個像素位置;反之,窗口尺寸較大有較好的雜訊過濾效果,但是會對圖像造成一定的模糊。另外,根據中值濾波器原理,如果在濾波窗口內的雜訊點的個數大於整個窗口內非雜訊像素的個數,則中值濾波就不能很好的過濾掉雜訊。

5. 無味卡爾曼濾波與擴展卡爾曼濾波的具體區別,以及演算法

EKF是對非線性系統模型(方程)進行的線性化近似,以利用KF演算法進行濾波估計。而UKF是對狀態的概率統計近似,即設計少量的σ點,由σ點經由非線性函數的傳播,計算出隨機向量一、二階統計特性的傳播,對於高斯雜訊的假設,UKF能夠達到三階估計精度,而EKF只能達到二階精度,但其演算法仍然是利用KF的演算法。
現在國內外的文獻大都是對UKF演算法的改進和應用進行論述,但對演算法的穩定性等沒有系統的論述。我了解得沈陽自動化所做的這方面的工作很多。

6. 濾波演算法總結

1、限幅濾波法(又稱程序判斷濾波法)

2、中位值濾波法

3、算術平均濾波法

4、遞推平均濾波法(又稱滑動平均濾波法)

5、中位值平均濾波法(又稱防脈沖干擾平均濾波法)

6、限幅平均濾波法

7、一階滯後濾波法

8、加權遞推平均濾波法

9、消抖濾波法

10、限幅消抖濾波法

程序默認對int類型數據進行濾波,如需要對其他類型進行濾波,只需要把程序中所有int替換成long、float或者double即可。

原文

7. 卡爾曼濾波演算法的功能是什麼

卡爾曼濾波是用來進行數據濾波用的,就是把含雜訊的數據進行處理之後得出相對真值。卡爾曼濾波也可進行系統辨識。卡爾曼濾波一種利用線性系統狀態方程,通過系統輸入輸出觀測數據,對系統狀態進行最優估計的演算法。由於觀測數據中包括系統中的雜訊和干擾的影響,所以最優估計也可看作是濾波過程。

8. 突變值對卡爾曼濾波演算法的影響

突變值對卡爾曼濾波演算法的影響會逐步變小。卡爾曼濾波經過多次的迭代後會逐漸縮小原始值誤差,輸出結果也更接近真實的值。

9. 減少雜訊的匹配濾波演算法

(1)傳統匹配濾波演算法

Rickett et al.(2001)給出了匹配濾波簡要的公式及運算元長度設計標准,本節給出了更為詳細的匹配 濾波公式,並給出推導公式基本條件和結果。

設同一地區不同時期Y1,Y2得到的地震數據分別為GY1(t),GY2(t),取Y1年份的地震記錄為參

考地震道,使Y2年份相應的地震記錄與之匹配。選取歸一化運算元p使得目標泛函:

海上時移地震油藏監測技術

極小。最終得到關於求解匹配濾波器{P(m),m=1,2,…,L}的L個方程的方程組:

海上時移地震油藏監測技術

為意義更明確,對上面的公式進一步簡化,令

海上時移地震油藏監測技術

上兩式中:RY2Y2(m-n)為時間延遲為m-n的時期Y2地震記錄在設計窗口中的自相關;RY1Y2(n)為時間延遲為n的時期Y1與時期Y2地震記錄在設計窗口中的互相關,於是方程(4.8)可以進一步寫成:

海上時移地震油藏監測技術

求解方程組(4.11)得到匹配濾波器運算元{P(m),m=1,2,…,L},用

海上時移地震油藏監測技術

校正相應的地震剖面。通過實際數據處理結果驗證了上述推導的正確性和方法的有效性。

方程(4.11)寫成矩陣形式:

海上時移地震油藏監測技術

式中:M為時期Y2地震記錄在設計窗口中的自相關序列組成的Toeplitz矩陣,R為時期Y1與時期Y2地 震記錄在設計窗口中的互相關序列向量。求解方程(4.13)可採用Levinson遞推演算法,計算效率高。

為了減少噪音的影響,通常引入阻尼項,方程(4.13)變為

海上時移地震油藏監測技術

式中:μ為很小的數,通常為可設為0.01或0.001。

實際應用中,可以發現式(4.13)受雜訊的影響很大,不穩定。雖然加入阻尼項後結果有所改善,但 如何選取合適阻尼因子又是一個難題。為此推導新的匹配濾波表達形式,尋求更穩健的求解方法。

(2)新匹配濾波公式

同樣設同一地區不同時期Y1,Y2得到的地震數據分別為GY1(t),GY2(t),取Y1年份的地震記錄 為參考地震道,使Y2年份相應的地震記錄與之匹配。則匹配過程可描述為

海上時移地震油藏監測技術

其中M為GY2組成的褶積矩陣。如果設地震道的采樣點數為n,設計濾波器f長度為m,M則為(2×n-1)×m矩陣,為保持矩陣維數相同,一種方法是將GY1後面補零為(2×n-1)×1向量,另一種方法是取 矩陣M的前n×m項。如果採用第一種方法,可以驗證得到的公式與(4.13)式相同。在此採用後一種方 法,得到新的匹配濾波方程。只要設計濾波器f足夠長,總能滿足能量差e(f)最小,根據范數定義:

海上時移地震油藏監測技術

求解能量差e(f)最小問題可轉化為

海上時移地震油藏監測技術

即對濾波因子向量求導,最終可歸結為求解線性方程:

海上時移地震油藏監測技術

如果記A=MTM,b=MTGY1,方程(4.18)轉化為

海上時移地震油藏監測技術

(4.19)式形式上與(4.13)式類似,內容不同,不再是Toeplitz矩陣,因此不能應用Levinson遞推演算法求解。因此,引入奇異值分解方法求解方程(4.19)。

(3)基於奇異值分解的匹配濾波演算法

矩陣的奇異值分解,是矩陣計算中一套很有用的技術。它可以有效地處理系數矩陣是奇異的或者接 近奇異的方程組。對於矩陣A,如果A∈Rm×n,並且A的秩為r,總有

海上時移地震油藏監測技術

其中, V為正交陣。 ,並且 為A 的奇異值。

公式(4.20)即為矩陣A的奇異值分解,根據正交矩陣的性質:

海上時移地震油藏監測技術

很容易表示出矩陣A的逆矩陣

海上時移地震油藏監測技術

將式(4.22)帶入式(4.19)中,得到濾波因子的表達式為

海上時移地震油藏監測技術

實際計算中,當A是奇異陣出現奇異值,或A接近奇異或病態矩陣時,(4.23)式的計算過程就無法進行。這時可將出現的奇異項 (σk是零,或者數值很小)簡單地替換成零或很小的常數,通過這種方法能得 到方程穩定的解。

對於實際含有雜訊的信號,信號能量主要分布在奇異值大的分量上,因此去除小奇異值同時能消除 雜訊影響。通常可選取某一能量百分比的奇異值作為去除的閾值,以這種方式既能克服A接近奇異或病 態矩陣的影響,又能減小雜訊的影響,使濾波因子穩健。

(4)模擬數據驗證

模擬得到一組存在時間、振幅、頻率、相位差異的信號,作為基測線與監測測線地震道,對監測測 線地震道加入不同比例的隨機雜訊,組成驗正演算法有效性的數據體,如圖4.10所示。分別用傳統的匹配 濾波方法和重新推導的基於奇異值分解的匹配濾波方法進行匹配處理,比較匹配後基測線與監測測線振 幅差異,結果見圖4.11和圖4.12。可以看出,傳統匹配濾波公式的計算結果受雜訊的影響很大,而基於 奇異值分解的匹配濾波方法具有很好的抗雜訊能力。

圖4.10 模擬地震記錄(從上至下依次為加入0%,10%,20%,30%雜訊的信號)

圖4.11 傳統方法匹配結果

圖4.12 基於奇異值分解方法匹配結果

(5)實際數據驗證

選擇一塊同一地區兩次不同時間測得的兩條二維測線;選取油藏上方時間長度為300ms的窗口作為 濾波因子設計窗口,並以抽取其中139道構成驗證互均衡演算法的數據體(圖4.13,圖4.14)。分別採用 傳統匹配濾波公式與基於奇異值分解的匹配濾波兩種方法進行校正。比較差異剖面的平均能量,結果見 圖4.15。從圖中可知基於奇異值分解的匹配濾波方法具有更好的抗雜訊能力,匹配誤差遠小於傳統匹配 濾波。

圖4.13 某地區時間1地震記錄

圖4.14 某地區時間2地震記錄

圖4.15 兩種匹配方法結果誤差能量對比圖

本節推導了新的匹配濾波方程,提出基於奇異值分解的匹配濾波演算法,理論和實際數據都驗證了該 方法有效性。這里從計算精度上比較兩種匹配濾波演算法,實際處理時移地震數據時還要考慮計算時間,此時尋求快速的奇異值分解演算法是一種提高處理效率的方式,另外針對不同信噪比,將傳統匹配濾波算 法與基於奇異值分解的匹配濾波演算法結合應用同樣是一種很好的方式。總之,基於奇異值分解的匹配濾 波提高了匹配精度,有利於為時移地震解釋提供一致性更好的地震資料。

閱讀全文

與濾波演算法影響相關的資料

熱點內容
phpsae源碼 瀏覽:853
為什麼安卓手機一直要許可權 瀏覽:227
匯編程序的偽指令 瀏覽:803
蘋果7怎麼更新app 瀏覽:318
c語言常用演算法pdf 瀏覽:960
編程如何讓畫面動起來 瀏覽:865
大齡女程序員未來發展 瀏覽:976
數學書籍pdf 瀏覽:506
加密門禁卡寫入成功無法開門 瀏覽:464
齒輪傳動pdf 瀏覽:52
alpinelinux 瀏覽:150
手機端app的掃碼功能在哪裡 瀏覽:227
少兒編程中小班英語教案 瀏覽:452
鎖屏密碼加密手機怎麼解除 瀏覽:205
linuxlostfound 瀏覽:135
征途伺服器ip地址 瀏覽:330
git提交代碼命令行 瀏覽:165
什麼叫瀏覽器伺服器結構 瀏覽:157
於謙聊天哪個app 瀏覽:449
小鵬汽車nlp演算法工程師薪資 瀏覽:881