Image

Создайте сообщение изображений

Описание

Image объект является реализацией sensor_msgs/Image тип сообщения в ROS. Объект содержит изображение и метаинформацию о сообщении. Можно создать пустой Image сообщения и заполняют их с данными или подписываются, чтобы отобразить сообщения по сети ROS. Чтобы преобразовать изображение в изображение MATLAB®, используйте readImage функция.

Создание

Описание

пример

msg = rosmessage('sensor_msgs/Image') создает пустой Image объект. Чтобы задать данные изображения, используйте msg.Data свойство. Можно также получить эти сообщения изображений от сети ROS с помощью rossubscriber.

Свойства

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

Это свойство доступно только для чтения.

Тип сообщения сообщения ROS, возвращенного как вектор символов.

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

Это свойство доступно только для чтения.

Сообщение Заголовка ROS, возвращенное как Header объект. Это сообщение заголовка содержит MessageType, последовательность (Seq), метка времени (Stamp), и FrameId.

Высота изображения в пикселях в виде скаляра.

Ширина изображения в пикселях в виде скаляра.

Отобразите кодирование в виде вектора символов.

Пример: 'rgb8'

Отобразите последовательность байта в виде true или false.

  • true — Последовательность с обратным порядком байтов. Хранит старший значащий байт в самом маленьком адресе.

  • false — Последовательность с прямым порядком байтов. Хранит младший значащий байт в самом маленьком адресе.

Полная длина строки в байтах в виде целого числа. Эта длина зависит от глубины цвета и пиксельной ширины изображения. Например, изображение RGB имеет 3 байта на пиксель, таким образом, изображение с шириной 640 имеет шаг 1 920.

Данные изображения в виде uint8 массив.

Функции объекта

readImageПреобразуйте данные изображения ROS в изображение MATLAB
writeImageЗапишите изображение MATLAB в сообщение ROS изображений

Примеры

свернуть все

Считайте и запишите демонстрационному ROS Image сообщение путем преобразования его в изображение MATLAB. Затем преобразуйте изображение MATLAB® в сообщение ROS.

Выборка загрузки сообщения ROS и смотрит данные о сообщении изображений. img объектом является демонстрационный ROS Image объект сообщения.

exampleHelperROSLoadMessages
img
img = 
  ROS Image message with properties:

    MessageType: 'sensor_msgs/Image'
         Header: [1x1 Header]
         Height: 480
          Width: 640
       Encoding: 'rgb8'
    IsBigendian: 0
           Step: 1920
           Data: [921600x1 uint8]

  Use showdetails to show the contents of the message

Создайте изображение MATLAB из Image сообщение с помощью readImage и отобразите его.

I = readImage(img);
imshow(I)

Создайте Image ROS обменивайтесь сообщениями от изображения MATLAB.

imgMsg = rosmessage('sensor_msgs/Image');
imgMsg.Encoding = 'rgb8'; % Specifies Image Encoding Type
writeImage(imgMsg,I)
imgMsg
imgMsg = 
  ROS Image message with properties:

    MessageType: 'sensor_msgs/Image'
         Header: [1x1 Header]
         Height: 480
          Width: 640
       Encoding: 'rgb8'
    IsBigendian: 0
           Step: 1920
           Data: [921600x1 uint8]

  Use showdetails to show the contents of the message

msg = rosmessage('sensor_msgs/Image')
msg = 
  ROS Image message with properties:

    MessageType: 'sensor_msgs/Image'
         Header: [1x1 Header]
         Height: 0
          Width: 0
       Encoding: ''
    IsBigendian: 0
           Step: 0
           Data: [0x1 uint8]

  Use showdetails to show the contents of the message

Введенный в R2019b