Diese Kapitel enthält Operatoren für die Mehrbild-Stereo 3D-Rekonstruktion.
Mit der Mehrbild-Stereo 3D-Rekonstruktion ist es möglich, aus 2D-Bildern von mehreren Kameras 3D-Objekte zu generieren. Es kann entweder die komplette 3D-Oberfläche eines Objekts rekonstruiert werden, oder es können auch nur einzelne 3D-Punkte rekonstruiert werden.
Im Folgenden werden kurz die notwendigen Schritte beschrieben, um
3D-Oberflächen oder 3D-Punkte zu rekonstruieren. Beachten Sie, dass ein
gut kalibriertes Kamerasetup die Grundvoraussetzung für eine präzise
3D-Rekonstruktion ist; siehe dazu Kalibrierung für mehr
Details. Außerdem wird in dem HDevelop Beispiel
reconstruct_surface_mixed_camera_types.hdev
der typische Ablauf
einer Kalibrierung nachvollzogen (vom Kalibrierdatenmodell über das
Kameraaufbaumodell hin zum Stereomodell).
Zuerst muss das Stereomodell erstellt werden. Dies geschieht mit dem Operator
Falls 3D-Punkte rekonstruiert werden sollen, wählen Sie die Methode
'points_3d'
.
Für die Rekonstruktion von Oberflächen stehen zwei Methoden zur Auswahl:
'surface_pairwise'
und 'surface_fusion'
. Detaillierte
Informationen zu beiden Methoden können in der Referenz von
nachgelesen werden.
reconstruct_surface_stereo
(1) | (2) | (3) |
(1) | (2) | (3) |
Bei der 3D-Rekonstruktion von Oberflächen werden mehrere binokulare
Stereorekonstruktionen ausgeführt und dann kombiniert. Für diese
binokulare Rekonstruktion müssen Bildpaare spezifiziert werden.
Beispielsweise könnten die Bildpaare für die Bilder oben [0,1]
und [1,2]
sein. Die Bildpaare können mit
spezifiziert, und mit
abgefragt werden.
Mehr Informationen können in den Referenzen von
und den oben genannten Operatoren
nachgelesen werden.
reconstruct_surface_stereo
Mit
können die Einstellungen der 3D-Rekonstruktion für das jeweils individuelle Setup optimiert werden.
Bei der Rekonstruktion von Oberflächen ist es sehr empfehlenswert, die
3D-Rekonstruktion mit einem umschließenden Quader (einer
'bounding box'
) einzuschränken. Diese sollte
das zu rekonstruierende Objekt so eng wie möglich umschließen.
Wenn die Methode 'surface_fusion'
in
verwendet wird, sollten dennoch zuerst die
Parameter der create_stereo_model
'surface_pairwise'
-Methode optimiert werden, da
deren Ergebnis als Grundlage hergenommen wird. Die einzelnen Parameter
werden in den Beispielen
reconstruct_surface_stereo_pairwise_workflow.hdev
und
reconstruct_surface_stereo_fusion_workflow.hdev
näher
betrachtet.
Die Parameter können mit
abgefragt werden.
Um dann die eigentliche Rekonstruktion auszuführen, stehen
zur Verfügung.
Es ist zu beachten, dass die Zwischenergebnisse nur abgerufen werden
können, wenn der 'persistence'
-Modus mit
aktiviert wurde.
set_stereo_model_param
Mit
können die Zwischenergebnisse der Oberflächenrekonstruktion von
abgerufen und inspiziert werden.
Diese Bilder können benutzt werden, wenn ein Problem in der
Rekonstruktion zurückverfolgt werden muss.
reconstruct_surface_stereo
Mit
kann das 3D-Objektmodell abgerufen werden, dass als Zwischenergebnis mit
unter Verwendung der Methode
reconstruct_surface_stereo
'surface_fusion'
abgespeichert wurde.
clear_stereo_model
create_stereo_model
get_stereo_model_image_pairs
get_stereo_model_object
get_stereo_model_object_model_3d
get_stereo_model_param
reconstruct_points_stereo
reconstruct_surface_stereo
set_stereo_model_image_pairs
set_stereo_model_param