Skip to content

[Feature Request] Add Python support for SFM – triangulatePoints function #3914

Open
@FrancescoSpena

Description

@FrancescoSpena

Describe the feature and motivation

Description:

Currently, OpenCV provides the Structure From Motion (SFM) module only in C++, and there is no official Python binding for it. I have implemented a pure Python version of the cv::sfm::triangulatePoints function, which allows triangulating 3D points from 2D image correspondences and projection matrices. I would like to contribute this function to OpenCV, and I have a few questions regarding the best approach:

Should I create a new sfm module inside opencv_contrib to host this function and possibly other SFM-related utilities in the future? If a new sfm module is not the right approach, where would be the best place to integrate this function? (e.g., calib3d, multiview)? Is there any existing plan to add Python support for SFM in OpenCV?

Proposed Contribution:

  • A Python implementation of triangulatePoints, equivalent to the C++ version in OpenCV.
  • Unit tests to ensure correctness.
  • Documentation and example usage.
  • (If approved) A new sfm module in opencv_contrib to facilitate future additions.

I am open to feedback on the best way to integrate this contribution. Let me know if you need any additional details! 🚀

Additional context

OpenCV Version:
Platform: Ubuntu 20.04, Python 3.8.10

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions