stereolabs / zed-ros-wrapper

ROS wrapper for the ZED SDK
https://www.stereolabs.com/docs/ros/
MIT License
447 stars 391 forks source link

zero Rz cross covariance terms #892

Closed betaBison closed 1 year ago

betaBison commented 1 year ago

This pull request zeroes the cross covariance terms between R_z & Z, R_z & R_x, and R_z & R_y when the camera is in 2D mode.

The matrix indexes for the 6x6 covariance matrix from the ROS PoseWithCovariance message for reference: x y z R_x R_y R_z
x 0 1 2 3 4 5
y 6 7 8 9 10 11
z 12 13 14 15 16 17
R_x 18 19 20 21 22 23
R_y 24 25 26 27 28 29
R_z 30 31 32 33 34 35
Currently only some of the cross-correlation terms are zeroed. A dash represents that the value is left unchanged. x y z R_x R_y R_z
x - - 0 0 0 -
y - - 0 0 0 -
z 0 0 1e-9 0 0 -
R_x 0 0 0 1e-9 0 -
R_y 0 0 0 0 1e-9 -
R_z - - - - - -
The new behavior zeroes out the R_z cross correlation terms so you're essentially left with a covariance matrix that's only the X,Y, and Rz diagonal terms and their respective cross-correlation terms with each other. x y z R_x R_y R_z
x - - 0 0 0 -
y - - 0 0 0 -
z 0 0 1e-9 0 0 0
R_x 0 0 0 1e-9 0 0
R_y 0 0 0 0 1e-9 0
R_z - - 0 0 0 -
Myzhar commented 1 year ago

@betaBison Thank you for the fix