Thanks David, this was a bug in image_geometry. It's now fixed on trunk, issue #4053 . Patrick On Sun, May 2, 2010 at 3:16 AM, David Feil-Seifer < david.feilseifer@gmail.com> wrote: > When using the PinholeCameraModel class, I'm getting the following > runtime error: > > OpenCV Error: Assertion failed (src.isContinuous() && src.depth() == > CV_32F && ((src.rows == 1 && src.channels() == 2) || > src.cols*src.channels() == 2)) in undistortPoints, file > > /home/dfseifer/ros/stacks/vision_opencv/opencv2/build/opencv-svn/src/cv/cvundistort.cpp, > line 383 > > with the following code: > > cv::Point2d uv; > uv.x = b.x; uv.y = b.y; //valid image coords > cv::Point2d uvrect; > pcam_.rectifyPoint( uv, uvrect ); > > I made this error go away when I changed the rectifyPoint section to > the following: > > > const cv::Mat src_pt(1, 1, CV_32FC2, const_cast(&uv_raw.x)); > cv::Mat dst_pt(1, 1, CV_32FC2, &uv_rect.x); > cv::undistortPoints(src_pt, dst_pt, K_, D_, R_, P_); > > where CV_32FC2 used to be CV_64FC2 > > I am using box_turtle release (updated today) with Ubuntu 10.04. > > My question is, was this a bug in the image_geometry package, or was > my code wrong? > > Thanks as always, > -Dave > _______________________________________________ > ros-users mailing list > ros-users@code.ros.org > https://code.ros.org/mailman/listinfo/ros-users >