3.1. Introduction

The Python Wrapper primarily includes the following features:

  • Obtain Depth, IR, and Color data streams.

  • Obtain IMU data streams.

  • Hardware D2C, Software D2C, and Software C2D.

  • Obtain Depth point cloud and RGBD point cloud.

  • Obtain multiple devices data and multi-device synchronization.

  • Coordinate transformations between different coordinate systems.

  • Post-processing filters and HDR merge functionality (supported by the Gemini 330 series).

  • Depth work modes (supported by Gemini 2/2L, Astra 2).

  • Presets (supported by Gemini 330 series).

  • Update Firmware .

  • Network functionality (supported by the Femto Mega).

3.2. Build your First Camera Application

quick_start.py show how to use the SDK to capture video streams with minimal code.

  • The data flow diagram for quick start sample is as follows:

quick_start

  • quick start sample introduction

#  1. Prerequisites
# compile pyorbbecsdk and  copy the compiled .pyd library and other dependent Orbbec SDK libraries to the examples directory.

from pyorbbecsdk import *
#2. create pipeline 
pipeline = Pipeline()

#3. start pipeline
pipeline.start()

#4. wait for frames
frames = pipeline.wait_for_frames(100)

#5. get frames
color_frame = frames.get_color_frame()
depth_frame = frames.get_depth_frame()

#6. Render frames using OpenCV


#7. stop pipeline
pipeline.stop()

3.3. Sample Features

Example Description Notes Level
enumerate.py Use the SDK interface to obtain camera-related information, including model, various sensors, and sensor-related configurations .
hot_plug.py Demonstrates how to detect hot plug events.
logger.py Use the SDK interface to set the log output level and customize the output path.
quick_start.py Demonstrates how to use the SDK.
callback.py Displays the video stream from the camera using a callback. ⭐⭐
color.py Displays the color stream from the camera. ⭐⭐
depth.py Displays the depth stream from the camera. ⭐⭐
imu.py Demonstrates how to read IMU data. ⭐⭐
infrared.py Displays the infrared stream from the camera. ⭐⭐
multi_device.py Demonstrates how to use multiple devices. ⭐⭐
net_device.py Demonstrates how to use network functions. Supported by Femto Mega and Gemini 2 XL. ⭐⭐
coordinate_transform.py Use the SDK interface to transform different coordinate systems. ⭐⭐⭐
device_firmware_update.py This sample demonstrates how to read a firmware file to perform firmware upgrades on the device. ⭐⭐⭐
depth_work_mode.py Demonstrates how to set the depth work mode. Supported by Gemini2、Gemini2L、Astra2、Gemini 2 XL ⭐⭐⭐
hdr.py In this sample, user can get the HDR merge image. Also supports user to toggle HDR merge and toggle alternate show origin frame. Supported by the Gemini 330 series. ⭐⭐⭐
hw_d2c_align.py Demonstrates how to use hardware D2C. ⭐⭐⭐
point_cloud.py Demonstrates how to save the point cloud to disk using a point cloud filter. ⭐⭐⭐
post_processing.py Demonstrates how to use post-processing filters. Supported by the Gemini 330 series. ⭐⭐⭐
preset.py Use the SDK interface to set and get the preset value. Supported by the Gemini 330 series. ⭐⭐⭐
sync_align.py Demonstrates how to use the align filter. ⭐⭐⭐
two_devices_sync.py Demonstrates how to synchronize two devices. ⭐⭐⭐