//轮廓筛选
vector<vector> finalcontours;
vector<vector> contours_poly(contours.size());
for (int i = 0; i < contours.size(); i++)
{
if (contourArea(contours[i]) > minarea)
{
//approxPolyDP(Mat(contours[i]), contours_poly[i], 3, true);
finalcontours.push_back(contours[i]);
}
}
//找到最大轮廓
double len = INT_MIN;
int index = 0;
for ( int i = 0; i < finalcontours.size(); i++)
{
double l = contourArea(finalcontours[i]);
if (l > len)
{
len = l;
index = i;
}
}
__________
if (finalcontours.size() != 0)
{
vector<Point2f> maxcontours(finalcontours[index].size());
approxPolyDP(Mat(finalcontours[index]), maxcontours, 0.02 * arcLength(finalcontours[index], true), true); //可通过修改近似曲线的阈值来
你怎么知道它是负数的,设置断点调试的吗
到approxPolyDP就直接中断了