diff options
-rw-r--r-- | src/argaze/ArFeatures.py | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/argaze/ArFeatures.py b/src/argaze/ArFeatures.py index e645ec7..7bbe1dc 100644 --- a/src/argaze/ArFeatures.py +++ b/src/argaze/ArFeatures.py @@ -204,6 +204,7 @@ class ArScene(): * **Returns:** - scene translation vector - scene rotation matrix + - pose estimation strategy - dict of markers used to estimate the pose """ @@ -224,8 +225,8 @@ class ArScene(): marker_id, marker = scene_markers.popitem() tvec, rmat = self.aruco_scene.estimate_pose_from_single_marker(marker) - - return tvec, rmat, {marker_id: marker} + + return tvec, rmat, 'estimate_pose_from_single_marker', {marker_id: marker} # Try to estimate scene pose from 3 markers defining an orthogonal axis elif len(scene_markers) >= 3 and len(self.aruco_axis) > 0: @@ -240,7 +241,7 @@ class ArScene(): tvec, rmat = self.aruco_scene.estimate_pose_from_axis_markers(origin_marker, horizontal_axis_marker, vertical_axis_marker) - return tvec, rmat, {origin_marker.identifier: origin_marker, horizontal_axis_marker.identifier: horizontal_axis_marker, vertical_axis_marker.identifier: vertical_axis_marker} + return tvec, rmat, 'estimate_pose_from_axis_markers', {origin_marker.identifier: origin_marker, horizontal_axis_marker.identifier: horizontal_axis_marker, vertical_axis_marker.identifier: vertical_axis_marker} except: pass @@ -258,7 +259,7 @@ class ArScene(): # Otherwise, estimate scene pose from all consistent markers pose tvec, rmat = self.aruco_scene.estimate_pose_from_markers(consistent_markers) - return tvec, rmat, consistent_markers + return tvec, rmat, strategy, 'estimate_pose_from_markers', consistent_markers def project(self, tvec: numpy.array, rvec: numpy.array, visual_hfov=0) -> AOI2DSceneType: """Project AOI scene according estimated pose and optional horizontal field of view clipping angle. |