我是计算机视觉的新手。 我一直在阅读一些研究论文,也遇到了这个问题 姿势估计的实施,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的基础算法是什么。请澄清。
答案 0 :(得分:1)
cv::SolvePnP()
允许使用三种不同的算法。来自documentation:
解决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”.