Readimage

Извлеките изображение из сообщения ROS Изображений

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

Описание

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

Примечание

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

Порты

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

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

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

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

Вывод

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

Извлеченный сигнал изображений из сообщения ROS, возвращенного как M-by-N-by-3 матрица для цветных изображений и M-by-N матрица для полутоновых изображений. Матрица содержит пиксельные данные из свойства Data сообщения ROS.

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16

Альфа-канал для изображения, возвращенного как M-by-N матрица. Эта матрица является той же высотой и шириной как изображение вывод и имеет значения [0 1], чтобы указать на непрозрачность каждого соответствующего пикселя со значением 0 являющийся абсолютно прозрачным.

Примечание

Для сообщений CompressedImage Альфа-канал возвращает все нули, если Show Alpha output port включен.

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16

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

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

  • 1 – Неправильное кодирование изображений. Проверяйте что входящее сообщение, кодирующее соответствия параметр ImageEncoding.

  • 2 – Размерности сообщения изображений превышают пределы, заданные в параметре Maximum Image Size.

  • Поле 3 - The Data сообщения изображений было усеченным. Смотрите Размеры Управления Массивов в Simulink ROS, чтобы увеличить максимальную длину массива.

  • 0 4 – распаковка Изображений перестал работать.

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

Параметры

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

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

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

Отобразите кодирование для входа ImageMsg. Выберите поддерживаемый тип кодировки, который совпадает со свойством Encoding сообщения. Для получения дополнительной информации о типах кодировки, смотрите readImage.

Переключите выходной порт Альфа-канала, если ваше кодирование поддерживает Альфа-канал.

Зависимости

Только определенные типы кодировки поддерживают альфа-каналы. Параметр ImageEncoding определяет, появляется ли этот параметр в маске блока.

Переключите порт ErrorCode к ошибкам монитора.

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

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

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

Введенный в R2017b