Iterative Closest Point Algorithm

Der Iterative Closest Point Algorithm (ICP) ist ein Algorithmus, der es ermöglicht, Punktwolken aneinander anzupassen. Für die Anwendung des Verfahrens müssen die Punktwolken bereits vorab näherungsweise aufeinander ausgerichtet sein.
Algorithmus
Bei der Durchführung des Algorithmus wird versucht, die Punktwolken mittels Rotation und Translation möglichst gut miteinander in Deckung zu bringen. Ausgehend von einem Satz von näherungsweise bestimmten anfänglichen Transformationsparametern für Rotation und Translation wird dazu für jeden Punkt aus der einen Punktwolke der jeweils nächste Punkt (closest point) aus der anderen Punktwolke bestimmt. Anschließend wird die Summe S der Quadrate der Abstände über alle diese Punktepaare gebildet. Damit hat man ein Maß für die Güte der Übereinstimmung zwischen den Punktwolken. Das Ziel ist es, dieses Optimierungsmaß, also die vorstehende Summe S, durch die Veränderung der Transformationsparameter zu minimieren. Für die Bestimmung der geeigneten Transformationsparameter gibt es unterschiedliche Ansätze, die z. T. auf der Struktur der zugrundeliegenden Punktwolken basieren. In jedem Falle handelt es sich dabei um einen iterativen Prozess, der so lange fortgeführt wird, bis ein akzeptables Optimum gefunden ist.
- Schritt 0: Näherungsweises Bestimmen der anfänglichen Transformationsparameter für Rotation R(0) und Translation T(0)
- ...
- Schritt n.1: Anwendung der Transformation mit den Parametern R(n-1) und T(n-1)
- Schritt n.2: Für jeden Punkt aus der einen Punktwolke Bestimmung des jeweils nächstgelegenen Punktes (closest point) aus der anderen Punktwolke
- Schritt n.3: Berechnung der Summe S der Abstandsquadrate der vorgenannten Punktepaare
- Schritt n.4: Bestimmung von neuen Transformationsparametern R(n) und T(n) [abgeleitet aus der Struktur der Punktwolken]
- ...
- Abbruch der Iteration, wenn im n-ten Schritt die Summe S(n) eine definierte Schwelle unterschreitet.
Anwendungen
Der Algorithmus wird vor allem zur relativen Registrierung von Punktwolken verwendet, womit aus mehreren Punktwolken ein Gesamtmodell erzeugt werden kann. Die Einzelpunktwolken können dabei z. B. durch Laserscanning oder photogrammetrische Verfahren der automatischen Bildzuordnung (dense image matching) erzeugt werden.
Ein weiteres Anwendungsgebiet ist die Lokalisierung in der Robotik, ein Teilproblem von Simultaneous Localization and Mapping.
Weblinks
- PCL (Point Cloud Library)[1] ist ein Open-Source-Framework für n-dimensionale Punktwolken und 3D-Geometrieverarbeitung. Es umfasst mehrere Varianten des ICP-Algorithmus.
- FastICP paper – Vergleich verschiedener ICP-Varianten (PDF-Datei; 784 kB)
- Grundlage für ICP – Das Überführen von Koordinatensystemen ineinander mit Hilfe von Quaternionen (PDF-Datei; 1,6 MB)
Einzelnachweise
- ↑ Dirk Holz, Alexandru E. Ichim, Federico Tombari, Radu B. Rusu, Sven Behnke: Registration with the Point Cloud Library: A Modular Framework for Aligning in 3-D. In: IEEE Robotics Automation Magazine. 22. Jahrgang, Nr. 4, 2015, S. 110–124, doi:10.1109/MRA.2015.2432331 (englisch, researchgate.net).
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.