ibeoFileReader

Считайте заголовки сообщения из файла Контейнера данных Ibeo (IDC)

Описание

Ibeo® Automotive Systems является производителем лидара основанные на датчике устройства. Данные из различных датчиков, таких как лидар и датчики камеры, полученные этими устройствами, хранятся в файлах Контейнера данных Ibeo (IDC). ibeoFileReader возразите читает заголовки сообщения, сопоставленные с различными датчиками в файле IDC. Используйте select возразите функции, чтобы выбрать сообщения определенного типа для чтения от ibeoFileReader объект.

Создание

Описание

пример

ibeoReader = ibeoFileReader(fileName) создает ibeoFileReader объект, ibeoReader, это читает заголовки сообщения из заданного файла IDC.

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

развернуть все

Имя файла IDC в виде строки или вектора символов.

Свойства

развернуть все

Это свойство доступно только для чтения.

Абсолютный путь к файлу IDC, который будет считан в виде строки.

Это свойство доступно только для чтения.

Метка времени первого сообщения в файле IDC с точностью до наносекунды.

Это свойство доступно только для чтения.

Метка времени итогового сообщения в файле IDC в виде скаляра datetime. Это значение точно до наносекунды.

Это свойство доступно только для чтения.

Общая длительность файла IDC в секундах, заданных как скаляр длительности. Это значение точно до наносекунды.

Это свойство доступно только для чтения.

Таблица со столбцами NumMessages, MessageID, и DeviceID. Строки таблицы называют на основе типов сообщений в файле IDC, которые поддерживаются для чтения.

Функции объекта

selectВыберите подмножество сообщений, чтобы читать из файла Контейнера данных Ibeo (IDC)

Примеры

свернуть все

Создайте ibeoFileReader объект, ibeoReader, считать заголовки сообщения из файла IDC. Замените аргумент sample_data.idc заполнителя с именем вашего файла IDC как sample_data.idc файлу не предоставляют тулбокс.

ibeoReader = ibeoFileReader('sample_data.idc')
ibeoReader =
 
  ibeoFileReader with properties:
 
       FileName: "C:/Documents/MATLAB/ibeo_data/sample_data.idc"
      StartTime: 15-Mar-2020 11:21:04.999434999
        EndTime: 15-Mar-2020 11:25:35.030095000
       Duration: 00:04:30
    FileSummary: CAN             53    msgs [0x1002]
                 scan            53    msgs [0x2205]
                 object          106   msgs [0x2281]
                 image           53    msgs [0x2403]
                 vehicleState    53    msgs [0x2808]
                 measurementList 53    msgs [0x2821]
                 pointCloudPlane 53    msgs [0x7510]
                 unsupported     53    msgs [0x6120]
                 unsupported     53    msgs [0x6970]

Создайте два ibeoMessageReader объекты, imgReader и objReader, считать все изображение и обнаружение объектов обменивается сообщениями за первые 2 минуты, соответственно, при помощи select функция с соответствующим типом сообщения и значениями области значений времени.

timeRange = [0 minutes(2)];
imgReader = select(ibeoReader,'image',timeRange);
objReader = select(ibeoReader,'object',timeRange);

Считайте первые 10 изображений и все сообщения обнаружения объектов за первые 2 минуты, при помощи readMessages функция на соответствующем ibeoMessageReader объекты с соответствующим indices и timeRange аргументы. Чтение сообщений обнаружения объектов возвращает и онлайновые объекты и постобработанные объекты наряду с их метаданными.

imgs = readMessages(imgReader,1:10);
[rawObjs,procObjs,rawMetadata,procMetadata] = readMessages(objReader);

Создайте ibeoFileReader объект, ibeoReader, считать заголовки сообщения из файла IDC. Замените аргумент sample_data.idc заполнителя с именем вашего файла IDC как sample_data.idc файлу не предоставляют тулбокс.

ibeoReader = ibeoFileReader('sample_data.idc')
ibeoReader =
 
  ibeoFileReader with properties:
 
       FileName: "C:/Documents/MATLAB/ibeo_data/sample_data.idc"
      StartTime: 15-Mar-2020 11:21:04.999434999
        EndTime: 15-Mar-2020 11:25:35.030095000
       Duration: 00:04:30
    FileSummary: CAN             53    msgs [0x1002]
                 scan            53    msgs [0x2205]
                 object          106   msgs [0x2281]
                 image           53    msgs [0x2403]
                 vehicleState    53    msgs [0x2808]
                 measurementList 53    msgs [0x2821]
                 pointCloudPlane 53    msgs [0x7510]
                 unsupported     53    msgs [0x6120]
                 unsupported     53    msgs [0x6970]

Создайте ibeoMessageReader объект, imgReader, считать все изображения за первые 2 минуты, при помощи select функция с соответствующим типом сообщения и значениями области значений времени.

timeRange = [0, minutes(2)];
imgReader = select(ibeoReader, 'image', timeRange);

Визуализируйте данные о сообщении путем чтения сообщений по одному в объект видеоплеера. Во-первых, создайте vision.VideoPlayer объект. Затем используйте hasNextMessage функционируйте, чтобы проверять ли imgReader содержит сообщение после текущего. Если это делает, использовать readNextMessage функционируйте, чтобы считать изображения в рабочую область.

videoPlayer = vision.VideoPlayer;
while hasNextMessage(imgReader)
    img = readNextMessage(imgReader);
    step(videoPlayer,img);
end
release(videoPlayer);
     

Сбросьте ibeoMessageReader объект, imgReader, к первому сообщению в выборе, с помощью reset функция.

 reset(imgReader);

Ограничения

  • ibeoFileReader спроектирован для использования со Спецификацией v1.50 Интерфейса Ibeo. Если вы читаете более старые версии файлов IDC, некоторые поля могут содержать пустые или случайные данные.

  • StartTimeВремя окончания, и Duration свойства не включают время поступления постобработанных объектных сообщений.

Смотрите также

| | |

Введенный в R2021a