ros2点云格式转换

Posted by     "LETTER" on Wednesday, April 23, 2025

ROS2环境下推荐使用pcl_conversions实现pcl点云和sensor_msgs的转换。

  • sensor_msgs::msg::PCLPointCloud2-> pcl::PCLPointCloud2
template<typename T> void pcl::fromROSMsg(const sensor_msgs::msg::PointCloud2 &cloud, pcl::PointCloud<T> &pcl_cloud);
template<typename T> void pcl::moveFromROSMsg(const sensor_msgs::msg::PointCloud2 &cloud, pcl::PointCloud<T> &pcl_cloud); // 移动语义
  • pcl::PCLPointCloud2->sensor_msgs::msg::PCLPointCloud2
template<typename T> void toROSMsg(const pcl::PointCloud<T> &pcl_cloud, sensor_msgs::msg::PointCloud2 &cloud);
  • pcl::PCLPointCloud2->sensor_msgs::msg::Image
template<typename T> void toROSMsg (const pcl::PointCloud<T> &pcl_cloud, sensor_msgs::msg::Image& msg);
inline void moveToROSMsg(sensor_msgs::msg::PointCloud2 &cloud, sensor_msgs::msg::Image &image); // 移动语义