From aa3dada2fea1c404db1626568dafa7767a52ad21 Mon Sep 17 00:00:00 2001 From: Ilya Lysenkov Date: Wed, 1 Jun 2011 08:14:59 +0000 Subject: [PATCH] Added support of the CV_64F depth to solvePnP (ticket #835) --- modules/calib3d/src/solvepnp.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/calib3d/src/solvepnp.cpp b/modules/calib3d/src/solvepnp.cpp index a17a6c1..774e365 100644 --- a/modules/calib3d/src/solvepnp.cpp +++ b/modules/calib3d/src/solvepnp.cpp @@ -48,8 +48,8 @@ void cv::solvePnP( const InputArray& _opoints, const InputArray& _ipoints, OutputArray _rvec, OutputArray _tvec, bool useExtrinsicGuess ) { Mat opoints = _opoints.getMat(), ipoints = _ipoints.getMat(); - int npoints = opoints.checkVector(3, CV_32F); - CV_Assert( npoints >= 0 && npoints == ipoints.checkVector(2, CV_32F) ); + int npoints = std::max(opoints.checkVector(3, CV_32F), opoints.checkVector(3, CV_64F)); + CV_Assert( npoints >= 0 && npoints == std::max(ipoints.checkVector(2, CV_32F), ipoints.checkVector(2, CV_64F)) ); _rvec.create(3, 1, CV_64F); _tvec.create(3, 1, CV_64F); -- 2.7.4