0
cv::Mat thr;
std::vector<std::vector<cv::Point> > contours;
std::vector<std::vector<cv::Vec4i> > hierarchy;
int largest_area = 0;
int largest_contour_index = 0;
cv::findContours(thr, contours, hierarchy,CV_RETR_CCOMP, CV_CHAIN_APPROX_SIMPLE); // Find the contours in the image
for(int i = 0; i < contours.size(); i++) // iterate through each contour.
{
double a = contourArea(contours[i], false); // Find the area of contour
if(a > largest_area)
{
largest_area = a;
largest_contour_index = i; // Store the index of largest contour
}
}
找到最大輪廓的索引後該怎麼辦?如何刪除其內部區域的所有其他輪廓? 圖像是二進制的(cv :: Mat thr)。只是與白色區域的黑色背景。 謝謝。從圖像中減去除最大區域以外的所有輪廓
非常感謝!這正是我需要的。 – Pringles