He estado jugando con OpenCV y con una gran cantidad de intentos de prueba y error he podido aprender a detectar círculos (monedas) en una foto. Todo funciona muy bien, excepto cuando coloco monedas directamente una al lado de la otra (como se ve a continuación, ignore el hecho de que la segunda imagen está boca abajo).OpenCV cvFindContours - cómo separe los componentes de un contorno
Parece pues que las monedas están tan cerca cvFindContours piensan que son el mismo objeto. Mi pregunta es cómo puedo separar estos contornos en objetos separados u obtener una lista de contornos que ya están separados.
Los parámetros que utilicé para cvFindContours son:
cvFindContours(img, storage, &contour, sizeof(CvContour), CV_RETR_LIST, CV_CHAIN_APPROX_SIMPLE, cvPoint(0, 0));
Cualquier ayuda o consejo sería muy apreciada.
Desde el "después" de la imagen, se puede utilizar un Hough modificada transformar (http: //opencv.willowgarage .com/documentation/STRAWMAN/cpp/feature_detection.html # cv-houghcircles) para detectar círculos en su imagen, debería proporcionarle resultados razonables – etarion