ROS接收点云过程中出现Failed to find match for field ‘rgb‘.

标记一下自己的低级错误,最近想做给点云上色,在ROS回调函数接收处理时总会报错说Failed to find match for field 'rgb'.

最后发现问题并不在回调上色输出端,是因为雷达发出的点云并不包含RGB信息。

void PointHandle(const sensor_msgs::PointCloud2ConstPtr & laserCloud)

//由于雷达点云没有RGB出现问题。
pcl::PointCloud ::Ptr Cloud (new pcl::PointCloud);

pcl::fromROSMsg(*laserCloud,*Cloud);

修改为最初即可

void PointHandle(const sensor_msgs::PointCloud2ConstPtr & laserCloud)

pcl::PointCloud ::Ptr Cloud (new pcl::PointCloud);

pcl::fromROSMsg(*laserCloud,*Cloud);

你可能感兴趣的:(ROS,计算机视觉,人工智能)