Sto provando Sensor.TYPE_ROTATION_VECTOR su Android. Dovrebbe utilizzare magnetfieldsensor, accelerometro e giroscopio per fornire una rotazione accurata in ogni momento. Tuttavia, noto una deriva enorme che si verifica in Moto G 2nd. Mi chiedo se questo è un problema specifico del dispositivo, o che questo si verifica su un sacco di telefoni (che presumerei, anche se mi è familiare che Moto G 2nd sia un caso problematico con il suo giroscopio).Sensor.TYPE_ROTATION_VECTOR ha una deriva: esiste un'alternativa?
Esiste una forma alternativa di fusione del sensore, che non ha deriva (utilizzando magnetsensor)? Ho provato anche la fusione dei sensori di Google Cardboard, ma utilizza la stima della polarizzazione, quindi presumibilmente non è completamente priva di deriva (poiché a questo punto sembra che il magnetfieldsensor non venga utilizzato), sebbene sia ancora MOLTO meglio di TYPE_ROTATION_VECTOR.
Un vecchio video di Google Talk su Sensor Fusion: https://youtu.be/C7JQ7Rpwn2k Anche la deriva all'interno delle specifiche? 'DEVE avere una varianza non superiore a 1e-7 rad^2/s^2 per Hz (varianza per Hz o rad^2/s). La varianza può variare con la frequenza di campionamento, ma deve essere vincolata da questo valore. In altre parole, se si misura la varianza del giroscopio a una frequenza di campionamento di 1 Hz, non dovrebbe essere maggiore di 1e-7 rad^2/s^2.' http://static.googleusercontent.com/media/source.android .com/it // compatibility/android-cdd.pdf –
Come stai cercando questo per AR che ha una lunga durata - questo è probabilmente il motivo per cui hanno aggiunto la funzione HiFI Sensor 'android.hardware.sensor.hifi_sensors' –