最近正在将VTOL的simulink模型生成的C代码移植到Airsim,在调试时发现需要获取一些比较关键的数据,所以查找了一下关于Airsim的数据记录,发现官方提供的数据记录很方便,所以在此记录下来如何添加自己想要记录的数据,以免以后遗忘。
关于Airsim数据记录的一些讲解参考如下:
- (2条消息) AirSim(四)—- 数据记录篇: Recording 记录数据、图像捕捉、图像类型_致知在格物,物格而后知至的博客-CSDN博客
- (2条消息) airsim机体坐标系下的机体速度的获取与recording函数修改_RL_FEIWU的博客-CSDN博客_airsim 坐标系
- Modifying Recording Data - AirSim (microsoft.github.io)
首先明确下数据记录的格式和位置,记录的数据以制表符Tab分隔的格式写入airsim_rec.txt文件,图像位于images/文件夹中。整个文件夹默认存在于Documents文件夹中(或在设置中指定),关于数据的记录设置,可以通过setting.jason文件进行设置,具体的设置可以参考Airsim源码提供的settings.md文档:Airsim仿真数据记录
由于我希望记录的是.csv的数据,这样可以通过一些其他的工具直接查看,所以需要对官方原始的记录格式进行下修改,我们知道:数据在存储为txt文件中的时候,每一列数据用逗号隔开,每一行进行换行,直接将后缀名“txt”改为“csv”就可以得到对应的.csv文件,所以对数据记录处进行修改:
这样修改之后,在运行的时候,通过按键盘上的R键或者点击Unreal窗口右下角的红色REC按钮可以开始和关闭数据记录,数据记录完成后,可以在Documents\Airsim中找到:
打开看airsim_rec.txt文件,发现里面记录的数据的格式是我们想要的可以直接转换成.csv的格式:
之后再把文件扩展名从.txt改为.csv即可,此时就可以得到.csv文件:
之后就可以使用一些其他工具对数据进行查看和分析了。