question:What's the difference between factorGraph and poseGraph/3D?

33 vues (au cours des 30 derniers jours)
cui,xingxing
cui,xingxing le 10 Déc 2022
Commenté : cui,xingxing le 13 Déc 2022
In recent years, the navigation toolbox has become more and more supportive of pose graph optimization, with the introduction of functions such as "poseGraph/3D"(R2019b intruduced) and "factorGraph"(R2022a intruduced). Their Object functions are similar in many ways, but I am curious as to what is the fundamental difference between these two types of pose graphs? Which one should I choose to use when I have a problem? It seems that the "addPointLandmark" in "poseGraph/3D" and the "addFactor in "factorGraph"?
I also understand from other sources that the pose graph is a special case of the factor graph? Is the latter more applicable to the situation?
I look forward to a clear explanation and thanks in advance!

Réponse acceptée

cui,xingxing
cui,xingxing le 12 Déc 2022
Modifié(e) : cui,xingxing le 12 Déc 2022
Using the official example "Landmark SLAM Using AprilTag Markers", I partly understand that factorGraph is more general than poseGraph/3D, mainly below items:
1, factorGraph can fuse different types of odometer data, e.g. the main program can fuse GPS, IMU, etc. (It would be nice to have additional factorWheel support in future versions).
2, factorGraph can also specify the initial state through the factorPoseSE3Prior object function, unlike poseGraph which can only build a trajectory graph from the origin.
3, factorGraph performs faster in terms of pose graph optimisation performance, except for a bit of overhead when building objects.
4,factorGraph has no limitations or caveats when it comes to deploying generated C code.
5,factorGraph supports the import of files with the ".g2o" suffix.
That's all I've found so far, feel free to add any better answers.
  2 commentaires
Zheng Dong
Zheng Dong le 12 Déc 2022
Hi Cui,
Thank you for the answer! Factor graph is a new tool we introduced in R2022a, so we are still improving its documentations and implementing new features. In poseGraph, each node estimate is connected to the graph by edge constraints that define the relative pose between nodes and the uncertainty on that measurement, so the main measurement information utlized by poseGraph is relative pose. However, factorGraph is able to incorporate different types of information by defining different factors like factorIMU, factorGPS... Therefore, factorGraph is able to fuse multiple sensors for solving different SLAM problems. We will add more factors and examples in the future to illustrate how factorGraph works.
Thanks,
Zheng
cui,xingxing
cui,xingxing le 13 Déc 2022
@Zheng Dong that's a good news.

Connectez-vous pour commenter.

Plus de réponses (0)

Produits


Version

R2022b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by