我在 OpenCV 中有错误 "approxPolyDP(ROI_Vertices, ROI_Poly, 1.0, true)"
I have mistake "approxPolyDP(ROI_Vertices, ROI_Poly, 1.0, true)" in OpenCV
我不知道我做错了什么。
Mat mask(img.size(), CV_8UC1, Scalar::all(0));
// Create Polygon from vertices
vector<Point> ROI_Vertices(4);
ROI_Vertices.push_back(Point(196,40));
ROI_Vertices.push_back(Point(47,450));
ROI_Vertices.push_back(Point(204,450));
ROI_Vertices.push_back(Point(275,40));
vector<Point> ROI_Poly;
approxPolyDP(ROI_Vertices, ROI_Poly, 1.0, true);
// Fill polygon white
fillConvexPoly(mask, &ROI_Poly[0], ROI_Poly.size(), 255, 8, 0);
// Create new image for result storage
Mat resImage(480, 640, CV_8UC3);
// Cut out ROI and store it in imageDest
img.copyTo(resImage, mask);
imshow("h",img);
imshow("hh",resImage);
我认为我的程序可以识别
ROI_Vertices 有 Point(0,0)
我该如何解决这个问题?
那是 simple.Remove 点 (0,0)。进行以下更改
ROI_Vertices.clear();
我不知道我做错了什么。
Mat mask(img.size(), CV_8UC1, Scalar::all(0));
// Create Polygon from vertices
vector<Point> ROI_Vertices(4);
ROI_Vertices.push_back(Point(196,40));
ROI_Vertices.push_back(Point(47,450));
ROI_Vertices.push_back(Point(204,450));
ROI_Vertices.push_back(Point(275,40));
vector<Point> ROI_Poly;
approxPolyDP(ROI_Vertices, ROI_Poly, 1.0, true);
// Fill polygon white
fillConvexPoly(mask, &ROI_Poly[0], ROI_Poly.size(), 255, 8, 0);
// Create new image for result storage
Mat resImage(480, 640, CV_8UC3);
// Cut out ROI and store it in imageDest
img.copyTo(resImage, mask);
imshow("h",img);
imshow("hh",resImage);
我认为我的程序可以识别
ROI_Vertices 有 Point(0,0)
我该如何解决这个问题?
那是 simple.Remove 点 (0,0)。进行以下更改
ROI_Vertices.clear();