opencv / opencv

Open Source Computer Vision Library
https://opencv.org
Apache License 2.0
75.95k stars 55.61k forks source link

Implement minimum spanning tree #25150

Open savuor opened 2 months ago

savuor commented 2 months ago

Describe the feature and motivation

Version: 5.x

Current implementation of PoseGraph performs local optimization w/o searching any global solution first. Implementing MST (minimum spanning tree) can help with it: 1) MST is calculated on a graph 2) node poses are reconstructed by walking down the MST 3) these new node poses are used as an initial approximation for pose graph problem Sometimes MST solutions are good enough to skip further local optimization.

Optional: Since MST is used in a lot of areas pretty often (e.g. multicamera calibration), an MST can be implemented as a separate function in 3D module that gets vertices and edges and/or connection matrix and returns spanning tree edges.

Additional context

https://en.wikipedia.org/wiki/Minimum_spanning_tree Ceres explanation of what pose graph problem is

Zedoman commented 1 month ago

Please allow me to work on this issue under GSOC'24

savuor commented 1 month ago

@Zedoman fell free to apply to GSoC with this project

Zedoman commented 1 month ago

Thank you sir For giving this opportunity.

Zedoman commented 2 weeks ago

Sir i got rejected but you have told to apply for this project and I will get acceptance. But how ocome I got rejected?

savuor commented 2 weeks ago

@Zedoman I've never promised that you will be accepted just by applying to this topic. The only way you can take part in GSoC is to apply officially and to compete with other candidates by providing your CV and detailed project plan. But even if you have brilliant CV and project plan this is not always enough. Sometimes we do not have enough mentors to cover everyone, especially when there's nobody interested in a specific project. Sorry if the communication was misleading. This year I'm not a mentor and cannot help with this.

dnabanita7 commented 2 days ago

I would like to give this a go if nobody is working on it. I think I need to be assigned.