select

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

    Описание

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

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

    пример

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

    Примеры

    свернуть все

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

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

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

    bag = ros2bag(folderPath);

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

    bag2info = ros2("bag","info",folderPath)
    bag2info = struct with fields:
             Path: '/tmp/BR2021bd_1751886_255755/mlx_to_docbook5/tp3f005889/ros-ex96596996/ros2_netwrk_bag/ros2_netwrk_bag.db3'
          Version: '1'
        StorageId: 'sqlite3'
         Duration: 207.9020
            Start: [1x1 struct]
              End: [1x1 struct]
             Size: 16839538
         Messages: 166867
            Types: [4x1 struct]
           Topics: [4x1 struct]
    
    

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

    msgs = readMessages(bag);

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

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

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

    msgsFiltered = readMessages(bagSel);

    Входные параметры

    свернуть все

    Сообщения в ros2bag объект в виде ros2bag объект.

    Аргументы name-value

    Задайте дополнительные разделенные запятой пары 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