Hi Team,
we are trying to invoke reset_positional_tracking method of zed to calibrate its pose base on known tag position, however we found this method is very slow, it takes about 1 sec in my code, could you suggest if we can improve its performance? Thanks!
Hi @phenixyu
Please add more information. Can you share your code for testing?
Hi Myzhar,
Thanks for your quick reply, below is my method to reset positional tracking, this method take almost 1 sec.
def __reset_position_tracking(self, tvec, rvec):
transform = sl.Transform()
translation = sl.Translation()
translation.init_vector(tvec[0], tvec[1], tvec[2])
transform.set_translation(translation)
transform.set_rotation_vector(rvec[0], rvec[1], rvec[2])
transform.inverse()
self.zed.reset_positional_tracking(transform)
If you are using GEN_3 this is expected.
yes, exactly we are using GEN_3, do we have any document to explain the cause?
No, this is how the SDK internally works, so it’s not a piece of disclosed information.
we switched to GEN_1, the performance of reset_positional_tracking method looks better now. and however After we call __reset_position_tracking method to set the pose with parameters shown in below log, next we continue to call zed.get_position get new pose, the translation value is (1281.69, 76.73, -329.12), why the new translation data in pose object is different with what we set in transform?
-
- Resetting ZED position with translation: (-1345.3813876691827, 39.749458120362256, -71.60065075197093) and rotation: (2.85067681567348, -0.15151952150737974, 0.3947294364229416)