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)

Figure contains an axes. The axes contains an object of type image.

Создайте 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