Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

convertPointsToHomogeneous doesn't work with double

Hi all!

I'm using the convertPointsToHomogeneous() function but, I'm having some trouble using it with Point_d objects. Here is my code:

vector<Point2d> pointsIm1;
vector<Point2d> pointsIm2;
vector<Point3d> hpointsIm1; 
vector<Point3d> hpointsIm2; 

Mat(matchPointsImage1).copyTo(pointsIm1);
Mat(matchPointsImage2).copyTo(pointsIm2);
convertPointsToHomogeneous(pointsIm1, hpointsIm1);

I don't understand why it works fine if I use Point2f and Point3f instead of Point2d and Point3d. Any idea? Here is the error:

OpenCV Error: Assertion failed (npoints >= 0 && (src.depth() == CV_32F || src.depth() == CV_32S)) in convertPointsToHomogeneous

The number of points is not null (so npoints>=0) but i don't know how to check the depth(). Thanks!