本發明涉及imu數據處理,尤其涉及一種imu信號濾波處理方法、裝置、設備及存儲介質。
背景技術:
1、現有的imu信號濾波方法主要基于cpu或者dsp實現,例如采用擴展卡爾曼濾波、陀螺儀積分模型等算法模型,通過嵌入式處理器實現imu數據濾波。現有的實現imu數據處理的平臺還存在以下問題:
2、1、運算速度慢,難以滿足實時性需求,尤其是在圖像、視頻處理等較大數據量處理的場景中;
3、2、濾波效果依賴于算法迭代次數,受限于cpu執行能力,無法達到較好的濾波效果;
4、3、濾波軟件可移植性差,無法針對不同應用場景進行算法優化等問題。
技術實現思路
1、本發明的主要目的在于提供一種imu信號濾波處理方法、裝置、設備及存儲介質,旨在解決現有imu信號濾波方法存在運算速度慢、實時性低、濾波效果差等問題。
2、為實現上述目的,本發明提供了一種imu信號濾波處理方法,包括:
3、獲取imu傳感器數據,并根據所述imu傳感器數據構建幀傳感器數據;
4、基于片上存儲器通過硬件排序算法確定所述幀傳感器數據對應的估計值;
5、基于所述估計值進行前后幀所述幀傳感器數據的迭代,以獲得卡爾曼濾波增益;
6、基于所述卡爾曼濾波增益對所述幀傳感器數據進行濾波,輸出imu信號濾波結果。
7、在一些實施例中,所述獲取imu傳感器數據,并根據所述imu傳感器數據構建幀傳感器數據,包括:
8、通過i2c總線獲取imu傳感器數據;
9、獲取數據流;
10、將所述imu傳感器數據編碼在所述數據流的參數行中,以獲得幀傳感器數據。
11、在一些實施例中,所述基于片上存儲器通過硬件排序算法確定所述幀傳感器數據對應的估計值,包括:
12、基于片上存儲器對所述幀傳感器數據進行硬件排序處理,以獲得所述幀傳感器數據對應的單幀均值;
13、根據所述單幀均值得到多幀均值;
14、根據所述多幀均值和松弛系數得到卡爾曼濾波器的標準差;
15、將所述標準差作為所述幀傳感器數據對應的估計值。
16、在一些實施例中,所述基于片上存儲器對所述幀傳感器數據進行硬件排序處理,以獲得所述幀傳感器數據對應的單幀均值,包括:
17、基于片上存儲器提取所述幀傳感器數據中加速度計上三軸的加速度值;
18、基于預設sort函數對所述加速度值進行硬件排序,以獲得所述幀傳感器數據對應的單幀均值。
19、在一些實施例中,所述基于預設sort函數對所述加速度值進行硬件排序,以獲得所述幀傳感器數據對應的單幀均值,包括:
20、基于預設sort函數對所述加速度值進行硬件排序,以獲得第一排序結果;
21、根據預設裁剪參數去除所述第一排序結果中若干個加速度值,以獲得第二排序結果并將所述第二排序結果回寫至所述片上存儲器;
22、確定所述第二排序結果中所述加速度值的平均值,并將所述平均值作為所述幀傳感器數據對應的單幀均值。
23、在一些實施例中,所述根據所述多幀均值和松弛系數得到卡爾曼濾波器的標準差,包括
24、根據所述多幀均值以及松弛系數確定所述幀傳感器數據的上震蕩邊界和下震蕩邊界;
25、根據所述上震蕩邊界和所述下震蕩邊界得到imu傳感器數據標定過程中的標準差。
26、在一些實施例中,所述imu信號濾波處理方法基于可編程邏輯芯片執行;其中,所述可編程邏輯芯片包括所述片上存儲器,所述片上存儲器固定分布在可編程邏輯芯片內部的預設位置。
27、此外,為實現上述目的,本發明還提出一種imu信號濾波處理裝置,包括:
28、數據編碼模塊,用于獲取imu傳感器數據,并根據所述imu傳感器數據構建幀傳感器數據;
29、排序估計模塊,用于基于片上存儲器通過硬件排序算法確定所述幀傳感器數據對應的估計值;
30、迭代增益模塊,用于基于所述估計值進行前后幀所述幀傳感器數據的迭代,以獲得卡爾曼濾波增益;
31、濾波處理模塊,用于基于所述卡爾曼濾波增益對所述幀傳感器數據進行濾波,輸出imu信號濾波結果。
32、此外,為實現上述目的,本發明還提出一種電子設備,所述電子設備包括:存儲器、處理器及存儲在所述存儲器上并可在所述處理器上運行的imu信號濾波處理程序,所述imu信號濾波處理程序配置為實現如上文所述的imu信號濾波處理方法。
33、此外,為實現上述目的,本發明還提出一種存儲介質,所述存儲介質存儲有imu信號濾波處理程序,所述imu信號濾波處理程序用于使處理器執行時實現如上文所述的imu信號濾波處理方法。
34、本發明提供了一種imu信號濾波處理方法,包括:獲取imu傳感器數據,并根據所述imu傳感器數據構建幀傳感器數據;基于片上存儲器通過硬件排序算法確定所述幀傳感器數據對應的估計值;基于所述估計值進行前后幀所述幀傳感器數據的迭代,以獲得卡爾曼濾波增益;基于所述卡爾曼濾波增益對所述幀傳感器數據進行濾波,輸出imu信號濾波結果。本發明中,使用可編程邏輯芯片實現imu傳感器數據的濾波,利用可編程邏輯芯片的片上存儲器資源進行硬件排序和卡爾曼濾波的遞歸,相較于采用cpu或者dsp軟件濾波的方式,本發明具有更快地計算速度,同時更小的邏輯硬件面積使得本發明更為通用,從而在能達到高速處理速度的同時,能夠適應針對不同應用場景的算法優化,解決了現有imu信號濾波方法存在運算速度慢、實時性低、濾波效果差等問題。
1.一種imu信號濾波處理方法,其特征在于,包括:
2.如權利要求1所述的方法,其特征在于,所述獲取imu傳感器數據,并根據所述imu傳感器數據構建幀傳感器數據,包括:
3.如權利要求1所述的方法,其特征在于,所述基于片上存儲器通過硬件排序算法確定所述幀傳感器數據對應的估計值,包括:
4.如權利要求3所述的方法,其特征在于,所述基于片上存儲器對所述幀傳感器數據進行硬件排序處理,以獲得所述幀傳感器數據對應的單幀均值,包括:
5.如權利要求4所述的方法,其特征在于,所述基于預設sort函數對所述加速度值進行硬件排序,以獲得所述幀傳感器數據對應的單幀均值,包括:
6.如權利要求3所述的方法,其特征在于,所述根據所述多幀均值和松弛系數得到卡爾曼濾波器的標準差,包括:
7.如權利要求1至6中任一項所述的方法,其特征在于,所述imu信號濾波處理方法基于可編程邏輯芯片執行;其中,所述可編程邏輯芯片包括所述片上存儲器,所述片上存儲器固定分布在可編程邏輯芯片內部的預設位置。
8.一種imu信號濾波處理裝置,其特征在于,包括:
9.一種電子設備,其特征在于,所述電子設備包括:存儲器、處理器及存儲在所述存儲器上并可在所述處理器上運行的imu信號濾波處理程序,所述imu信號濾波處理程序配置為實現如權利要求1至7中任一項所述的imu信號濾波處理方法。
10.一種存儲介質,其特征在于,所述存儲介質存儲有imu信號濾波處理程序,所述imu信號濾波處理程序用于使處理器執行時實現如權利要求1至7中任一項所述的imu信號濾波處理方法。