readimage

Преобразуйте данные изображения ROS в изображение MATLAB

Синтаксис

img = readImage(msg)
[img,alpha] = readImage(msg)

Описание

пример

img = readImage(msg) преобразовывает необработанные данные изображения в объекте сообщения, msg, в матрицу изображений, img. Можно вызвать readImage с помощью или 'sensor_msgs/Image' или сообщений 'sensor_msgs/CompressedImage'.

Данные о сообщении ROS изображений хранятся в формате, который не совместим с дальнейшей обработкой изображений в MATLAB®. На основе заданного кодирования эта функция преобразовывает данные в соответствующее изображение MATLAB и возвращает его в img.

[img,alpha] = readImage(msg) возвращает альфа-канал изображения в alpha. Если изображение не имеет альфа-канала, то alpha пуст.

Примеры

свернуть все

Выборка загрузки сообщения ROS включая ROS отображает сообщение, img.

exampleHelperROSLoadMessages

Считайте сообщение ROS изображений как изображение MATLAB®.

image = readImage(img);

Отобразите изображение.

imshow(image)

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

свернуть все

'sensor_msgs/Image' или 'sensor_msgs/CompressedImage' сообщение ROS изображений, заданное как Image или указатель на объект Compressed Image.

Выходные аргументы

свернуть все

Отобразите, возвращенный как матрица, представляющая шкалу полутонов или изображение RGB или как am n 3 массивами, в зависимости от изображения датчика.

Альфа-канал, возвращенный как полутоновое изображение uint8. Если никакой альфа-канал не существует, alpha пуст.

Примечание

Для сообщений CompressedImage вы не можете вывести Альфа-канал.

Советы

Сообщения ROS изображений могут иметь различную кодировку. Кодировка, поддержанная для изображений, отличается для типов сообщений 'sensor_msgs/CompressedImage' и 'sensor_msgs/Image'. Поддерживаются менее сжатые изображения. Следующая кодировка для необработанных изображений размера, M xN поддерживается с помощью типа сообщения 'sensor_msgs/Image' (поддержка 'sensor_msgs/CompressedImage' полужирным):

  • rgb8, rgba8, bgr8, bgra8: img является изображением rgb размера M xNx3. Альфа-канал возвращен в alpha. Каждое значение в выходных параметрах представлено как uint8.

  • rgb16, rgba16, bgr16, bgra16: img является изображением RGB размера M xNx3. Альфа-канал возвращен в alpha. Каждое значение в выходных параметрах представлено как uint16.

  • Изображения mono8 возвращены как полутоновые изображения размера M xNx1. Каждое пиксельное значение представлено как uint8.

  • Изображения mono16 возвращены как полутоновые изображения размера M xNx1. Каждое пиксельное значение представлено как uint16.

  • Изображения 32fcX возвращены как изображения с плавающей точкой размера M xNxD, где D равняется 1, 2, 3, или 4. Каждое пиксельное значение представлено как single.

  • Изображения 64fcX возвращены как изображения с плавающей точкой размера M xNxD, где D равняется 1, 2, 3, или 4. Каждое пиксельное значение представлено как double.

  • Изображения 8ucX возвращены как матрицы размера M xNxD, где D равняется 1, 2, 3, или 4. Каждое пиксельное значение представлено как uint8.

  • Изображения 8scX возвращены как матрицы размера M xNxD, где D равняется 1, 2, 3, или 4. Каждое пиксельное значение представлено как int8.

  • Изображения 16ucX возвращены как матрицы размера M xNxD, где D равняется 1, 2, 3, или 4. Каждое пиксельное значение представлено как int16.

  • Изображения 16scX возвращены как матрицы размера M xNxD, где D равняется 1, 2, 3, или 4. Каждое пиксельное значение представлено как int16.

  • Изображения 32scX возвращены как матрицы размера M xNxD, где D равняется 1, 2, 3, или 4. Каждое пиксельное значение представлено как int32.

  • Изображения bayer_X возвращены или как матрицы Байера размера M xNx1, или как преобразованное изображение размера M xNx3 (Image Processing Toolbox™ требуется).

Следующее кодирование для необработанных изображений размера M xN поддерживается с помощью типа сообщения 'sensor_msgs/CompressedImage':

  • rgb8, rgba8, bgr8, bgra8: img является изображением rgb размера M xNx3. Альфа-канал возвращен в alpha. Каждое выходное значение представлено как uint8.

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

Представленный в R2015a