27#include "Eigen/Geometry"
31namespace localization {
37 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
52void LoadPcds(
const std::string& file_path,
const unsigned int frame_index,
54 const bool is_global =
false);
56void LoadPcds(
const std::string& file_path,
const unsigned int frame_index,
57 const Eigen::Affine3d& pose,
59 std::vector<unsigned char>* intensities,
bool is_global =
false);
64 std::vector<double>* timestamps);
69 std::vector<double>* timestamps,
70 std::vector<unsigned int>* pcd_indices);
76 std::vector<double>* timestamps);
84bool LoadExtrinsic(
const std::string& file_path, Eigen::Affine3d* extrinsic);
EigenVector< Eigen::Affine3d > EigenAffine3dVec
EigenVector< Eigen::Vector3d > EigenVector3dVec
void LoadPcds(const std::string &file_path, const unsigned int frame_index, const Eigen::Affine3d &pose, VelodyneFrame *velodyne_frame, bool is_global)
bool LoadExtrinsic(const std::string &file_path, Eigen::Affine3d *extrinsic)
Load the velodyne extrinsic from a YAML file.
void LoadPosesAndStds(const std::string &file_path, ::apollo::common::EigenAffine3dVec *poses, ::apollo::common::EigenVector3dVec *stds, std::vector< double > *timestamps)
Load poses and stds their timestamps.
void LoadPcdPoses(const std::string &file_path, ::apollo::common::EigenAffine3dVec *poses, std::vector< double > *timestamps)
Load the PCD poses with their timestamps.
EIGEN_MAKE_ALIGNED_OPERATOR_NEW unsigned int frame_index
The frame index.
::apollo::common::EigenVector3dVec pt3ds
The 3D point cloud in this frame.
std::vector< unsigned char > intensities
The laser reflection values in this frames.
std::vector< unsigned char > laser_ids
The laser IDs.
Eigen::Affine3d pose
The pose of the frame.
double timestamp
The time stamp.