[英]Uneven number of samples between Accelerometer, Gyro and Magnetometer on Android
我正在開發一款Android應用程序,用於記錄智能手機上的慣性數據,然后進一步處理它。 不同的Android設備具有不同的行為,具體取決於將慣性傳感器連接到Android的固件,這一點非常清晰。 有一點我無法回答的問題是,為什么只有moto g 2nd gen還表明當應用程序正在錄制時我的傳感器樣本數量明顯不同?
例如,幾秒鍾的錄音,我看到:
~6000個樣本用於陀螺儀
~5200個樣本用於acc
〜2000個磁力計樣品
假設我正在錄制的活動一直影響所有傳感器,因此我希望可以均勻地調用onSensorChange函數。 這種情況發生在我試過的其他智能手機上(5或6個不同的智能手機)。
為了讓onSensorChange記錄它,為什么磁體大多數似乎不像其他傳感器那樣經常改變值?
顯而易見的答案是因為固件,但您是否知道如何減輕我所看到的影響?
謝謝大家!
這個問題真的很老了,但我想我會為了社區的緣故回答這個問題:
我是一家專注於智能手機傳感器處理的初創公司的應用程序開發人員。 我們有兩個第二代Moto G,我們發現他們在為一個傳感器和傳感器提供統一的采樣率方面做得非常糟糕。
為了緩解這些問題,我們每次從加速度計中獲取樣本時,都會使用最新數據一次寫出整行樣本。 如果自上次加速度計樣本以來新樣本未進入任何其他傳感器,則相同的值將被打印兩次。
即。)
Accel (3-axis) | Gyro (3-axis)
0,0,0|0,0,0
<new accelerometer sample>
1,1,1|0,0,0
<5 gyro samples and 1 accelerometer>
2,2,2|5,5,5
...
無論如何,希望這有助於某人!
TLDR; 第二代Moto G對於一個傳感器和多個傳感器都具有不一致的采樣率。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.