2
이 이미지에서 가장 큰 윤곽선/직사각형을 찾아야합니다. 최대 직사각형 찾기 및 그려 내기 OpenCV
다음 코드를 사용하려고하지만 난 아무 도면 얻을 :
이int largest_area=0;
int largest_contour_index=0;
cv::Rect bounding_rect;
Mat thr(src.rows,src.cols,CV_8UC1);
Mat dst(src.rows,src.cols,CV_8UC1,Scalar::all(0));
cvtColor(src,thr,CV_BGR2GRAY); //Convert to gray
threshold(thr, thr,25, 255,THRESH_BINARY); //Threshold the gray
vector<vector<cv::Point>> contours; // Vector for storing contour
vector<Vec4i> hierarchy;
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
bounding_rect=boundingRect(contours[i]); // Find the bounding rectangle for biggest contour
}
}
Scalar color(255,255,255);
drawContours(dst, contours,largest_contour_index, color, CV_FILLED, 8, hierarchy); // Draw the largest contour using previously stored index.
rectangle(src, bounding_rect, Scalar(0,255,0),1, 8,0);
사람이 가장 큰 RECT를 찾으려면이 이미지를 사용하는 예제로 날을 제공 할 수 있습니까?