2
我有以下代碼:如何查找OpenCV中最大矩形的座標?
findContours(src, contours, hierarchy, CV_RETR_EXTERNAL, CV_CHAIN_APPROX_SIMPLE);
Mat drawing = Mat::zeros(src.size(), CV_8UC3);
double largest_area = 0;
for(int i = 0; i < contours.size(); i++) { // get the largest contour
area = fabs(contourArea(contours[i]));
if(area >= largest_area){
largest_area = area;
largest_contours.clear();
largest_contours.push_back(contours[i]);
}
}
if(largest_area >= 3000){ // draw the largest contour if exceeded minimum largest area
drawContours(drawing, largest_contours, -1, Scalar(0,0,255), 2);
}
...產生如下輸出圖像:
我想要得到的四點座標(標記爲綠色),是可能?
如果輪廓是矩形,很難說計算機。嘗試['cv :: approxPolyDP()'](http://docs.opencv.org/modules/imgproc/doc/structural_analysis_and_shape_descriptors.html?highlight=approxpoly#approxpolydp)在最大輪廓上有合理的epsilon參數,它應該產生一個四邊形,四邊形的四角形多邊形。 –
嘗試HoughLinesP函數 – Micka
這裏[有些東西](http://stackoverflow.com/a/13532779/176769)這是[準備抓取](http://stackoverflow.com/a/26242885/176769)。 – karlphillip