velodyneFileReader

Считайте данные об облаке точек из файла Velodyne PCAP

Описание

Объект velodyneFileReader считывает данные об облаке точек из пакетного получения Velodyne® (PCAP) файл.

Создание

Синтаксис

veloReader = velodyneFileReader(fileName,deviceModel)
veloReader = velodyneFileReader(fileName,deviceModel,'CalibrationFile',calibFile)

Описание

пример

veloReader = velodyneFileReader(fileName,deviceModel) создает средство чтения файлов Velodyne, которое читает в данных об облаке точек. Задайте файл PCAP и модель устройства, которая сгенерировала файл. Входные параметры устанавливают свойства FileName и DeviceModel непосредственно. Читатель поддерживает VLP-16, Шайбу LITE, Высокая разрешающая способность Шайбы, VLP-32C, HDL-32E и модели устройства HDL-64E.

veloReader = velodyneFileReader(fileName,deviceModel,'CalibrationFile',calibFile) задает калибровочный XML-файл Velodyne и устанавливает свойство CalibrationFile.

Свойства

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

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

Имя файла Velodyne PCAP, чтобы считать данные о лазерном дальномере из, заданный как вектор символов или представить скаляр в виде строки.

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

Имя модели устройства Velodyne, заданное как 'VLP16', 'PuckLITE', 'PuckHiRes', 'VLP32C', 'HDL32E' или 'HDL64E'.

Примечание

Определение неправильной модели устройства возвращает неправильно калиброванное облако точек.

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

Имя калибровочного XML-файла Velodyne, заданного как вектор символов или скаляр строки. Этот калибровочный файл включен с каждым датчиком.

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

Общее количество облак точек в файле, заданном как положительное целое число.

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

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

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

Время первого облака точек, заданного как скаляр duration в секундах.

Запустите и время окончания задано относительно предыдущего целого часа. Например, если файл зарегистрирован в течение 7 минут с 13:58 до 14:05, то:

  • StartTime = 58 min × 60 с = 3 840 с

  • EndTime = StartTime + 7 min × 60 с = 3 900 с

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

Время последнего чтения облака точек, заданного как скаляр duration.

Запустите и время окончания задано относительно предыдущего целого часа. Например, если файл зарегистрирован в течение 7 минут с 13:58 до 14:05, то:

  • StartTime = 58 min × 60 с = 3 840 с

  • EndTime = StartTime + 7 min × 60 с = 3 900 с

Время для облака текущей точки, читающего в секундах, заданных как скаляр duration. Когда вы читаете облака точек с помощью readFrame, это свойство обновляется с новым временем считывания облака точек. Можно использовать reset, чтобы сбросить значение этого свойства к значению по умолчанию. Значение по умолчанию совпадает со свойством StartTime.

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

hasFrameОпределите, доступно ли другое облако точек Velodyne
readFrameОблако точек Рида Велодайна из файла
resetСбросьте свойство CurrentTime объекта velodyneFileReader к значению по умолчанию

Примеры

свернуть все

Используйте velodyneFileReader, чтобы считать пакетное получение (PCAP) файл от датчика Velodyne®. Облака точки наблюдения с помощью pcplayer.

Читайте в облаках точек при помощи средства чтения файлов Velodyne®. Задайте файл PCAP, чтобы читать и модель устройства Velodyne®.

veloReader = velodyneFileReader('lidarData_ConstructionRoad.pcap','HDL32E');

Задайте x-, y-, и пределы осей z для pcplayer в метрах. Подпишите оси.

xlimits = [-60 60];
ylimits = [-60 60];
zlimits = [-20 20];

Создайте проигрыватель облака точек.

player = pcplayer(xlimits,ylimits,zlimits);

Подпишите оси.

xlabel(player.Axes,'X (m)');
ylabel(player.Axes,'Y (m)');
zlabel(player.Axes,'Z (m)');

Первое облако точек интереса получено в 0,3 секунды в файл. Установите свойство CurrentTime на то время к тому, чтобы быть читающими облаками точек оттуда.

veloReader.CurrentTime = veloReader.StartTime + seconds(0.3); 

Отобразите поток облака точек в течение 10 секунд. Удалите последнее условие while отобразить весь поток.

Используйте hasFrame, чтобы проверять, доступен ли новый кадр. Выполните итерации через файл путем вызова readFrame, чтобы читать в облаках точек. Отобразите их использующий проигрыватель облака точек. Удалите последнее условие while отобразить весь поток.

while(hasFrame(veloReader) && player.isOpen() && (veloReader.CurrentTime < veloReader.StartTime + seconds(10)))
    ptCloudObj = readFrame(veloReader);
    view(player,ptCloudObj.Location,ptCloudObj.Intensity);
    pause(0.1);
end

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

| | | | | |

Внешние веб-сайты

Введенный в R2018a

Для просмотра документации необходимо авторизоваться на сайте