Этот пример требует Computer Vision Toolbox ® и Robotics System Toolbox ®.
Запуск сети ROS.
rosinit
Initializing ROS master on http://ah-rhosea:11311/. Initializing global node /matlab_global_node_45601 with NodeURI http://ah-rhosea:49292/
Загрузите выборку сообщений для отправки, включая образец изображения сообщения, img. Создайте издателя для отправки ROS- Image сообщение на '/image_test' тема. Укажите тип сообщения следующим '/sensor_msgs/Image'. Отправьте изображение сообщения.
imgcell = load('imgdata.mat','img'); img = imgcell.img; pub = rospublisher('/image_test','sensor_msgs/Image'); send(pub,img)
Откройте модель Simulink ® для подписки на сообщение ROS и чтения на изображении из ROS.
Убедитесь, что Subscribe блок подписывается на '/image_test' тема. В меню Инструменты > Операционная система робота > Управление длинами массивов проверьте Data массив имеет максимальную длину, большую, чем образец изображения (921 600 пикселей).
open_system('read_image_example_model.slx')


Запустите модель. The Video Viewer показывает образец изображения.

Остановите симуляцию и завершите работу сети ROS.
rosshutdown
Shutting down global node /matlab_global_node_45601 with NodeURI http://ah-rhosea:49292/ Shutting down ROS master on http://ah-rhosea:11311/.