Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Expose RANSAC classes in calib3d #17316

Open
devanshbatra04 opened this issue May 18, 2020 · 5 comments
Open

Expose RANSAC classes in calib3d #17316

devanshbatra04 opened this issue May 18, 2020 · 5 comments

Comments

@devanshbatra04
Copy link

I am working on the GSoC Project idea #9 Add Robust Plane/Sphere/Cylinder Fitting into 3D Point Clouds.

The project heavily depends upon RANSAC. The current implementation of RANSAC is as a PointSetRegistrator in opencv/calib3d. However, I would probably be making the pull request in opencv_contrib's rgbd module since a plane fitting implementation is already present there as listed in the project description.

The relevant classes (PointSetRegistrator) are part of calib3d's precomp.hpp. It would be great if they can be exposed. I assume a tutorial on RANSAC could accompany it and it would be helpful to others as well.

CC: @berak
My related question on answers.opencv.org: https://answers.opencv.org/question/230287/pointsetregistrator-is-not-a-member-of-cv/

@tompollok
Copy link
Contributor

Could the generic object fitting methods be put somewhere into the main opencv repository, as the rgbd module has multiple patents listed? Also it is not specifically RGBD but generic pointcloud based model fitting.

PCL as an example has implemented it as a sample concensus module:
https://github.com/PointCloudLibrary/pcl/tree/master/sample_consensus/src

@devanshbatra04
Copy link
Author

While preparing the proposal I had run into this - https://github.com/opencv/opencv/wiki/OE-22.-Module-Point-Cloud

A long term objective is to have a dedicated point cloud module (with these fitting and segmentation features). Would it live in the OpenCV or in Contrib? Because if we put the object fitting (and segmentation) methods in OpenCV and the module were to eventually exist in contrib, we would have to later restructure everything.

@tompollok
Copy link
Contributor

I think that needs discussion your mentor or feedback from @asmorkalov @alalek

@berak
Copy link
Contributor

berak commented May 18, 2020

let's get back to the orignal problem:

wherever this GSOC contribution is going to end up (NOT in calib3d, my bet), it will need access to the already implemented, but "package private" RANSAC code from calib3d.

can we somehow faciliate the access ?

would there be any obstacles, moving those functions to the "public api" ?

@vpisarev
Copy link
Contributor

@berak, I think, after this GSoC the new, improved RANSAC will be exposed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants