Using a monocular SLAM pipeline, I can compute the absolute pose of my camera with respect to an origin (I assume it lies at the center of the camera). Furthermore, the camera undergoes rigid body motion on the mobile base on which the camera is attached to. I am using PySLAM as the base project to build my monocular SLAM pipeline (https://github.com/luigifreda/pyslam)
However, the obtained pose seems be following this reference frame [X - +ve right, Y - +ve down, Z - +ve when moving back].
For reference a pose computed for robot moving straight comes out like this [-0.002, -0.01, -3.5, 0.999, 0.0, 0.001, 0.005].
The pose shown above is in a position and quaternion form {1x7 quaternion Numpy array [x,y,z,qw,qx,qy,qz]}. It is computed from a 4x4 matrix using pytransform3d.transformations.pq_from_transform(A2B) where 'A2B' is the pose in 4x4 matrix form.
How do I transform this pose so that it comes out like this
[-0.002, -0.01, 3.5, 0.999, 0.0, 0.001, 0.005] i.e.
- When robot is moving straight, the robot's Z axis should be positive
- When the robot moves up, the value of Y axis is positive
- When robot moves to right, the X axis value is positive