Read Point Cloud

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

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

  • Read Point Cloud ROS 2

Описание

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

Примечание

Когда чтение облака точек ROS 2 обменивается сообщениями от сети, Data свойство сообщения может превысить максимальный набор длины массива в Simulink®. Выполните шаги ниже, чтобы увеличить максимальную длину массива для всех типов сообщений в модели:

  1. Включите опции ROS путем выбора приложения Robot Operating System (ROS) под вкладкой Apps и сконфигурируйте параметры сети ROS соответственно.

  2. От раздела Prepare под вкладкой Simulation выберите ROS Toolbox> Variable Size Messages.

  3. Снимите флажок с Use default limits for this message type и затем в столбце Maximum length, увеличьте длину на основе числа точек в облаке точек.

Порты

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

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

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

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

Вывод

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

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

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

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

Зависимости

Включите Show RGB output port параметр.

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

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

Зависимости

Включите Show Intensity output port параметр.

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

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

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

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

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

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

  • 4 – Облако точек не содержит данных о цвете RGB. Эта ошибка только происходит, если вы включаете параметр выходного порта RGB Показа.

  • 5 – Облако точек не содержит данных об интенсивности. Эта ошибка только происходит, если вы включаете параметр выходного порта Интенсивности Показа.

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

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

Параметры

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

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

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

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

Выберите этот параметр, чтобы включить порт RGB. Если вы включаете этот параметр, сообщение должно содержать данные о RGB, или блок возвращает код ошибки.

Выберите этот параметр, чтобы включить порт Intensity. Если вы включаете этот параметр, сообщение должно содержать данные об интенсивности, или блок возвращает код ошибки.

Выберите этот параметр, чтобы включить ошибки порта ErrorCode и ошибки монитора.

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

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью Simulink® Coder™.

Введенный в R2021b