Abstract: | The perspective-three-point (P3P) is a classic problem in both computer vision and photogrammetry fields, which has important applications in object localization, metrology, virtual reality, and pose estimation, etc. A novel algorithm is proposed, Bayesian P3P (BP3P), to solve the P3P problem. The determination of the support plane, which is uniquely defined by the three control points, is proven to be the necessary and sufficient condition to the P3P problem. A Bayesian approach to compute the support plane is given. Computation of the plane normal is formulated into a maximum likelihood problem by utilizing the geometric constraints of known angles and length ratios from the three control points. The likelihood for each constraint is modeled with normalized Gaussian function and the maximum joint likelihood is searched on Gaussian hemisphere to solve the plane normal. The plane distance is thus calculated readily from the actual distance between two arbitrary control points. Furthermore, the proposed BP3P algorithm can be extended to deal with more generalized planar constraints for localization rather than three control points. The proposed algorithm was validated with two real image experiments. In the first experiment, the algorithm was successfully applied to solve P3P problems. The multiple solution phenomenon of P3P was also illustrated and studied. In the second and third experiments, the algorithm was applied to localize planar object from generalized constraints with good results reported. |