簡體   English   中英

Android中ROTATION VECTOR的實現

[英]Implementation of ROTATION VECTOR in Android

Android中有一個rotation vector 據我了解,這使用加速度計和陀螺儀進行傳感器融合。 還有一個融合傳感器,稱為geomagnetic rotation vector ,它使用磁力計而不是陀螺儀。

但是我無法找到這兩個虛擬傳感器的傳感器融合背后的邏輯。 您能否解釋一下這兩個傳感器的實現方式或使用的算法是什么。

Android中的旋轉矢量有四個數據條目。 但通常只有3個非零的條目。 通常會涉及另外9個條目表示。 加速度計t_a和陀螺儀w_p是不同的東西。 不要混淆自己。 一次有一個問題

有關標題旋轉向量,請閱讀以下鏈接。 有些人不可能在這里寫一篇文章。

https://en.wikipedia.org/wiki/Euler_angles

https://en.wikipedia.org/wiki/Rotation_matrix

https://en.wikipedia.org/wiki/Quaternion

數學理論涉及:

黎曼幾何

李代數和李群

嚴格變換。 等等

如果您都閱讀了這些書,大約要花半年時間。

簡而言之,對於程序員而言:

歐拉角串聯是正角加法。 Diffciultin與運動/加速度計連接。 有萬向節鎖定問題。 三個變量,有效表示。

Rotation_matrix串聯是直接矩陣乘法。 可以直接與變換矩陣連接[R | t; 0 | 1]。 變換矩陣級聯是直接矩陣乘法。 有萬向節鎖定問題,需要9個數據來表示

四元數是向量乘法。 四變量,無萬向節鎖定問題。 直接與運動連接並不容易。

定影是另一個主題,可以是松散耦合還是緊密耦合。

松耦合模型通常為EKF。 通常采用緊耦合圖優化方法。

此后,您將要求與加速度計或其他測量值融合。 然后,它變得更加復雜。 例如完全集成模型和部分集成模型。 到目前為止,許多工作更多地是針對研究水平。 很難用簡單的話來解釋。 我建議您閱讀最近的論文,例如VINSMONO和OKVIS。

[1] Stefan Leutenegger,Simon Lynen,Michael Bosse,Roland Siegwart和Paul Timothy Furgale。 使用非線性優化的基於關鍵幀的視覺慣性里程表。 國際機器人研究雜志,2015年。

[2] Stefan Leutenegger。 無人太陽能飛機:高效且魯棒的自主運行的設計和算法。 博士學位論文,2014。

[3] Stefan Leutenegger,Paul Timothy Furgale,Vincent Rabaud,Margarita Chli,Kurt Konolige和Roland Siegwart。 使用非線性優化的基於關鍵幀的視覺慣性SLAM。 在《機器人學報:科學與系統》,2013年。

[4]秦彤,李培良,楊振飛,沉少傑,VINS-Mono:一種魯棒且通用的單眼視覺慣性狀態估計器,IEEE Transactions on Robotics 2017

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM