2016-02-21 4 views
3

Я пытался найти центр изогнутой формы (например, банан). Я могу сделать все основы, например, создать двоичное изображение и найти контур. Однако функция центроида правильно находит точку вне контура. Точка, в которой я нуждаюсь, должна находиться внутри контура. Я прикрепил изображение, которое должно объяснить все лучше.Обнаружение центра изогнутой формы с opencv

Если у кого есть какие-либо идеи или что-то подобное, я бы очень признателен за помощь.

enter image description here

+1

Посетите это http://www.pyimagesearch.com/2016/02/01/opencv-center-of-contour/ – udit043

+0

Здравствуйте @ udit043 благодарю вас за ответ. В примерах этой статьи используются только основные полигоны и круги. Форма, которую я использую, приводит к тому, что центр тяжести находится вне контура. Как показано на рисунке. Вы видели пример с использованием изогнутой формы? –

+0

http://stackoverflow.com/questions/12327791/opencv-centroid-of-irregular-shape – udit043

ответ

0

Вы можете посмотреть на этот ответ, What is the fastest way to find the "visual" center of an irregularly shaped polygon?

В основном skeletonisation алгоритмы должны помочь (с точки зрения эффективности и точности по сравнению с непрерывной эрозии, которая провалится в некоторых случаях), так как они сужают вниз по множеству возможных действительных точек к набору сегментов линии, которые затем можно выполнить как бы условную обработку.