如何将*.mat文件转换为rosbag?

2024-05-23 20:03:11 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个*.mat文件,其中包含从硬件记录的CAN信号。我需要把这个mat文件转换成rosbag

我的文件中有以下数据:

  • 时间(10000,1)-双倍
  • ID(10000,1)-uint32
  • Len(10000,1)-uint8
  • 数据(10000,8)单位

目前,我正在将mat文件数据读入python,如下所示:

from scipy.io import loadmat
import pandas as pd
import numpy as np


file = 'Test_Sample.mat'

mat_file = loadmat(file)

mdata = mat_file['CAN_RAD']
mdtype = mdata.dtype

ndata = {n: mdata[n][0, 0] for n in mdtype.names}

然后我可以用这些消息创建一个数据帧

一种方法是编写发布者并使用python pandas在mat文件中发布消息,另一端运行rosbag订阅服务器并记录所有消息

是否有一种替代方法,我可以独立于ROS系统进行转换


Tags: 文件数据方法import消息pandasas记录