fillConvexPoly
関数を使用してマスク内の三角形を塗り潰そうとしています。 しかし、私は次のエラーが発生します。 trOutCroppedIntがそうように定義私はそうなどの関数を呼び出しC++のOpenCV fillConvexPoly関数が例外をスローする
OpenCV Error: Assertion failed (points.checkVector(2, CV_32S) >= 0) in fillConvexPoly, file /home/iris/Downloads/opencv-3.1.0/modules/imgproc/src/drawing.cpp, line 2256
terminate called after throwing an instance of 'cv::Exception'
what(): /home/iris/Downloads/opencv-3.1.0/modules/imgproc/src/drawing.cpp:2256: error: (-215) points.checkVector(2, CV_32S) >= 0 in function fillConvexPoly
、
cv::Mat mask = cv::Mat::zeros(r2.size(), CV_32FC3);
cv::fillConvexPoly(mask, trOutCroppedInt, cv::Scalar(1.0, 1.0, 1.0), 16, 0);
、
std::vector<cv::Point> trOutCroppedInt
そしてIはベクトルで3点を押し、
[83, 46; 0, 48; 39, 0]
このエラーを修正する方法r?エラーpoints.checkVector約
[mcve]を投稿してください。これは完璧に私のために、おそらくあなたが表示されていないコードにいくつかの問題があります – Miki