Hello!First,thank you for releasing this open source project! Ive been doing a test integration of it inside our machine learning platform (MLDB.ai).
However Ive been unable to make loop closure work so far, and I was wondering if anyone could point me in the right direction to fix it.
We've captured 3D lidar data going around the block clockwise and fed it to cartographer. This is the result so far:
Please disregard the color scheme of the point cloud. The red crosses represent the trajectory nodes, and it should overlap in the top middle. It ends up drifting by a few meters, but nothing that loop closure shouldn't be able to fix.
Do you have any tips or advice in where to look next to solve the loop closure?Also if I may ask another question, in the ROS integration it is mentioned that 3D mapping requires IMU data where 2D does not. Could you provide more details?
Again thank you for releasing this and for any help or advice you can give me.Best regards,Mathieu Marquis BolducMLDB.ai
--
You received this message because you are subscribed to the Google Groups "google-cartographer" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-cartographer+unsub...@googlegroups.com.
To post to this group, send email to google-cartographer@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-cartographer/eab1ca71-7f5a-46e5-82a3-1070ee2f2166%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
{ t: [0.000000, 0.000000, 0.000000], q: [1.000000, 0.000000, 0.000000, 0.000000] } to { t: [-0.665780, 8.028970, -0.257078], q: [0.992933, 0.005923, 0.003877, -0.118469] }
However if I allow the sparse graph optimization to run with default settings, then the trajectories end up going from
{ t: [0.180539, -0.853876, -0.033034], q: [0.721486, -0.692233, 0.007359, 0.014724] } to { t: [-0.759318, 7.275198, -0.274126], q: [0.721486, -0.692234, 0.007359, 0.014722] }
I find it somewhat weird that it would change the first trajectory node, since that its the only origin. If I put everything in the reference system of the first node, the nodes go as this:
{ t: [0.000000, 0.000000, 0.000000], q: [1.000000, 0.000000, 0.000000, 0.000000] } to { t: [-0.841979, 0.605166, 8.120847], q: [1.000000, -0.000000, 0.000001, -0.000001] }
So it seems that the sparse graph optimization ended up stacking everything vertically. Do you have any idea what would cause that?
Regarding the 3D IMU, do you think it would be possible to allow the optimization to search for the proper vertical as well? Is it a question of stability or performance?
Thanks again for any help or advice you can give me!
Mathieu
To post to this group, send email to google-ca...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-cartographer/eab1ca71-7f5a-46e5-82a3-1070ee2f2166%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups "google-cartographer" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-cartographer+unsub...@googlegroups.com.
To post to this group, send email to google-cartographer@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-cartographer/23852938-6d85-41bf-9839-be9d943335d3%40googlegroups.com.
This dataset was not captured with an IMU, we're in the process of adding IMU and GPS to our test setup. I passed a constant gravity vector to cartographer (as is done in one of the tests). Which introduce a fair amount of error (since we couldnt keep the sensor perfectly level), however the fan insertion in cartographer seems to deal with it extremely well (grats on that!), with drift becoming noticeable only after several hundred meters. We see a large amount of floor on each scan - we start seeing the floor 8m away while the range is 100m. When looking at the voxel submap, the slope of the street is captured.I'll pause investigating the loop closure until we get IMU data. Its puzzling that the fan insertion deals with our noisy data so much better than the loop closure.
But even just getting the voxel submap(s) from Cartographer has been really useful, so thank you again!
--
You received this message because you are subscribed to the Google Groups "google-cartographer" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-cartographer+unsub...@googlegroups.com.
To post to this group, send email to google-cartographer@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-cartographer/337f285b-0226-4f81-85e6-bedef57ce2de%40googlegroups.com.
Did you have any success adding gps?