gpt4 book ai didi

c++ - findcontours opencv中的段错误

转载 作者:行者123 更新时间:2023-11-28 00:07:18 26 4
gpt4 key购买 nike

我正在尝试检测一个球并为其划定边界。显示错误

segmentation fault (core dumped)

错误就在这里,

vector<vector<Point> > contours;
vector<Vec4i> hierarchy;

Mat itt = Mat::zeros( imgThresholded.size(), CV_8UC1 );
itt = imgThresholded*255;

Canny( itt ,itt, 10, 30, 3 );
vector<vector<Point> > contours_poly( contours.size() );
vector<Point2f>center( contours.size() );
vector<float>radius( contours.size() );
vector<Rect> boundRect( contours.size() );
imshow("canny", itt);
//CIRCLE HOUGH
//vector<Vec3f> circles;
findContours( itt, contours, hierarchy, CV_RETR_TREE, CV_CHAIN_APPROX_SIMPLE, Point(0, 0) );
for( int i = 0; i < contours.size(); i++ )
{
Scalar color = Scalar(255,255,255);

if( contours[i].size() > points )
{approxPolyDP( Mat(contours[i]), contours_poly[i], 3, true );
boundRect[i] = boundingRect( Mat(contours_poly[i]) );
minEnclosingCircle( (Mat)contours_poly[i], center[i], radius[i] );
circle( imgOriginal, center[i], (int)radius[i],color, 2, 8, 0 );
}
}

我无法理解哪里有段错误。

最佳答案

在 findContours 之后声明其他 vector ,如下所示。如需进一步引用,您可以查看 here .希望这可以解决您的错误。我遇到了同样的错误,并在我提到的链接中找到了解决方案。

findContours( itt, contours, hierarchy, CV_RETR_TREE, CV_CHAIN_APPROX_SIMPLE, Point(0, 0) );
vector<vector<Point> > contours_poly( contours.size() );
vector<Point2f>center( contours.size() );
vector<float>radius( contours.size() );
vector<Rect> boundRect( contours.size() );

关于c++ - findcontours opencv中的段错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34842547/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com