IMU Preintegration
- Detto anche: preintegrated IMU factor, on-manifold preintegration
- Categoria: State estimation & navigation › Localisation
- Tag: imu, state-estimation, factor-graphs, sensor-fusion, slam
Combinare i numerosi campioni dell'IMU tra due keyframe in un'unica misura di moto relativo che non dipende dai loro stati assoluti, così che un ottimizzatore non debba reintegrare quando le stime cambiano.
Definizione
Un'IMU produce campioni di accelerometro e giroscopio molto più spesso di quanto una telecamera o un LiDAR produca fotogrammi. In uno stimatore basato sull'ottimizzazione, aggiungere uno stato per ogni campione dell'IMU renderebbe il problema troppo grande, ma integrare semplicemente i campioni in una posa pone un altro problema: il risultato dipende dall'orientamento, dalla velocità e dai bias iniziali, che sono a loro volta oggetto di stima. Ogni volta che l'ottimizzatore li modificasse, l'intero tratto di dati dell'IMU dovrebbe essere integrato di nuovo. La preintegrazione dell'IMU (IMU preintegration) evita questo problema integrando le misure tra due stati nel sistema di riferimento del corpo del primo stato, producendo variazioni relative di rotazione, velocità e posizione che non dipendono dalla posa e dalla velocità iniziali.
Lupton e Sukkarieh hanno introdotto la preintegrazione per la navigazione visivo-inerziale (2012), e Forster, Carlone, Dellaert e Scaramuzza l'hanno riformulata sulla varietà delle rotazioni (2015, estesa nel 2017); questa formulazione è quella usata oggi dalla maggior parte dei sistemi basati su grafi dei fattori. La gravità viene trattata separatamente, aggiungendola di nuovo quando i termini preintegrati vengono confrontati con i due stati. La dipendenza dai bias viene trattata con una correzione del primo ordine: durante l'integrazione, il metodo accumula anche le jacobiane delle grandezze preintegrate rispetto ai bias del giroscopio e dell'accelerometro, così che una piccola variazione della stima del bias aggiorni la misura a basso costo. La covarianza della misura combinata viene propagata insieme a essa, il che dà al fattore il suo peso. Se la stima del bias si allontana molto dal valore usato durante l'integrazione, l'integrazione viene ripetuta.
Il risultato è un unico fattore IMU tra keyframe consecutivi in un grafo dei fattori, che collega le loro pose, velocità e bias, di solito insieme a un fattore che modella la lenta passeggiata aleatoria dei bias. È questo che rende pratico mantenere i dati dell'IMU all'interno di stimatori a finestra scorrevole e di smoothing completo come VINS-Mono, la modalità inerziale di ORB-SLAM3, LIO-SAM e LVI-SAM. La precisione dipende comunque dai parametri di rumore e di bias dell'IMU forniti al fattore, dalla sincronizzazione temporale con gli altri sensori e dallo schema di integrazione discreta, che presuppone che le misure restino costanti o varino in modo semplice tra un campione e l'altro.
Perché è importante
Senza preintegrazione, l'ottimizzazione visivo-inerziale e LiDAR-inerziale strettamente accoppiata sarebbe troppo lenta per girare a bordo di un robot. È il motivo per cui i dati dell'IMU possono stare accanto alle misure di telecamera, LiDAR e altri sensori in un unico grafo dei fattori.
Applicazioni principali
- Odometria visivo-inerziale e back-end SLAM
- Odometria e mappatura LiDAR-inerziale
- Fusione su grafo dei fattori dei dati IMU con GPS, radar o odometria delle ruote
- Stima online dei bias di accelerometro e giroscopio
- Calibrazione telecamera-IMU e LiDAR-IMU
In pratica
Con GTSAM, uno sviluppatore crea un oggetto di preintegrazione con le densità di rumore e i valori di passeggiata aleatoria dei bias dell'IMU, presi dal datasheet o da un'analisi della varianza di Allan su dati registrati. Ogni campione dell'IMU tra due keyframe viene passato all'oggetto e, quando arriva il keyframe successivo, il risultato accumulato diventa un fattore IMU che collega le variabili di posa, velocità e bias dei due keyframe. Quando in seguito l'ottimizzatore aggiorna i bias, il fattore usa le jacobiane memorizzate invece di rielaborare i campioni. I sistemi che si localizzano con altri sensori, come il georadar, usano lo stesso fattore per collegare le pose tra le misure radar, meno frequenti.
Idee sbagliate comuni
- La preintegrazione elimina la deriva dell'IMU — si limita a riorganizzare l'integrazione; gli errori di rumore e di bias restano e devono essere vincolati da altri sensori
- La misura preintegrata è fissa una volta calcolata — dipende dalla stima del bias, che viene corretta al primo ordine e richiede una reintegrazione se il bias cambia in modo sostanziale
- La preintegrazione è solo un trucco per la velocità — fornisce anche una covarianza propagata correttamente, che è ciò che permette all'ottimizzatore di pesare i dati dell'IMU rispetto agli altri sensori
Chi dovrebbe saperlo
- Sviluppatori di SLAM e di odometria visivo-inerziale
- Ingegneri della stima dello stato
- Ingegneri della navigazione di droni e robot con zampe
- Ricercatori che costruiscono stimatori con librerie per grafi dei fattori
Tecnologie correlate
- GTSAM
- Varianza di Allan (Allan Variance)
- Gruppi di Lie (Lie Groups)
- VINS-Mono
- LIO-SAM
- Sistemi di navigazione inerziale (Inertial Navigation Systems)
Termini correlati
Progetti correlati
- LingBot-Map: Streaming 3D reconstruction from one camera: pose and depth for every frame, live
- oomwoo: Open-source DIY robot vacuum: 3D-printed, ROS2 + 2D LiDAR, fully local.
- Cartographer: Google's real-time 2D and 3D SLAM system for multi-platform robotics
- OpenCat: An open-source Arduino and Raspberry Pi-based quadruped robot pet framework
- FAST-LIVO2: Fast, direct LiDAR-inertial-visual odometry from HKU-MARS, published in IEEE T-RO
- DimOS: Python robotics runtime with agents, SLAM and teleop, no ROS required