Orbbec Cameras - Astra, Femto and Gemini Series
Orbbec specializes in creating a wide range of vision devices. Through the advancement of various technologies, customers can discover equipment that best fits their specific needs. The manufacturer's product catalog encompasses four primary camera series, each distinguished by its unique technology:
- Astra Series: Depth cameras based on structured light technology,
- Femto Series: Depth cameras utilizing TOF (Time of Flight) technology,
- Gemini Series: Depth cameras employing active stereo IR technology.
When selecting the appropriate camera, it is worth paying attention to parameters related to: depth range, accuracy, resolution and frame rate.
- OrbbecSDK ROS 2 Repository - official repository
- Orbbec Camera Docker Repository - Husarion repository
This article about the Orbbec cameras does not cover the older version of the Astra camera mounted on ROSbot 2R/PRO. If you want to learn how to run an older version of the camera, check out the Astra article.
Getting started
To run the device, you must meet certain requirements listed below:
Software
Hardware
- Connectivity: USB 2.0 / USB 3.0 / Ethernet*
* depend of camera model
Demo
In this demo, we'll walk you through using the Astra+ camera with ROS 2 via a Docker image. You'll also learn how to visualize data, including image previews and point clouds, using RViz. Demo based on OrbbecSDK_ROS2 repository.
ROSbot XL with Intel NUC 10 and Astra+.
Start guide
1. Plugin the device
For the best performance please use USB 2.0 / USB 3.0 / Ethernet port, depend of the camera model.
2. Clone repository
git clone https://github.com/husarion/orbbec-camera-docker.git
cd orbbec-camera-docker/demo
3. Select the appropriate launch file
export CAMERA_LAUNCH=<camera_launch>
Replace <camera_launch>
with appropriate launch file for your camera from below table.
Product Name | Firmware Version | Launch File |
---|---|---|
Astra+ | 1.0.22 - 1.0.19 | astra_adv.launch.py |
Astra 2 | 2.8.20 | astra2.launch.py |
Astra Mini Pro | 1007 | astra.launch.py |
Astra Mini S Pro | 1.0.05 | astra.launch.py |
Femto | 1.6.7 | femto.launch.py |
Femto Mega | 1.1.7 | femto_mega.launch.py |
Femto W | 1.1.8 | femto.launch.py |
Gemini | 3.0.18 | gemini.launch.py |
Gemini 2 | 1.4.60 / 1.4.76 | gemini2.launch.py |
Gemini 2 L | 1.4.32 | gemini2L.launch.py |
Gemini E | 3460 | gemini_e.launch.py |
Gemini E Lite | 3606 | gemini_e_lite.launch.py |
4. Run compose.yaml
xhost local:root
docker compose up
Result
After completing this procedure, RViz should start, containing the RGB image and the depth image of the camera.
ROS API
The full API of the robot can be found in the github repository of the device.
Summary
Among Orbbec's cameras, you can easily find good quality depth cameras at a relatively low price, which easily achieve satisfactory results. After completing this tutorial, you should be able to easily integrate all currently supported cameras into your robot using Docker images. Now you can use the acquired knowledge by creating a Tracker using the OpenCV library.
Need help with this article or experiencing issues with software or hardware? 🤔
- Feel free to share your thoughts and questions on our Community Forum. 💬
- To contact service support, please use our dedicated Issue Form. 📝
- Alternatively, you can also contact our support team directly at: support@husarion.com. 📧