Преобразование данных изображения 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 (требуется Toolbox™ обработки изображений).
Следующая кодировка для необработанных изображений размера M-by-N поддерживается с помощью 'sensor_msgs/CompressedImage' тип сообщения:
rgb8, rgba8, bgr8, and bgra8: img является rgb изображение размерного M-by-N-by-3. Альфа-канал возвращается в alpha. Каждое выходное значение представлено как uint8.