C ++ - ObjC OpenCV Restringido Delaunay

mplementé con éxito una triangulación de Delaunay de un contorno en OpenCV 2.3.1.

Con cvPointPolygonTest puedo obtener todos los triángulos en el casco convexo, luego intenté realizar otra prueba de cvPointPolygonTest en el centroide de triángulos para saber si sonen el contorno principal o no, entonces puedo tener la triangulación restringida del contorno.

Pero, no funciona bien, ya que algunos triángulos lo son (por ejemplo, con un hombre que camina y que tiene las dos piernas distantes) 'sobre' un agujero.

¿Alguien sabe una forma de realizar una triangulación restringida? Pensé en convexityDefects, pero no puedo entender cómo comenzar con esto.

Gracias por adelantado

Ben

De hecho, no es un problema de defectos del casco convexo, sino uno de triangulación. Esta imagen te mostrará el problema:

http: //img191.imageshack.us/img191/7527/capturedcran20111128180.pn

Particularmente en la parte inferior del casco triangulado, puede ver que la triangulación está dentro Y fuera del contorno, porque OpenCV está triangulando el casco convexo. Me gustaría encontrar una forma de triangular el contorno mismo.

Encontré algunas ideas sobre cómo agregar Steiner Points en el contorno mismo, pero no puedo encontrar por dónde comenzar con OpenCV.

Mi idea era:

test si el triángulo está dentro Y fuera del contorno; si es verdadero: obtenga el punto de intersección; y agréguelo a cvSubdiv2D.

¿Estoy en lo cierto con esto?

Gracias por su paciencia y sus respuestas!

Respuestas a la pregunta(2)

Su respuesta a la pregunta