# [mrpt-poses]¶

SE(2)/SE(3) poses and probability distributions

## Library mrpt-poses¶

This library is part of MRPT and can be installed in Debian-based systems with:

sudo apt install libmrpt-poses-dev


## Library contents¶

// global functions

template <class POSE_T>
const std::string& fname,
std::vector<POSE_T>* poses_vec,
std::vector<mrpt::system::TTimeStamp>* timestamps = NULL,
bool substract_init_offset = false
);

### Global Functions¶

template <class POSE_T>
const std::string& fname,
std::vector<POSE_T>* poses_vec,
std::vector<mrpt::system::TTimeStamp>* timestamps = NULL,
bool substract_init_offset = false
)

Parse the textfile and fill in the corresponding poses vector.

The file to be parsed is to contain 2D or 3D poses along with their corresponding timestamps, one line for each.

The expected format is the following:

For 2D Poses: timestamp x y theta (in rad) For 3D Poses in RPY form : x y z yaw pitch roll For 3D Poses in Quaternion form : x y z qw qx qy qz For 3D Poses in Quaternion form [TUM Datasets] : x y z qx qy qz qw

The 2D format abides to the groundtruth file format used by the GridMapNavSimul application

The TUM format is compatible with the groundtruth format for the TUM RGBD datasets as generated by the * rgbd_dataset2rawlog MRPT tool.

Parameters:

 fname Filename from which the timestamps and poses are read poses_vec std::vector which is to contain the 2D poses. timestamps std::vector which is to contain the timestamps for the corresponding ground truth poses. Ignore this argument if timestamps are not needed. substract_init_offset If true, the filled poses are to start from 0, that means, that if the first found pose is non-zero, it’s going to be considered and offset and substracted from all poses in the file.