Closed NatureLan-sudo closed 2 years ago
Hi @lantianran,
graph.error(estimate)
returns that. You can think of it as the sum of all the constraint errors between relative pose constraints and the estimate. Checkout https://gtsam.org/tutorials/intro.html for more details on what graph.error(...)
represents. Ideally for distributed optimizer, the error should be the same as centralized two stage. Centralized two stage + GN represents running a few gauss-newton iteration starting from centralized 2 stage estimate. Let me know if it's not clear. Thanks!
Thank you so much for your kind help. I have been sick recently and I'm sorry to get back to you so late. After your explanation, I have fully understood.
when I run
./runDistributedMapper --nrRobots 4 --dataDir ../../data/example_4robots/
I can get results like this:Initial Error: 20.5862 Centralized Two Stage Error: 1.9521 Centralized Two Stage + GN Error: 1.94262 Distributed Error: 1.95323
1、I don't quite understand the meaning of these errors, does it represent the error between the final estimate and the ground truth, or is there another meaning? How can I get the ground truth? 2、If it doesn't mean the error between the final estimate and groundtruth, how should I test the error between the optimized pose and the ground truth. 3、I observed that the file only outputs the result of the whole graph, is this the result of fusing multiple robot graphs? How should I test the error from the ground truth? Hope to get your help! Thank you very much! @itzsid