Skip to main content
The qrb_ros_camera sample application implements a camera ROS2 node to enable zero-copy performance when data is coming out of the camera-server. This sample greatly reduces the latency between ROS nodes.
NoteThe Dragonwing IQ-9075 Evaluation Kit only supports these cameras:
  • ov9282
  • LI-VENUS-OX03F10-96717-120H camera
  • LI-VENUS-OX03F10-OAX40-GM2A-118H camera

DIP switch operation for connecting to different cameras on Dragonwing IQ-9075

main-board

Figure : DIP switches on Dragonwing IQ-9075 Evaluation Kit

Table: DIP settings for cameras

NoteFor information about how to connect the camera, see Connect camera hardware sensor. This document is available to authorized users only.

Pipeline flow for qrb_ros_camera

The Qualcomm Camera-Server provides camera data that’s obtained from the camera sensor. qrb_ros_camera uses this camera-server to get the latest camera data. pipeline

ROS nodes used in the qrb_ros_camera pipeline

  • camera_id indicates the camera device ID, with a default value of 0.
  • stream_name indicates the camera stream names, with a default value of “stream1”.

ROS topics used in the qrb_ros_camera pipeline

Prerequisites

You have Set up the device according to Set up the environment for running sample applications.

Run out-of-the-box qrb_ros_camera

1

Run the camera ROS node

a. Set CAMX Overlay
SSH Session
b. Check statusTo confirm that the CamX overlay is active, run the following commands. The script returns 0 when the overlay is applied.
SSH Session
c. Run the qrb_ros_camera node.
SSH Session
2

Get the camera image data

a. Set up the QIR SDK and ROS2 environment on the device.
Value range of ROS_DOMAIN_ID: [0, 232]
SSH Session
b. Verify the ROS topic.
SSH Session

Build and run qrb_ros_camera

1

Build qrb_ros_camera on the host

2

Push qrb_ros_camera to the device

SSH Session
3

Run qrb_ros_camera on the device

Limitation

The supported format is NV12 in camera ROS node. Currently, dynamic changes to the image size aren’t supported.