一種減少觀測更新誤差的方法、裝置及介質與流程
2024-04-13 06:14:05 1
1.本技術涉及衛星定位技術領域,特別是涉及一種減少觀測更新誤差的方法、裝置及介質。
背景技術:
2.目前,基於全球導航衛星系統(global navigation satellite system,gnss)、慣性導航系統(inertial navigation system,ins)和輪速計的組合定位方式得到越來越多的應用。其中,gnss採用了ppp-rtk(precise point positioning
–
real time kinematic)算法,這是基於狀態域的一種高精度定位技術,可做到在世界範圍內提供快速收斂的高精度定位服務。
3.然而,ppp-rtk算法也受衛星信號的影響。在城市峽谷、林蔭路段、高架橋下等複雜場景環境下,或接收機所在車輛處於停車狀態時,容易出現非固定解和異常值的情況。但是ppp-rtk算法所能提供的標準差(standard deviation,std)不能很好的體現出這些異常值,以至於影響組合導航算法的性能。
4.鑑於上述問題,如何實現ppp-rtk輸入數據異常值的過濾,減少觀測更新誤差,提升定位精準度,是該領域技術人員亟待解決的問題。
技術實現要素:
5.本技術的目的是提供一種減少觀測更新誤差的方法、裝置及介質,以實現ppp-rtk輸入數據異常值的過濾,減少觀測更新誤差,提升定位精準度。
6.為解決上述技術問題,本技術提供一種減少觀測更新誤差的方法,包括:
7.獲取當前曆元的ppp-rtk的觀測值,並分別獲取所述當前曆元的誤差數據和所述當前曆元前連續的預設數量曆元的所述誤差數據;其中,各所述誤差數據所在的所述曆元中存在所述觀測值;
8.對各所述誤差數據進行加權處理,並根據加權後的各所述誤差數據獲取濾波器的輸出值和濾波器權值;
9.獲取所述濾波器權值的迭代公式;根據所述觀測值、所述輸出值和所述迭代公式獲取迭代誤差信號,以用於通過所述迭代誤差信號對所述濾波器進行調整。
10.優選地,所述根據加權後的各所述誤差數據獲取濾波器的輸出值和濾波器權值包括:
11.將加權後的各所述誤差數據作為輸入,通過濾波器輸出公式獲取所述濾波器的所述輸出值和所述濾波器權值;
12.所述濾波器輸出公式包括:
[0013][0014]
其中,y(n)為所述輸出值,wi(n)為所述誤差數據的加權值,x(n-1)為所述誤差數
據,x(n)為加權後的所述誤差數據,w(n)為所述濾波器權值,n=0,1,2,...,n-1,n為正整數。
[0015]
優選地,所述獲取所述濾波器權值的迭代公式包括:
[0016]
w(n+1)=w(n)+2μx(n)e(n);
[0017]
其中,w(n)為所述濾波器權值,μ為濾波器學習速率,x(n)為加權後的所述誤差數據,e(n)為所述迭代誤差信號,n=0,1,2,...,n-1,n為正整數。
[0018]
優選地,所述分別獲取所述當前曆元的誤差數據和所述當前曆元前連續的預設數量曆元的所述誤差數據包括:
[0019]
分別獲取所述當前曆元的狀態域改正數據和所述當前曆元前連續的預設數量曆元的所述狀態域改正數據。
[0020]
優選地,所述通過所述迭代誤差信號對所述濾波器進行調整包括:
[0021]
獲取組合導航卡爾曼濾波的預測誤差值;
[0022]
根據所述迭代誤差信號和所述預測誤差值獲取觀測新息;
[0023]
根據所述觀測新息獲取卡爾曼濾波的觀測噪聲協方差,以用於通過所述觀測噪聲協方差調整所述濾波器。
[0024]
優選地,在所述根據所述觀測值、所述輸出值和所述迭代公式獲取迭代誤差信號之後,還包括:
[0025]
輸出所述迭代誤差信號獲取成功的提示信息。
[0026]
優選地,在所述通過所述迭代誤差信號對所述濾波器進行調整之後,還包括:
[0027]
生成所述濾波器的調整日誌。
[0028]
為解決上述技術問題,本技術還提供一種減少觀測更新誤差的裝置,包括:
[0029]
第一獲取模塊,用於獲取當前曆元的ppp-rtk的觀測值,並分別獲取所述當前曆元的誤差數據和所述當前曆元前連續的預設數量曆元的所述誤差數據;其中,各所述誤差數據所在的所述曆元中存在所述觀測值;
[0030]
第二獲取模塊,用於對各所述誤差數據進行加權處理,並根據加權後的各所述誤差數據獲取濾波器的輸出值和濾波器權值;
[0031]
第三獲取模塊,用於獲取所述濾波器權值的迭代公式;
[0032]
第四獲取模塊,用於根據所述觀測值、所述輸出值和所述迭代公式獲取迭代誤差信號,以用於通過所述迭代誤差信號對所述濾波器進行調整。
[0033]
為解決上述技術問題,本技術還提供另一種減少觀測更新誤差的裝置,包括:
[0034]
存儲器,用於存儲電腦程式;
[0035]
處理器,用於執行所述電腦程式時實現上述的減少觀測更新誤差的方法步驟。
[0036]
為解決上述技術問題,本技術還提供一種計算機可讀存儲介質,所述計算機可讀存儲介質上存儲有電腦程式,所述電腦程式被處理器執行時實現上述的減少觀測更新誤差的方法的步驟。
[0037]
本技術所提供的減少觀測更新誤差的方法,通過獲取當前曆元的ppp-rtk的觀測值,並分別獲取當前曆元的誤差數據和當前曆元前連續的預設數量曆元的誤差數據;其中,各誤差數據所在的曆元中存在觀測值;對各誤差數據進行加權處理,並根據加權後的各誤差數據獲取濾波器的輸出值和濾波器權值;獲取濾波器權值的迭代公式;根據觀測值、輸出
值和迭代公式獲取迭代誤差信號,以用於通過迭代誤差信號對濾波器進行調整。由此可知,上述方案中濾波器濾波不依賴ppp-rtk算法輸出的精度參數,只以輸入觀測量和誤差數據作為參考信號輸入;一旦出現異常值,濾波器可以跟蹤這種變化,重新調節參數,減少觀測更新誤差,提升定位精準度,使濾波器性能重新達到最優。
[0038]
此外,本技術實施例還提供了一種減少觀測更新誤差的裝置及介質,效果同上。
附圖說明
[0039]
為了更清楚地說明本技術實施例,下面將對實施例中所需要使用的附圖做簡單的介紹,顯而易見地,下面描述中的附圖僅僅是本技術的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
[0040]
圖1為本技術實施例提供的組合定位融合濾波的示意圖;
[0041]
圖2為本技術實施例提供的一種減少觀測更新誤差的方法的流程圖;
[0042]
圖3為本技術實施例提供的自適應濾波的原理圖;
[0043]
圖4為本技術實施例提供的一種減少觀測更新誤差的裝置的示意圖;
[0044]
圖5為本技術實施例提供的另一種減少觀測更新誤差的裝置的示意圖。
具體實施方式
[0045]
下面將結合本技術實施例中的附圖,對本技術實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本技術一部分實施例,而不是全部實施例。基於本技術中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下,所獲得的所有其他實施例,都屬於本技術保護範圍。
[0046]
本技術的核心是提供一種減少觀測更新誤差的方法、裝置及介質。
[0047]
為了使本技術領域的人員更好地理解本技術方案,下面結合附圖和具體實施方式對本技術作進一步的詳細說明。
[0048]
目前,gnss能夠以較低成本提供連續、精確的自主定位,且gnss位置計算不會產生累積誤差。但gnss的定位性能不僅與衛星定位接收機的性能相關,還與gnss空間段、地面控制段及信號傳播路徑中的環境因素有關,尤其是衛星定位接收機的周邊環境。在相對開闊的環境中,gnss定位精度相對較高,而在遮擋較為嚴重的環境中,gnss定位精度將會降低甚至無法進行定位。慣性導航系統ins同樣能夠實現低成本的短時高精度自主定位,但其長時間下的位置推算也易受累積誤差和漂移誤差影響,從而產生較大誤差。
[0049]
為此,將gnss輸出信息與ins傳感器輸出信息進行融合,以gnss無累積誤差的優勢來補償ins易受累積誤差的劣勢,以ins受環境影響小的優勢彌補gnss易受環境影響的劣勢,從而以優勢互補的方式實現低成本、高精度的定位。同時,由於接收機位於長隧道內時gnss完全失鎖,長時間單獨使用ins定位,其累計誤差也會增大,此時需要藉助輪速計等輔助信息對ins誤差進行校正。
[0050]
以上基於gnss/ins/輪速計的組合定位方式需要藉助一個濾波器來實現不同信號特徵的提取與處理,且在實際應用中不同傳感器輸出頻率不同,因此在融合濾波前需要對gnss和ins二者進行時間校準,並將融合輸出的結果作為最終輸出。圖1為本技術實施例提供的組合定位融合濾波的示意圖。濾波結構如圖1所示。
[0051]
需要注意的是,gnss採用ppp-rtk算法,它吸收了實時動態載波相位差分技術(real-time kinematic,rtk)與精密單點定位(precise point position,ppp)的優點,克服了傳統rtk技術網際網路無線通信的局限以及ppp收斂時間過長的障礙,在實際應用中也同時具備二者的優勢,可做到在世界範圍內提供快速收斂的高精度定位服務。然而,ppp-rtk算法也受衛星信號的影響,在城市峽谷、林蔭路段、高架橋下等複雜場景環境下或處於停車狀態時,容易出現非固定解和異常值。但是算法所能提供的標準差不能很好的體現出這些異常值,以至於影響組合導航算法的性能,因此本技術實施例提供了一種觀測更新誤差的方法,能夠實現對ppp-rtk輸入數據的異常值過濾。圖2為本技術實施例提供的一種減少觀測更新誤差的方法的流程圖。如圖2所示,方法包括:
[0052]
s10:獲取當前曆元的ppp-rtk的觀測值,並分別獲取當前曆元的誤差數據和當前曆元前連續的預設數量曆元的誤差數據。
[0053]
其中,各誤差數據所在的曆元中存在觀測值。
[0054]
具體地,在當前曆元收到由ppp-rtk傳輸的觀測值後,將其作為濾波器的期望值矢量d(n);同時獲取當前曆元的誤差數據,以及當前曆元前預設數量的曆元的誤差數據。
[0055]
需要注意的是,獲取誤差數據的各曆元中均存在觀測值。本實施例中對於預設數量不做限制,根據具體的實施情況而定。此外,誤差數據的來源可為觀測新息、gnss的標準差或ppp-rtk的狀態域改正(state space representation,ssr)數據,根據具體的實施情況而定。作為一種優選的實施例,誤差數據採用ssr數據,具體包含軌道鐘差、碼偏差、相位偏差、格網電離層誤差和對流層誤差。
[0056]
s11:對各誤差數據進行加權處理,並根據加權後的各誤差數據獲取濾波器的輸出值和濾波器權值。
[0057]
圖3為本技術實施例提供的自適應濾波的原理圖。如圖3所示,在得到ssr數據後,進一步對各誤差數據進行加權處理,以作為濾波器的輸入信號矢量x(n),從而根據加權後的各誤差數據獲取濾波器的輸出值和濾波器權值。
[0058]
作為一種優選的實施例,將加權後的各誤差數據作為輸入,通過濾波器輸出公式獲取濾波器的輸出值和濾波器權值。濾波器輸出公式如下式所示:
[0059][0060]
其中,y(n)為輸出值,wi(n)為誤差數據的加權值,x(n-1)為誤差數據,x(n)為加權後的誤差數據,w(n)為濾波器權值,n=0,1,2,...,n-1,n為正整數。
[0061]
s12:獲取濾波器權值的迭代公式。
[0062]
進一步地,根據得到的濾波器權值w(n),獲取其迭代公式。迭代公式如下式所示:
[0063]
w(n+1)=w(n)+2μx(n)e(n);
[0064]
其中,w(n)為濾波器權值,μ為濾波器學習速率,x(n)為加權後的誤差數據,e(n)為迭代誤差信號,n=0,1,2,...,n-1,n為正整數。
[0065]
需要注意的,μ為濾波器學習速率,在具體實施中其取值範圍通常在0至x(n)矩陣最大特徵值的倒數之間。本實施例中對於濾波器學習速率的具體取值不做限制,根據具體的實施情況而定。
[0066]
s13:根據觀測值、輸出值和迭代公式獲取迭代誤差信號,以用於通過迭代誤差信
號對濾波器進行調整。
[0067]
最後,在已知作為期望值矢量d(n)的觀測值和輸出值y(n)後,通過迭代公式得到迭代誤差信號e(n):
[0068]
e(n)=d(n)-y(n)=d(n)-w
t
(n)x(n);
[0069]
需要注意的是,由於在本實施例中將觀測值與觀測誤差和作為期望值,將ssr數據誤差作為濾波輸入,迭代誤差信號e(n)即為最終得到的gnss信號輸出。利用上述自適應濾波算法,通過對瞬時梯度的計算和對濾波器係數的更新,可以獲得更為精確的位置信息。
[0070]
而為了實現對濾波器的調整,以更高的精度輸出定位信息,在具體實施中,在得到迭代誤差信號之後,獲取組合導航卡爾曼濾波的預測誤差值;需要注意的是,該預測誤差值是提前根據定位系統中各項誤差生成的預測值,本實施例中對於預測誤差值的生成過程不做限制,根據具體的實施情況而定。
[0071]
進一步根據迭代誤差信號和預測誤差值獲取觀測新息,具體將迭代誤差信號與預測誤差值作差,從而得到連續的預設數量曆元的觀測新息。最後根據觀測新息獲取卡爾曼濾波的觀測噪聲協方差,以用於通過觀測噪聲協方差調整濾波器。需要注意的是,觀測噪聲協方差可通過計算觀測新息的協方差獲取,還可通過其他方式獲取,本實施例中對於觀測噪聲協方差的具體獲取過程不做限制,根據具體的實施情況而定。
[0072]
本實施例中,通過獲取當前曆元的ppp-rtk的觀測值,並分別獲取當前曆元的誤差數據和當前曆元前連續的預設數量曆元的誤差數據;其中,各誤差數據所在的曆元中存在觀測值;對各誤差數據進行加權處理,並根據加權後的各誤差數據獲取濾波器的輸出值和濾波器權值;獲取濾波器權值的迭代公式;根據觀測值、輸出值和迭代公式獲取迭代誤差信號,以用於通過迭代誤差信號對濾波器進行調整。由此可知,上述方案中濾波器濾波不依賴ppp-rtk算法輸出的精度參數,只以輸入觀測量和誤差數據作為參考信號輸入;一旦出現異常值,濾波器可以跟蹤這種變化,重新調節參數,減少觀測更新誤差,提升定位精準度,使濾波器性能重新達到最優。
[0073]
此外,為了使用戶更好地獲知當前組合定位過程中的誤差情況,在根據觀測值、輸出值和迭代公式獲取迭代誤差信號之後,還可輸出迭代誤差信號獲取成功的提示信息,從而使用戶通過該提示信息及時掌握當前定位誤差情況。
[0074]
進一步地,在通過迭代誤差信號對濾波器進行調整之後,還生成濾波器的調整日誌,以用於通過調整日誌使用戶獲知在組合定位過程中對誤差的調整的全部過程。
[0075]
在上述實施例中,對於減少觀測更新誤差的方法進行了詳細描述,本技術還提供減少觀測更新誤差的裝置對應的實施例。需要說明的是,本技術從兩個角度對裝置部分的實施例進行描述,一種是基於功能模塊的角度,另一種是基於硬體結構的角度。
[0076]
圖4為本技術實施例提供的一種減少觀測更新誤差的裝置的示意圖。如圖4所示,減少觀測更新誤差的裝置包括:
[0077]
第一獲取模塊10,用於獲取當前曆元的ppp-rtk的觀測值,並分別獲取當前曆元的誤差數據和當前曆元前連續的預設數量曆元的誤差數據。其中,各誤差數據所在的曆元中存在觀測值。
[0078]
第二獲取模塊11,用於對各誤差數據進行加權處理,並根據加權後的各誤差數據獲取濾波器的輸出值和濾波器權值。
[0079]
第三獲取模塊12,用於獲取濾波器權值的迭代公式。
[0080]
第四獲取模塊13,用於根據觀測值、輸出值和迭代公式獲取迭代誤差信號,以用於通過迭代誤差信號對濾波器進行調整。
[0081]
本實施例中,減少觀測更新誤差的裝置包括第一獲取模塊、第二獲取模塊、第三獲取模塊和第四獲取模塊。裝置所能實現的方法同上述的減少觀測更新誤差的方法。通過獲取當前曆元的ppp-rtk的觀測值,並分別獲取當前曆元的誤差數據和當前曆元前連續的預設數量曆元的誤差數據;其中,各誤差數據所在的曆元中存在觀測值;對各誤差數據進行加權處理,並根據加權後的各誤差數據獲取濾波器的輸出值和濾波器權值;獲取濾波器權值的迭代公式;根據觀測值、輸出值和迭代公式獲取迭代誤差信號,以用於通過迭代誤差信號對濾波器進行調整。由此可知,上述方案中濾波器濾波不依賴ppp-rtk算法輸出的精度參數,只以輸入觀測量和誤差數據作為參考信號輸入;一旦出現異常值,濾波器可以跟蹤這種變化,重新調節參數,減少觀測更新誤差,提升定位精準度,使濾波器性能重新達到最優。
[0082]
圖5為本技術實施例提供的另一種減少觀測更新誤差的裝置的示意圖。
[0083]
如圖5所示,減少觀測更新誤差的裝置包括:
[0084]
存儲器20,用於存儲電腦程式。
[0085]
處理器21,用於執行電腦程式時實現如上述實施例中所提到的減少觀測更新誤差的方法的步驟。
[0086]
本實施例提供的減少觀測更新誤差的裝置可以包括但不限於智慧型手機、平板電腦、筆記本電腦或桌上型電腦等。
[0087]
其中,處理器21可以包括一個或多個處理核心,比如4核心處理器、8核心處理器等。處理器21可以採用數位訊號處理器(digital signal processor,dsp)、現場可編程門陣列(field-programmable gate array,fpga)、可編程邏輯陣列(programmable logic array,pla)中的至少一種硬體形式來實現。處理器21也可以包括主處理器和協處理器,主處理器是用於對在喚醒狀態下的數據進行處理的處理器,也稱中央處理器(central processing unit,cpu);協處理器是用於對在待機狀態下的數據進行處理的低功耗處理器。在一些實施例中,處理器21可以在集成有圖形處理器(graphics processing unit,gpu),gpu用於負責顯示屏所需要顯示的內容的渲染和繪製。一些實施例中,處理器21還可以包括人工智慧(artificial intelligence,ai)處理器,該ai處理器用於處理有關機器學習的計算操作。
[0088]
存儲器20可以包括一個或多個計算機可讀存儲介質,該計算機可讀存儲介質可以是非暫態的。存儲器20還可包括高速隨機存取存儲器,以及非易失性存儲器,比如一個或多個磁碟存儲設備、快閃記憶體存儲設備。本實施例中,存儲器20至少用於存儲以下電腦程式201,其中,該電腦程式被處理器21加載並執行之後,能夠實現前述任一實施例公開的減少觀測更新誤差的方法的相關步驟。另外,存儲器20所存儲的資源還可以包括作業系統202和數據203等,存儲方式可以是短暫存儲或者永久存儲。其中,作業系統202可以包括windows、unix、linux等。數據203可以包括但不限於減少觀測更新誤差的方法涉及到的數據。
[0089]
在一些實施例中,減少觀測更新誤差的裝置還可包括有顯示屏22、輸入輸出接口23、通信接口24、電源25以及通信總線26。
[0090]
本領域技術人員可以理解,圖5中示出的結構並不構成對減少觀測更新誤差的裝
置的限定,可以包括比圖示更多或更少的組件。
[0091]
本實施例中,減少觀測更新誤差的裝置包括存儲器和處理器。存儲器用於存儲電腦程式。處理器用於執行電腦程式時實現如上述實施例中所提到的減少觀測更新誤差的方法的步驟。通過獲取當前曆元的ppp-rtk的觀測值,並分別獲取當前曆元的誤差數據和當前曆元前連續的預設數量曆元的誤差數據;其中,各誤差數據所在的曆元中存在觀測值;對各誤差數據進行加權處理,並根據加權後的各誤差數據獲取濾波器的輸出值和濾波器權值;獲取濾波器權值的迭代公式;根據觀測值、輸出值和迭代公式獲取迭代誤差信號,以用於通過迭代誤差信號對濾波器進行調整。由此可知,上述方案中濾波器濾波不依賴ppp-rtk算法輸出的精度參數,只以輸入觀測量和誤差數據作為參考信號輸入;一旦出現異常值,濾波器可以跟蹤這種變化,重新調節參數,減少觀測更新誤差,提升定位精準度,使濾波器性能重新達到最優。
[0092]
最後,本技術還提供一種計算機可讀存儲介質對應的實施例。計算機可讀存儲介質上存儲有電腦程式,電腦程式被處理器執行時實現如上述方法實施例中記載的步驟。
[0093]
可以理解的是,如果上述實施例中的方法以軟體功能單元的形式實現並作為獨立的產品銷售或使用時,可以存儲在一個計算機可讀取存儲介質中。基於這樣的理解,本技術的技術方案本質上或者說對現有技術做出貢獻的部分或者該技術方案的全部或部分可以以軟體產品的形式體現出來,該計算機軟體產品存儲在一個存儲介質中,執行本技術各個實施例所述方法的全部或部分步驟。而前述的存儲介質包括:u盤、移動硬碟、只讀存儲器(read-only memory,rom)、隨機存取存儲器(random access memory,ram)、磁碟或者光碟等各種可以存儲程序代碼的介質。
[0094]
本實施例中,計算機可讀存儲介質上存儲有電腦程式,電腦程式被處理器執行時實現如上述方法實施例中記載的步驟。通過獲取當前曆元的ppp-rtk的觀測值,並分別獲取當前曆元的誤差數據和當前曆元前連續的預設數量曆元的誤差數據;其中,各誤差數據所在的曆元中存在觀測值;對各誤差數據進行加權處理,並根據加權後的各誤差數據獲取濾波器的輸出值和
[0095]
濾波器權值;獲取濾波器權值的迭代公式;根據觀測值、輸出值和迭代公式獲取迭代誤差信號,以用於通過迭代誤差信號對濾波器進行調整。由此可知,上述方案中濾波器濾波不依賴ppp-rtk算法輸出的精度參數,只以輸入觀測量和誤差數據作為參考信號輸入;一旦出現異常值,濾波器可以跟蹤這種變化,重新調節參數,減少觀測更新誤差,提升定位精準度,使濾波器性能重新達到最優。
[0096]
以上對本技術所提供的一種減少觀測更新誤差的方法、裝置及介質進行了詳細介紹。說明書中各個實施例採用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似部分互相參見即可。對於實施例公開的裝置而言,由於其與實施例公開的方法相對應,所以描述的比較簡單,相關之處參見方法部分說明即可。應當指出,對於本技術領域的普通技術人員來說,在不脫離本技術原理的前提下,還可以對本技術進行若干改進和修飾,這些改進和修飾也落入本技術權利要求的保護範圍內。
[0097]
還需要說明的是,在本說明書中,諸如第一和第二等之類的關係術語僅僅用來將一個實體或者操作與另一個實體或操作區分開來,而不一定要求或者暗示這些實體或操作
之間存在任何這種實際的關係或者順序。而且,術語「包括」、「包含」或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設備所固有的要素。在沒有更多限制的情況下,由語句「包括一個
……」
限定的要素,並不排除在包括所述要素的過程、方法、物品或者設備中還存在另外的相同要素。