Read Point Cloud

Извлеките облако точек из сообщения ROS PointCloud2

  • Библиотека:
  • ROS Toolbox / ROS

Описание

Блок Read Point Cloud извлекает облако точек из PointCloud2 ROS сообщение. Можно выбрать параметры сообщения ROS темы, активной в живой сети ROS, или задать параметры сообщения отдельно. Сообщения ROS заданы как невиртуальная шина. Используйте блок Subscribe, чтобы получить сообщение от сети ROS и ввести сообщение с блоком Read Point Cloud.

Примечание

Когда чтение облака точек ROS обменивается сообщениями от сети, Data свойство сообщения может превысить максимальный набор длины массива в Simulink®. Чтобы увеличить максимальную длину массива, нажмите Tools> Manage Array Lengths> Robot Operating System, выберите массив Data и увеличьте размер на основе числа точек в облаке точек.

Порты

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

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

ROS PointCloud2 обменивайтесь сообщениями в виде невиртуальной шины. Можно использовать блок Subscribe, чтобы получить сообщение от сети ROS.

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

Вывод

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

x, y и координаты z данных об облаке точек, выход или как N-by-3 матрица или как h-by-w-by-3 многомерный массив. N является числом точек. h и w являются высотой и шириной изображения в пикселях. Чтобы получить x, y и координаты z как многомерный массив, выбирают Preserve point cloud structure флажок в параметрах маски блока.

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

Значения RGB для каждой точки данных об облаке точек, выход или как N-by-3 матрица или как h-by-w-by-3 многомерный массив. N является числом точек. h и w являются высотой и шириной изображения в пикселях. Значения RGB соответствуют красной, зеленой, и синей интенсивности цвета с областью значений [0 1].To получают значения RGB как многомерный массив, выбирают Preserve point cloud structure флажок в параметрах маски блока.

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

Значения интенсивности для каждой точки данных об облаке точек, выход или как массив или как h-by-w матрица. h и w являются высотой и шириной изображения в пикселях. Чтобы получить значения интенсивности как матрицу, выберите Preserve point cloud structure флажок в параметрах маски блока.

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

Код ошибки для преобразования изображений, возвращенного как скаляр. Значения кода ошибки:

  • 0 – Успешно преобразованный сообщение облака точек.

  • 1 – Размерности входящего облака точек превышают предельный набор в Maximum point cloud size.

  • 2 – Один из массивов переменной длины во входящем сообщении был усеченным. Смотрите Управляют Размерами Массивов для сообщений ROS в Simulink, чтобы увеличить максимальную длину массива.

  • 3XY, или Z поле сообщения облака точек отсутствует.

  • 4 – Облако точек не содержит данных о цвете RGB. Вы, должно быть, переключили Show RGB output port к на получить эту ошибку.

  • 5 – Облако точек не содержит данных об интенсивности. Вы, должно быть, переключили Show Intensity output port к на получить эту ошибку.

  • 6XY, или Z поле сообщения облака точек не имеет правильного типа данных (float32).

  • 7RGB поле сообщения облака точек не имеет правильного типа данных (float32).

  • 8Intensity поле сообщения облака точек не имеет правильного типа данных (float32).

Для определенных кодов ошибок данные являются усеченными или заполненными с NaN значения, где это необходимо.

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

Параметры

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

Максимальный размер изображения облака точек в виде двухэлементного [height width] вектор.

Нажмите Configure using ROS ..., чтобы установить этот параметр автоматически с помощью активной темы в сети ROS. Вы должны быть соединены с сетью ROS.

Когда этот флажок устанавливается, форма вывода данных облака для XYZrgb , и Intensity сохраняются. Выходные параметры обеспечивают структуру оригинального изображения. Поэтому XYZ и RGB выводятся как многомерные массивы и Intensity выводится как матрица.

Установите этот флажок, чтобы получить RGB значения для каждой точки облака точек обмениваются сообщениями от порта RGB. Данными о RGB должно снабдить сообщение.

Установите этот флажок, чтобы получить значения интенсивности для каждой точки сообщения облака точек от Intensity порт. Данными об интенсивности должно снабдить сообщение.

Установите этот флажок к ошибкам монитора с ErrorCode порт.

Установите этот флажок к сигналам размера выходной переменной. Сигналы переменного размера должны только использоваться, если размер изображения, как ожидают, будет изменяться в зависимости от времени. Для получения дополнительной информации об измеренных сигналах переменной, смотрите Основы Сигнала Переменного Размера (Simulink).

Введенный в R2019b