exponenta event banner

выбрать

Выберите подмножество сообщений в ros2bag

    Описание

    bagsel = select(bag) возвращает ros2bag объект, bagsel, который содержит все сообщения в ros2bag объект, bag.

    Эта функция создает копию ros2bag объект или возвращает новый ros2bag объект, содержащий указанный выбор сообщения.

    пример

    bagsel = select(bag,Name,Value) предоставляет дополнительные параметры, заданные одним или несколькими аргументами пары «имя-значение». Например, "Topic","/scan" выбирает подмножество сообщений, отфильтрованное по теме /scan.

    Примеры

    свернуть все

    Извлеките zip-файл, содержащий файл журнала пакета ROS 2, и укажите полный путь к папке журнала.

    unzip('alltopics.zip');
    folderPath = fullfile(pwd,'alltopics');

    Создать ros2bag объект, содержащий все сообщения в файле журнала.

    bag = ros2bag(folderPath);

    Получение информации о содержании ros2bag объект.

    bag2info = ros2("bag","info",folderPath)
    bag2info = struct with fields:
             Path: 'C:\Users\SHIVARAD\OneDrive - MathWorks\Documents\MATLAB\Examples\ros-ex96596996\alltopics\alltopics.db3'
          Version: '1'
        StorageId: 'sqlite3'
         Duration: 102.396644003
            Start: [1×1 struct]
              End: [1×1 struct]
             Size: 4965433
         Messages: 36503
            Types: [5×1 struct]
           Topics: [5×1 struct]
    
    

    Получить все сообщения в ros2bag объект.

    msgs = readMessages(bag);

    Выберите подмножество сообщений, отфильтрованное по темам.

    bagSel = select(bag,"Topic","/scan");

    Получите сообщения в выборке.

    msgsFiltered = readMessages(bagSel);

    Входные аргументы

    свернуть все

    Сообщения в ros2bag объект, указанный как ros2bag объект.

    Аргументы пары «имя-значение»

    Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

    Пример: select(bag,"Topic","/scan") выбирает подмножество сообщений, отфильтрованное по теме /scan.

    Тип сообщения ROS 2, заданный как строковый скаляр, символьный вектор, массив ячеек строковых скаляров или массив ячеек символьных векторов. Массив ячеек может содержать несколько типов сообщений.

    Пример: select(bag,"MessageType",{"sensor_msgs/CameraInfo","sensor_msgs/LaserScan"})

    Типы данных: char | string | cell

    Время начала и окончания выбора ros2bag, заданного как вектор n-by-2.

    Пример: select(bag,"Time",[bag.MessageList(1,1).Time,bag.MessageList(2,1).Time])

    Типы данных: uint64

    Имя темы ROS 2, указанное как строковый скаляр, символьный вектор, массив ячеек строковых скаляров или массив ячеек символьных векторов. С помощью массива ячеек можно указать несколько имен разделов.

    Пример: select(bag,"Topic",{"/scan","/clock"})

    Типы данных: char | string | cell

    Выходные аргументы

    свернуть все

    Копирование или подмножество сообщений ros2bag, возвращаемых в виде ros2bag объект.

    См. также

    Объекты

    Функции

    Представлен в R2021a