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.

Set up the camera

Complete the following settings before you run qrb_ros_camera or any sample application that uses qrb_ros_camera as the input.
  1. Connect a supported camera to the development kit. For the Dragonwing IQ-9075 Evaluation Kit, set the DIP switches according to DIP switch operation for connecting to different cameras on Dragonwing IQ-9075.
  2. Set the CamX overlay, and then reboot the device.
    SSH Session
  3. Check the CamX overlay status. To confirm that the CamX overlay is active, run the following commands. The script returns 0 when the overlay is applied.
    SSH Session

Run out-of-the-box qrb_ros_camera

1

Run the camera ROS node

  1. Ensure that you have completed the settings in Set up the camera.
  2. 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.