Opencv Как определить 4 угла прямоугольника после применения cv::findContours и cv::drawContour

Мои проблемы: я хочу найти 4 угла прямоугольников после использования cvfindcontours? Вот мой результат:

изображение:
введите здесь описание изображения

Как найти 4 угла каждого прямоугольника? Я думаю, что функция построения Cv находит и рисует контуры, имеет информацию об углах, так как я могу ее прочитать?


person LÙn LÒe LOẹt    schedule 06.01.2014    source источник
comment
используйте minAreaRect для рисования минимальных ограничивающих прямоугольников к этим контурам. Затем используйте их вершины.   -  person baci    schedule 06.01.2014


Ответы (1)


(изменено из здесь)

// Find the rotated rectangles for each contour
vector<cv::RotatedRect> cv::minRect( contours.size() );

for( size_t = 0; i < contours.size(); i++ )
{
    minRect[i] = minAreaRect( cv::Mat(contours[i]) );
}

Если вам нужны фактические точки на контуре, вы можете позже найти для каждого контура точки, которые находятся ближе всего к каждому из углов RotatedRect.

person Rosa Gronchi    schedule 06.01.2014
comment
Это мой результат после применения cv::findContours и cv::drawContour: /32b4b9a9 =›› как мне найти 4 угла этого прямоугольника? - person LÙn LÒe LOẹt; 12.01.2014