When I call sl.GeoPose.pose_covariance(), it raises an IndexError:
@classmethod
def from_geopose(cls,
geo_pose:sl.GeoPose,
timestamp:datetime.datetime
) -> "Position":
transform = sl.Transform()
transform.init_matrix(geo_pose.pose_data)
pose_angles:np.ndarray = transform.get_rotation_vector()
pitch:float = pose_angles[0]
roll:float = pose_angles[1]
pose_covariance:np.ndarray = geo_pose.pose_covariance()
>> geo_pose.pose_covariance()
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "pyzed/sl.pyx", line 11209, in pyzed.sl.GeoPose.pose_covariance.__get__
IndexError: list assignment index out of range
Debugger info:
geo_pose
<pyzed.sl.GeoPose object at 0x7f77743b6840>
special variables
heading:
0.0
horizontal_accuracy:
0.0
latlng_coordinates:
<pyzed.sl.LatLng object at 0x7f777014bae0>
pose_covariance:
'Traceback (most recent call last):\n File "/home/dunbar/.vscode/extensions/ms-python.python-2024.2.1/pythonFiles/lib/python/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_resolver.py", line 189, in _get_py_dictionary\n attr = getattr(var, name)\n File "pyzed/sl.pyx", line 11209, in pyzed.sl.GeoPose.pose_covariance.__get__\nIndexError: list assignment index out of range\n'
pose_data:
557071610AA0
1.000000 0.000000 0.000000 0.000000
0.000000 1.000000 0.000000 0.000000
0.000000 0.000000 1.000000 0.000000
0.000000 0.000000 0.000000 1.000000
timestamp:
<pyzed.sl.Timestamp object at 0x7f77700f3fd0>
vertical_accuracy:
0.0
One thought I had is that my initparams has the unit RIGHT_HANDED_Z_UP:
init:
camera_fps: 30
coordinate_units: METER
coordinate_system: RIGHT_HANDED_Z_UP
maybe this is causing the error?