近期录制的bag常有时间戳重复的问题,为方便对之后ROSbag数据进行检查,写了一个分析的工具,可以绘制多个topic中的数据值,绘制时间戳差值。未来随工作需要可能会丰富更多包分析功能。功能不难,但能解决很多重复性的工作。
rosbag-analysis
这个仓库包含用于分析ROS包文件的Python脚本。
前提条件
要使用此仓库中的脚本,您需要:
- Python 3
- ROS
- Virtualenv
开始
要开始使用此仓库中的脚本,请按照以下步骤进行操作:
- 将此仓库克隆到您的本地计算机并进入仓库目录:cd rosbag-analysis。
- 在repo目录中激活虚拟环境:source .venv/bin/activate
用法
此脚本可用于绘制ROS包文件的不同方面。以下命令行参数可用:
- bag_file:要分析的ROS包文件的路径(默认值:“example.bag”)。
- topic_names:要绘制的主题名称列表(默认值:[“/topic1”])。
- –plot-timestamps (-t):绘制主题时间戳。
- –plot-timediff (-td):绘制rostime差异。
- –plot-header-timediff (-htd):绘制标头时间戳之间的差异。
- –plot-odometry (-o):绘制里程计中包含的数值,如位置,速度,方向等。
- –plot-std-values (-s):绘制topic标准类型数值,如
float
,int
等。
以下是一些示例:
要绘制mybag.bag中/topic2的rostime差异,请运行以下命令:
python main.py mybag.bag /topic2 -td
要绘制mybag.bag中/topic1和/topic2的标准类型主题值,请运行以下命令:
python main.py mybag.bag /topic1 /topic2 -s
要绘制mybag.bag中/topic1的时间戳,请运行以下命令:
python main.py mybag.bag /topic1 --plot-timestamps