0

我是计算机视觉的新手。我一直在阅读一些研究论文,也遇到了这种姿势估计的实现, http: //opencv.willowgarage.com/wiki/Posit

现在看来,要估计姿势,至少需要从对象到图像空间的 4 个对应点。并且要求这些点是 共面的

现在,我已经看到了一些实现(ALVAR / ArUCo),在平面标记的情况下,我们可以找到姿势。

他们使用 OpenCv API、SolvePnP()。

链接, http: //www.uco.es/investiga/grupos/ava/node/26 ) http://virtual.vtt.fi/virtual/proj2/multimedia/alvar/index.html

我现在想知道 SolvePnP 的基础算法是什么。请澄清。

4

1 回答 1

1

cv::SolvePnP()允许使用三种不同的算法。从文档中:

解决 PnP 问题的方法:

CV_ITERATIVE Iterative method is based on Levenberg-Marquardt optimization. In this case the function finds such a pose that minimizes reprojection error, that is the sum of squared distances between the observed projections imagePoints and the projected (using projectPoints() ) objectPoints .
CV_P3P Method is based on the paper of X.S. Gao, X.-R. Hou, J. Tang, H.-F. Chang “Complete Solution Classification for the Perspective-Three-Point Problem”. In this case the function requires exactly four object and image points.
CV_EPNP Method has been introduced by F.Moreno-Noguer, V.Lepetit and P.Fua in the paper “EPnP: Efficient Perspective-n-Point Camera Pose Estimation”.
于 2013-05-31T15:49:32.817 回答