2012-09-04 2 views
0

J'utilise GPC (General Polygon Clipper) pour créer des ensembles d'images. Je suis incapable de déterminer si les images proviennent d'ensembles disjoints. J'utilise une struct gpc_polygon définie au lien ci-dessus, en lisant la liste de sommets à partir d'une donnée d'image (lat/lon de coins) ... Et en ajoutant séquentiellement des images à un polygone.C++ Déterminer les images dans un contour de polygone

Il est important de séparer les images appartenant à des régions distinctes. Bien que je ne puisse pas dire avec certitude que la zone d'intersection sera non nulle (ce qui aurait été un test parfait), j'ai remarqué que le num_contours du polygone complété coïncide avec le nombre de régions distinctes.

Je pensais que je peux utiliser num_contours pour déterminer si une image appartient à un ensemble. Pourtant, comme j'ajoute des images, je peux voir, sur une image, num_contours = 1, après la seconde, elle augmente à 2 (que l'image soit dans la même section ou non, et cela a du sens). mais ça n'augmente pas après ça, jusqu'à ce que le pattern des images disjointes soit vraiment éteint - donc je ne peux pas vraiment l'utiliser pour tester, du moins pas tout seul. C'est la même chose que je supprime des images du polygone, en utilisant un opérateur DIFF. Si quelqu'un d'autre a utilisé GPC, ou une autre méthode de convolution polygonale, vous pouvez peut-être me donner des conseils sur ce que je peux utiliser pour identifier quelles images appartiennent à chaque contour, donc je peux les séparer avant ou après , création de polygones?

Répondre

0

J'ai utilisé num_contours, avec une valeur limite de 2 au lieu de 1, et j'ai dû revenir itérativement, et essayer de rajouter des contours, jusqu'à ce que je ne puisse plus les ajouter. La solution est sous-optimale, peut être très lente, et il y a des situations où les polygones qui n'appartiennent pas ensemble se retrouvent dans le même contour.

Questions connexes