Запишите изображение MATLAB в сообщение ROS изображений
преобразует MATLAB® изображение, msgOut
= rosWriteImage(msg
,img
)img
, к структуре сообщения и хранилищам ROS совместимые данные изображения в структуре сообщения, msg
. Сообщением должен быть 'sensor_msgs/Image'
сообщение. 'sensor_msgs/CompressedImage'
сообщения не поддерживаются. Функция не выполняет преобразования цветового пространства, таким образом, img
введите потребности иметь кодирование, которое вы задаете в свойстве Encoding сообщения.
преобразует изображение MATLAB, msgOut
= rosWriteImage(msg
,img
,alpha
)img
, к структуре сообщения. Если кодирование изображений поддерживает альфа-канал (rgba
или bgra
семейство), задайте этот альфа-канал в alpha
. В качестве альтернативы входное изображение может сохранить альфа-канал как свой четвертый канал.
задает кодирование сообщения изображений в качестве аргумента значения имени с помощью любого из предыдущих входных параметров. Если msgOut
= rosWriteImage(___,"Encoding",encodingParam
)Encoding
поле сообщения не установлено, используйте этот синтаксис, чтобы установить поле.
Необходимо задать правильное кодирование входного изображения в свойстве Encoding сообщения изображений. Если вы не задаете изображение, кодирующее прежде, чем вызвать функцию, кодировку по умолчанию, rgb8
, используется (изображение RGB с 3 каналами с uint8 значениями). Функция не выполняет преобразования цветового пространства, таким образом, img
введите потребности иметь кодирование, которое вы задаете в свойстве Encoding сообщения.
Все типы кодировки, поддержанные для rosReadImage
также поддерживаются в этой функции. Для получения дополнительной информации о поддерживаемых типах кодировки и их представлениях в MATLAB, смотрите rosReadImage
.
Закодированные Байером изображения (bayer_rggb8
, bayer_bggr8
, bayer_gbrg8
, bayer_grbg8
, и их 16-битные эквиваленты), должен быть дан как 8-битные или 16-битные одноканальные изображения, или они не кодируют.