РЕДАКТИРОВАТЬ: Чтобы уточнить, если мой вопрос не ясен,
- Ввод: Изображение ниже
- Вывод: точки на ребре 1, точки на ребре 2, точки на ребре 3 и точки на ребре 4. (У I нет проблемы с поиском контуров. Я просто не могу отделить точки, которые лежатна каждом из четырех ребер. Я хочу сгруппировать эти точки в четыре отдельных ребра, чтобы я мог подогнать к ним четыре отдельные кривые)
Моя проблема здесь заключается в обнаружении точеки подгоните отдельные кривые к каждому из изогнутых краев объектов, как показано ниже (Показанное изображение является одним из примеров. Фактическая форма каждого объекта отличается, но будет либо острый угол, либо изменениепо уклону от одного края к другому):
Один из способов достижения этого состоит в выделении точек / пикселей на каждом ребре (четыре линиив приведенном выше примере) и поместите многочлены на каждом из них.Немного поиска, я узнал, что Hough Transform доступен для обнаружения прямых кромок в OpenCV, но не для изогнутых кромок.Я также попытался определить контуры, но они не выделяют края замкнутой формы.Основным критерием, по которому край считается отдельным от соседнего, является резкое изменение наклона.
Может ли кто-нибудь дать мне идеи о том, как этого добиться?Я предпочитаю использовать C ++ с OpenCV из-за других модулей моей задачи.