2017-02-01 3 views
0

Ich habe vier Kameras, die an einer festen Position sind. So kann ich unter Verwendung eines Lineals (physikalisch) die Entfernung (gleichmäßige Drehung) zwischen ihnen messen. Kamera eins und zwei gibt mir eine Punktwolke und Kamera drei und vier gibt mir eine weitere Punktwolke. Ich muss diese Punktwolken zusammenführen.So führen Sie zwei 3D-Punktwolken zusammen, in denen sich Kameras an einer festen Position befinden.

Soweit ich habe verstanden, dass ICP und andere solche Algorithmen eine starre Transformation von einer Punktwolke, um die anderen zu tun. Meine Frage ist, wie kann ich das zusätzliche Wissen (Entfernung zwischen den Kameras in Zentimeter) für diese Transformation nutzen.

Ich bin ziemlich neu in so einer Arbeit also, bitte korrigieren Sie mich, wenn ich etwas falsch verstanden habe. Und danke im Voraus.

+0

Verwenden von Kamerapositionen, um die Punktwolkenkoordinaten zu transformieren und sie dann zusammenzufügen, sollte tun, was Sie wollen, möglicherweise mit ** einigen artifacs **. Nicht sicher, ob es sinnvoll ist, zwei Punktwolken zusammenzuführen, ohne dass eine Untergruppe von gemeinsamen Kameras dazwischen liegt. – NAmorim

+0

icp benötigt immer eine erste Registrierung. Berechne einfach die starre Transformation aus deinen stationären Kamerapositionen und benutze anschließend das icp. – Micka

Antwort

1

Erstens, welche Art von Genauigkeit suchen Sie und über welches Volumen von Raum? Das Erzielen einer Genauigkeit von 0,1 mm bei einer Tischplatte von 0,5 m ist ein völlig anderes Problem (hinsichtlich des mechanischen Designs und der Beschränkungen) als einige mm über einen Boden, der mehrere Meter breit ist.

Im Allgemeinen, mit einer gut rekonstruierten und eindeutigen Objektform, wird ICP Ihnen immer eine bessere Lösung als manuelle Messungen geben.

Wenn die Kameras statisch sind, besteht ein Kalibrierungsproblem, und Sie müssen Ihr 4-Kamera-Rig nur beim Setup kalibrieren und wenn sich die Konfiguration aus irgendeinem Grund ändert.

Ich empfehle, ein Kalibrierungsobjekt mit genau bekannter Größe und Geometrie, z. ein bearbeitetes Polyeder. Sie können Punktwolken generieren und ICP-Register für sie registrieren, dann passen Sie die verschmolzene Wolke an die bekannte Geometrie an und erhalten so Position und Ausrichtung jeder einzelnen Punktwolke in Bezug auf das feste Objekt. Von diesen können Sie die Posen der Kameras w.r.t. gegenseitig.

+0

Vielen Dank. Wie geht man mit Fällen um, in denen die Kameras eine leichte Verschiebung haben? Angenommen, eine Person trägt sie. So kann es sich aufgrund von Bewegung der Kleidung vielleicht etwas bewegen. Wenn es keine Verschiebung gibt, ist es in Ordnung, die extrinsischen Parameter nur einmal am Anfang zu berechnen? – Bashima

+0

1) wiederholbare (statische) Szene <-> Kalibrierung mit bekannter Szenengeometrie, einmal durchgeführt. 2) nicht statische Szene <-> hängt davon ab. Wenn kleine Abweichungen von einer kalibrierten Geometrie vorliegen, kann ICP den aktuellen Szeneninhalt verwenden, indem die Kalibrierung als Ausgangsbedingung verwendet wird. Bitte denken Sie daran, upvote oder akzeptieren Sie die Antwort, wenn Sie es nützlich finden. –

Verwandte Themen