ethz-asl / rovio

Other
1.12k stars 504 forks source link

Using attitude from IMU to improve ROVIO tracking #248

Open makiello opened 3 years ago

makiello commented 3 years ago

Hello,

Thanks for this great project!

I've been testing Rovio using my own system (Xsens Mti-300 and MT9V022 camera).

When walking down a corridor, turning fairly fast and returning to the original position, ROVIO seems to slightly underestimate the angle it has turned through at the end of the corridor. This results in an error in position of almost 2 metres, see first picture below.

Screenshot (365)

Rovio_corridor

The maximum value of angular rate on the z axis is only 1.5 rads/s so it is definitely not due to the gyroscope reaching its maximum value. Taking the velocity from ROVIO and combining it with the attitude solution from the Xsens, I get a much smaller drift (see below). Rovio_and_attitude

My question is: can I use the attitude from the Xsens in the prediction step of the filter?

I see that there is an ‘enableAttitude’ in the configuration file. If I set it to ‘true’ and publish pose messages containing the quaternion orientation from the Xsens to the /rovio/pose topic, will the filter take this into account?

suyash023 commented 2 years ago

Hey @makiello Were you able to combine the attitude information from Xsens into ROVIO? I am going through a similar process but using a PX4 (Pixhawk). Would be glad if you could share some ideas! I would be happy to share mine too. Thanks!