Преобразуйте данные изображения ROS в изображение MATLAB
преобразует необработанные данные изображения в объекте сообщения, img
= readImage(msg
)msg
, в матрицу изображений, img
. Можно вызвать readImage
использование любого 'sensor_msgs/Image'
или 'sensor_msgs/CompressedImage'
сообщения.
Данные о сообщении ROS изображений хранятся в формате, который не совместим с дальнейшей обработкой изображений в MATLAB®. На основе заданного кодирования эта функция преобразует данные в соответствующее изображение MATLAB и возвращает его в img
.
Примечание
readImage будет удален. Использование rosReadImage
вместо этого. Для получения дополнительной информации смотрите, что ROS передает Функции Структуры
Сообщения ROS изображений могут иметь различную кодировку. Кодировка, поддержанная для изображений, отличается для 'sensor_msgs/Image'
и 'sensor_msgs/CompressedImage'
типы сообщений. Поддерживается меньше сжатых изображений. Следующая кодировка для необработанных изображений размера M-by-N поддерживается с помощью 'sensor_msgs/Image'
тип сообщения ('sensor_msgs/CompressedImage'
поддержка полужирным):
rgb8, rgba8, bgr8, bgra8
img
rgb
изображение размера M-by-N-by-3. Альфа-канал возвращен в alpha
. Каждое значение в выходных параметрах представлено как uint8
.
rgb16, rgba16, bgr16, and bgra16
img
изображение RGB размера M-by-N-by-3. Альфа-канал возвращен в alpha
. Каждое значение в выходе представлено как uint16
.
mono8
изображения возвращены как полутоновые изображения размера M-by-N-by-1. Каждое пиксельное значение представлено как uint8
.
mono16
изображения возвращены как полутоновые изображения размера M-by-N-by-1. Каждое пиксельное значение представлено как uint16
.
32fcX
изображения возвращены как изображения с плавающей точкой размера M-by-N-by-D, где D равняется 1, 2, 3, или 4. Каждое пиксельное значение представлено как single
.
64fcX
изображения возвращены как изображения с плавающей точкой размера M-by-N-by-D, где D равняется 1, 2, 3, или 4. Каждое пиксельное значение представлено как double
.
8ucX
изображения возвращены как матрицы размера M-by-N-by-D, где D равняется 1, 2, 3, или 4. Каждое пиксельное значение представлено как uint8
.
8scX
изображения возвращены как матрицы размера M-by-N-by-D, где D равняется 1, 2, 3, или 4. Каждое пиксельное значение представлено как int8
.
16ucX
изображения возвращены как матрицы размера M-by-N-by-D, где D равняется 1, 2, 3, или 4. Каждое пиксельное значение представлено как int16
.
16scX
изображения возвращены как матрицы размера M-by-N-by-D, где D равняется 1, 2, 3, или 4. Каждое пиксельное значение представлено как int16
.
32scX
изображения возвращены как матрицы размера M-by-N-by-D, где D равняется 1, 2, 3, или 4. Каждое пиксельное значение представлено как int32
.
bayer_X
изображения возвращены или как матрицы Байера размера M-by-N-by-1, или как преобразованное изображение размера M-by-N-by-3 (Image Processing Toolbox™ требуется).
Следующее кодирование для необработанных изображений размера M-by-N поддерживается с помощью 'sensor_msgs/CompressedImage'
тип сообщения:
rgb8, rgba8, bgr8, and bgra8
img
rgb
изображение размера M-by-N-by-3. Альфа-канал возвращен в alpha
. Каждое выходное значение представлено как uint8
.