Мне любопытно, есть ли лучший способ загрузить информацию из файлов пакетов ROS в Matlab.
Мой текущий рабочий процесс:
bag = rosbag(FILE_LOCATION)
bagSel = select(bag,'Topic','/mavros/imu/data')
X_imu_raw = timeseries(bagSel)
t_imu_angvel = X_imu_raw.Time - bag.StartTime
X_imu_angvel = X_immu_raw.Data(:,8:10) % indices of X,Y, and Z
Когда приходится загружать много разных наборов сообщений, это становится очень громоздким. Я не уверен, как вытащить наборы сообщений из серии таймеров, например, я могу вытащить угловую скорость только одной оси, написав:
timeseries(bagSel,'AngularVelocity.X')
В идеале я хотел бы написать что-то вроде:
timeseries(bagSel,'AngularVelocity')
и извлеките все сообщения об угловой скорости из темы (x, y и z), но я не уверен, возможно ли это и как это сделать?