Как я могу преобразовать контурный вектор в MAT? - PullRequest
0 голосов
/ 22 мая 2019

Это код, который я должен найти для контура изображения:

contour, heir= cv2.findContours(hmg,cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)

Я хочу найти область контура с помощью

cv2.contourArea(contour)

, но для этого требуется MATтип данных, а не тип вектора контура

Как преобразовать контур, чтобы я мог это сделать?

1 Ответ

1 голос
/ 22 мая 2019

Объект contour на самом деле представляет собой список всех контуров, найденных на изображении, каждый из которых имеет правильный формат.Такое имя, как contours, может быть более подходящим, но это не обязательно.

Ваш пост предполагает особый контур;это редко имеет место из-за фильтрации шума, но вы можете выделить контур, отсортировав его по убыванию:

contours, heir= cv2.findContours(hmg,cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
contours = sorted(contours, key=cv2.contourArea, reverse=True)
print(cv2.contourArea(contours[0]))
...