ROS:bag数据包内容提取——雷达点云数据和imu数据

通常在利用ros采集传感器数据时,我们会得到一个包含多个传感器数据的bag数据包,下面将会介绍从bag数据包提取雷达点云数据和imu数据的方法。

系统版本:Ubuntu20.04

ROS版本:Noetic

先觉条件:

查看bag数据包中雷达点云数据和imu数据所对应的topic名称,通过下面这条指令实现。

rosbag info 
#指bag数据包的名称

例如:

rosbag info 2021-04-16-10-32-05_far.bag 

下图为具体的实现过程:

ROS:bag数据包内容提取——雷达点云数据和imu数据_第1张图片

1、提取雷达点云数据

启动roscore,打开终端,输入下面这条指令实现

roscore

从bag数据包中提取雷达点云数据,并将雷达点云数据转换为pcd格式,通过下面这条命令实现。

rosrun pcl_ros bag_to_pcd   
# 指读取的bag数据包的名字
# 指bag数据包雷达点云数据对应的topic名称
# 指输出过程中所创建的目录名称,得到的pcd格式的雷达点云数据放在此目录下

例如:

rosrun pcl_ros bag_to_pcd 2021-04-16-10-32-05_far.bag /os_cloud_node/points test.pacd

下图为具体的实现过程:

ROS:bag数据包内容提取——雷达点云数据和imu数据_第2张图片

然后会得到按照时间戳排序的雷达点云数据。

2、提取imu数据

从bag数据包中提取imu数据,可将其转化为txt格式后者csv格式,通过下面的指令实现。

rostopic echo -b  -p  >  xxxxxx.txt
或者
rostopic echo -b  -p  >  xxxxx.csv
# 指读取的bag数据包的名字
# 指bag数据包imu数据对应的topic名称
# xxxxxx.txt xxxxxx.csv中xxxxxx指自己给得到的文件取的名字

例如:

rostopic echo -b 2021-04-16-10-32-05_far.bag -p /vectornav/IMU > imu.csv

需注意:读取成功后,终端不会给出提示

71af717c131947af80f5b115eae0d2c7.png

 但实际上已生成所要的文件

ROS:bag数据包内容提取——雷达点云数据和imu数据_第3张图片

 得到imu.csv的文件内容:

你可能感兴趣的:(工程,自动驾驶,人工智能)