2016-06-09 1 views
0

J'essaie d'effectuer une homologation de nuage de points via ICP (point le plus proche itératif) et j'utilise l'algorithme pcl::IterativeClosestPoint de la bibliothèque PCL.Enregistrement de nuages ​​de points via ICP robuste à un grand nombre de valeurs aberrantes

Mais il semble que ce n'est pas robuste à un grand nombre de valeurs aberrantes. La zone de broderie entourée d'un stylo rouge «attire» le nuage de points vers elle et le nuage de points n'est pas parfaitement aligné. enter image description here enter image description hereenter image description here

est-il une variante robuste de l'algorithme ICP (ou tout autre algorithme d'enregistrement) qui peut le manipuler?

Répondre

1

Jetez un oeil à ma réponse here, je décris un pipeline qui pourrait être utile pour votre cas. Fondamentalement, vous devez trouver des correspondances inlier entre les deux nuages ​​de points et obtenir/appliquer une transformation initiale. Ensuite, vous pouvez utiliser ICP pour affiner votre inscription.

+0

J'ai essayé l'approche de correspondance 3D comme ici http://pointclouds.org/documentation/tutorials/template_alignment.php mais le résultat est encore pire (peut-être parce que j'ai deux nuages ​​de points qui sont proches de la forme de l'avion?). Y a-t-il aussi une option pour restreindre les transformations en cas de correspondance ICP et 3D? – mrgloom

+0

Aussi, j'ai trouvé ce document utile http://lgg.epfl.ch/~ichim/registration_tutorial_ram_2015/data/registration_paper_tutorial_ram_2015.pdf – mrgloom

+0

Je peux avoir une autre solution pour votre scénario qui est plus simple. Puisque vous pouvez rapprocher vos nuages ​​d'un plan, essayez d'appliquer une [segmentation planaire] (http://pointclouds.org/documentation/tutorials/planar_segmentation.php), puis appliquez directement ICP aux inliers (points qui se trouveront sur le plan). avion). Cela devrait permettre une bonne inscription. – Finfa811