Attitude Estimation with IMUs using Machine Learning
Abstract
Rimelige Micro Electro Mechanical System (MEMS) Inertial Measurement Units (IMU) måler vinkelhastigheter og aksellerasjoner ved bruk av et gyroskop og et aksellerometer. De er brukt i mange forskjellige situasjoner til å estimere orienteringer. Signalene fra gyroskopet og aksellerometeret inneholder typisk mye støy og tids-varierende bias. Dette bidrar til å redusere kvaliteten til de estimerte orienteringene. Dersom orienteringene estimeres ved å direkte integrere opp vinkelhastighetene, får man typisk dårlige estimater som fort, med tiden, vil avvike fra de faktiske orienteringene.
Denne oppgaven bygger på en eksisterende metode der det brukes et konvolusjonelt nevralt nettverk til å estimere orienteringer. Denne metoden sammenlignes med et konvensjonelt filter for estimering av orientering for å undersøke hvor god ytelse metoden basert på nevrale nettverk har. En ny metode av data augmentation brukes sammen med den eksisterende metoden basert på et nevralt nettverk, i et forsøk på å forbedre ytelsen til det nevrale nettverket. Videre brukes nye arkitekturer av konvolusjonelle nevrale nettverk til å erstatte det nevrale nettverket i den eksisterende metoden i et forsøk på å forbedre ytelsen til metoden ytterligere.
Metoden basert på et konvolusjonelt nevralt nettverk ble påvist å ha en veldig god ytelse sammenlignet med det konvensjonelle filteret. Den nye metoden av data augmentation klarte ikke å konsekvent produsere bedre resultater. Det ble derfor konkludert med at dette ikke bidro til å forbedre den eksisterende metoden. Bruken av nye nevrale nettverksarkitekturer kombinert med den eksisterende metoden ga bedre resultater enn det opprinnelige nevrale nettverket. Dermed forbedret bruken av nye nettverksarkitekturer metoden. Low cost Micro Electro Mechanical System (MEMS) Inertial Measurement Units (IMU) measure angular velocities and accelerations using gyroscopes and accelerometers. They are used in a wide variety of applications for estimating orientation, also referred to as attitude. The signals from the gyroscopes and accelerometers are typically corrupted with noise and time-varying bias. This reduces the quality in the estimated orientation. Estimating the orientation from open-loop integration typically yields poor estimates that quickly drifts from the true value with time.
This thesis builds on an existing method of using a Convolutional Neural Network (CNN) to obtain reliable estimates for the orientation. This method is compared to an existing conventional orientation estimation filter to investigate how good the CNN-based method performs. A new method of data augmentation is used together with the CNN-based method in an attempt to improve the performance of the CNN. New CNN architectures replacing this existing CNN are also tested, to further improve the performance of the method.
The existing CNN-based approach was proven to be very effective for orientation estimation when compared to the conventional orientation estimation filter. The use of the new technique for data augmentation did not produce consistently better results, and was therefore considered to be ineffective in further improving the performance. The use of new CNN architectures combined with the existing method managed to perform better than the original CNN, improving the method.