如何使用perspectiveTransform
函數?opencv perspectiveTransform函數異常
當我的代碼運行時,會產生以下異常:
OpenCV Error: Assertion failed (scn + 1 == m.cols && (depth == CV_32F || depth == CV_64F)) in perspectiveTransform, file /Users/donbe/Documents/opencv/opencv/modules/core/src/matmul.cpp, line 1916
誰能幫我?
我下面的代碼:
Point2f srcTri[4];
Point2f dstTri[4];
Mat warp_mat;
Mat src;
/// Load the image
src = imread(argv[1], 1);
srcTri[0] = Point2f(0,0);
srcTri[1] = Point2f(src.cols,0);
srcTri[2] = Point2f(src.cols,src.rows);
srcTri[3] = Point2f(0,src.rows);
dstTri[0] = Point2f(0,0);
dstTri[1] = Point2f(src.cols/2,0);
dstTri[2] = Point2f(src.cols/2,src.rows);
dstTri[3] = Point2f(0,src.rows);
warp_mat = getPerspectiveTransform(srcTri, dstTri);
Mat warp_dst(src.size(), src.type());
//There will produce a exception.
perspectiveTransform(src, warp_dst, warp_mat);
namedWindow("Warp", CV_WINDOW_AUTOSIZE);
imshow("Warp", warp_dst);
waitKey(0);
return 0;
謝謝。有用。 – user432653 2011-12-22 08:59:42