OpenCV cvFindContours - как разделить компоненты контура

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

Original Photo Contours Found

Кажется, из-за того, что монеты расположены так близко друг к другу, cvFindContours думает, что это один и тот же объект. Мой вопрос в том, как я могу разделить эти контуры на отдельные объекты или получить список уже разделенных контуров.

Параметры, которые я использовал для cvFindContours:

cvFindContours( img, storage, &contour, sizeof(CvContour), CV_RETR_LIST, CV_CHAIN_APPROX_SIMPLE, cvPoint(0, 0) );

Любая помощь или совет будут очень благодарны.

13
задан karlphillip 24 December 2013 в 14:43
поделиться