When gnss calibration is achieved and I try to convert a sl.Pose object to a sl.GeoPose object,
the resulting sl.GeoPose object has a heading of zero.
def get_geopose(self,pose:Union[sl.Pose,np.ndarray]) -> sl.GeoPose:
geopose = sl.GeoPose()
if isinstance(pose,np.ndarray):
pose: sl.Pose = pose_from_numpy(pose)
gnss_state : sl.GNSS_CALIBRATION_STATE = self.fusion.camera_to_geo(pose,geopose)
return geopose
>> geo_pose: sl.GeoPose = fusion.get_geopose(image_georect.pose)
>> geo_pose.heading
0.0
Any ideas why this is?
** pose info:
<pyzed.sl.Pose object at 0x7f774dfeb2d0>
special variables
function variables
pose_confidence:
0
pose_covariance:
array([ 1.21106258e+10, -7.78711872e+08, 6.20275866e+09, 9.63872254e-01,
4.39816467e+02, 6.03725624e+01, -7.78711616e+08, 1.54839327e+10,
1.54020288e+09, -4.53894989e+02, 1.63612187e+00, -2.29778748e+02,
6.20275814e+09, 1.54020224e+09, 3.66498381e+09, -6.35581093e+01,
2.25773514e+02, -3.02111030e+00, 9.63873982e-01, -4.53894989e+02,
-6.35581169e+01, 2.30650530e-05, 1.18429689e-07, -2.39701876e-07,
4.39816467e+02, 1.63611591e+00, 2.25773499e+02, 1.18429604e-07,
2.22182734e-05, -4.53915561e-07, 6.03725739e+01, -2.29778809e+02,
-3.02110863e+00, -2.39701279e-07, -4.53915447e-07, 2.31341655e-05])
special variables
[0:36] :
[12110625792.0, -778711872.0, 6202758656.0, 0.9638722538948059, 439.81646728515625, 60.372562408447266, -778711616.0, 15483932672.0, 1540202880.0, -453.8949890136719, 1.6361218690872192, -229.77874755859375, 6202758144.0, 1540202240.0, 3664983808.0, -63.558109283447266, 225.7735137939453, -3.0211102962493896, 0.9638739824295044, -453.8949890136719, -63.5581169128418, 2.306505302840378e-05, 1.1842968916653263e-07, -2.397018761257641e-07, 439.81646728515625, 1.6361159086227417, 225.77349853515625, 1.1842960390140433e-07, 2.2218273443286307e-05, -4.539155611382739e-07, 60.37257385253906, -229.77880859375, -3.021108627319336, -2.3970127926986606e-07, -4.539154474514362e-07, 2.3134165530791506e-05]
dtype:
dtype('float64')
max:
15483932672.0
min:
-778711872.0
shape:
(36,)
size:
36
timestamp:
<pyzed.sl.Timestamp object at 0x7f77700f01d0>
twist:
array([3.47285720e-12, 7.31619239e+28, 1.46074732e-19, 1.15783705e+27,
1.11281946e+27, 3.47285720e-12])
twist_covariance:
array([7.31619239e+28, 1.43533634e-19, 7.39884024e+31, 6.99827890e+28,
1.12888051e+16, 2.24808688e+14, 1.36494234e+10, 2.35657557e+14,
1.89176549e+23, 7.18458933e+22, 6.99825765e+28, 3.03031554e+24,
8.21333374e+02, 4.19363264e+15, 1.89176549e+23, 7.18458933e+22,
1.85211894e+25, 1.32913693e+19, 1.60196605e-19, 1.83931620e+25,
1.69290389e+22, 2.67924208e+20, 2.03118455e+32, 5.69110945e-08,
2.06991014e-19, 1.89657003e+28, 1.79046294e+28, 1.21188894e+25,
1.58780395e-19, 5.69110945e-08, 2.06991014e-19, 1.80372452e+28,
3.35246645e-41, 0.00000000e+00, 7.62306365e-43, 0.00000000e+00])
valid:
False