我有以下程序在前景对象上绘制边界框。 这个边界框将通过测量矩形一边的长度来帮助按长度分类对象。用于分类的前景对象上的边界矩形
现在,这只能在一个对象上绘制一个矩形实例,我想让它同时绘制它们。但我卡住了。需要指导或协助。请看附图。
Rect boundingRect(InputArray contours);
// Finds the contour with the largest area
int area = 200;
int idx = 0;
for(int i=0; i<contours.size() ;i++)
{
if(area < contours[i].size())
idx = i;
}
//cout<< contours.size();
// Calculates the bounding rect of the largest area contour
Rect rect = boundingRect(contours[idx]);
Point pt1, pt2;
pt1.x = rect.x;
pt1.y = rect.y;
pt2.x = rect.x + rect.width;
pt2.y = rect.y + rect.height;
cout<< idx<< "\t \t";
// Draws the rect in the original image and show it
rectangle(frame_Original, pt1, pt2, CV_RGB(0,0,255), 2);
//cout << pt1; cout << pt2;
你的意思是你想绘制图像中所有汽车的边界框? –
如果你有所有的斑点,我认为它会绘制所有的斑点。也许你已经以条件拒绝了其他人。 – Mzk
试试这个:http://docs.opencv.org/doc/tutorials/imgproc/shapedescriptors/bounding_rects_circles/bounding_rects_circles.html#bounding-rects-circles –