LidarPointCloud保存PCD文件的方法

在牵扯到Lidar点云数据相关的开发时,难免需要将LidarPointCloud数据转为PCD文件,来查看点云效果。

本文介绍两种办法

1 写文件的方法(根据PCD文件的协议)

本样例中使用的数据类型为ara::lidar::LidarPointCloud, 和ROS中的LidarPointCloud格式差不多。如下:

namespace ara {
    namespace lidar {
        struct LidarPointCloud {
            ::ara::lidar::Header header;
            ::UInt32 isBigEndian;
            ::UInt32 height;
            ::UInt32 width;
            ::UInt32 pointStep;
            ::UInt32 rowStep;
            ::UInt32 isDense;
            ::ara::lidar::LidarPointField data;
        };
    }
}

代码中使用的写文件是Qt相关的QFile, 具体的代码:

// 获取到LidarPointCloud的数据
ara::lidar::LidarPointCloud lidarMsg = getLidarPointCloud();
// 创建存放数据的目录
QString strFrameDir = strDir + QString("/") + QString::fromStdString(lidarMsg.header.frameId);
QDir dir(strFrameDir);

你可能感兴趣的:(Ros,开发语言,ubuntu)