Skip to content

Ignoring the flags of solvePnP and silently executing EPNP #5065

@opencv-pushbot

Description

@opencv-pushbot

Transferred from http://code.opencv.org/issues/4472

|| Philipp Hasper on 2015-07-08 08:42
|| Priority: Normal
|| Affected: branch 'master' (3.0-dev)
|| Category: calibration, 3d
|| Tracker: Bug
|| Difficulty: 
|| PR: 
|| Platform: Any / Any

Ignoring the flags of solvePnP and silently executing EPNP

The way how uPnP and DLS have been disabled in [1] is highly counter-intuitive:

Just executing EPNP regardless of the given flag [2] is confusing. If somebody wants to evaluate the OpenCV version of uPnP, let him do that (and not silently executing epnp in the background). Imagine somebody wants to evaluate the available PnP solvers in OpenCV and finds out that it does not matter which one he chooses because the results are all the same.

So we have to
a) remove the upnp and dls flags completely or
b) leave them in and document the unstable behavior with a warning in the online documentation.

The latter option might lead to somebody improving the algorithms

[1]: https://github.com/Itseez/opencv/pull/3828 
[2]: https://github.com/vpisarev/opencv/blob/ca19ae8b5ae53afe3ca0084c55178b8d0796b28b/modules/calib3d/src/solvepnp.cpp#L66

History

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