sensor_msgs::PointCloud2转换pcl::PCLPointCloud2 pcl::PointXYZ

订阅雷达的数据(sensor_msgs::PointCloud2),需要对其进行解析,转换为pcl::PCLPointCloud2的办法:

sudo apt-get install ros-melodic-pcl-conversions 
sudo apt-get install ros-pcl-msgs 
sudo apt-get install ros-melodic-pcl-ros
sudo apt-get install ros-melodic-pcl-msgs

通过以上安装的pcl库在/usr/include/pcl-1.8/pcl/*中,在编译时添加头文件非要加 pcl-1.8/

有点强迫症,直接就去把pcl-1.8/* 下面的文件都移动到/usr/include/pcl目录中,所以头文件就没有pcl-1.8了

 

具体参见代码

方法1

sensor_msgs::PointCloud2转换pcl::PCLPointCloud2再转pcl::PointXYZ

#include 
#include 
#include 
#include 
#include 


void Motion::Laser::connectMsg(const sensor_msgs::PointCloud2ConstPtr &ptrMsg) {
    std_msgs::Bool bMsg;
    pcl::PCLPointCloud2 msgPointCloud;
    pcl_conversions::toPCL(*ptrMsg, msgPointCloud);
    pcl::PointCloud

你可能感兴趣的:(Ros)