Как найти контур, ближайший к центру изображения?

#c #opencv #contour #opencv-contour

#c #opencv #контур

Вопрос:

Как найти контур, ближайший к центру изображения?

Например, на изображении ниже я использовал cv::findContours(), чтобы найти два контура изображения (пожалуйста, не обращайте внимания на 5-пиксельную часть, поскольку я использовал это изображение в другом сообщении SO), возможно ли найти индекс контура красного контура, который ближе всего к центру изображения?

Imgur

В настоящее время я использую cv::pointPolygonTest и зацикливаю контуры с координатами центра изображения, чтобы найти расстояние между каждым контуром и центром, это кажется неэффективным, есть ли какая-либо функция opencv, которую я могу использовать?

Комментарии:

1. Где находится центр изображения?

2. @BahramdunAdil Я отредактировал изображение, черная точка находится в центре изображения

3. Где внутри изображения контур и что вы подразумеваете под 5pixel? На вашем изображении контур уже находится в центре.

4. @BahramdunAdil Игнорируйте 5 пикселей. Красная линия и черная линия — это два контура, которые я нашел с помощью findContours(). Как я могу получить индекс красного контура?