OrbbecSDK

Orbbec SDK

stability version

[!重要]

欢迎使用 Orbbec SDK,在开始使用此版本的 Orbbec SDK 之前,请务必查看以下设备支持列表,以确认兼容性。

main分支基于 Orbbec SDK v1,兼容 Orbbec 原有的 OpenNI 协议设备,使开发者能够迁移到 Orbbec SDK 并用一套代码同时支持新旧产品。

随着 2024 年 10 月的重大更新,Orbbec SDK 变为开源,具有更高的灵活性和可扩展性。此次更新确保兼容所有遵循 UVC 标准的新款 Orbbec USB 产品。然而Orbbec SDK v2不再支持 Orbbec 的传统 OpenNI 协议设备,这些设备将在 Orbbec SDK v1 分支继续获得 bug 修复支持。我们建议先确认你的设备是否被 Orbbec SDK v2 支持,如果支持请使用新版本。

以下是main分支 (v1.x) 和 Orbbec SDK v2 (v2.x) 的设备支持列表:

Product Series Product Orbbec SDK v1 Orbbec SDK v2
Gemini 305 Gemini 305 not supported recommended for new designs
Gemini 340 Gemini 345 not supported recommended for new designs
Gemini 345Lg not supported recommended for new designs
Gemini 435Le Gemini 435Le not supported recommended for new designs
Gemini 330 Gemini 335Le not supported recommended for new designs
Gemini 335 full maintenance recommended for new designs
Gemini 336 full maintenance recommended for new designs
Gemini 330 full maintenance recommended for new designs
Gemini 335L full maintenance recommended for new designs
Gemini 336L full maintenance recommended for new designs
Gemini 330L full maintenance recommended for new designs
Gemini 335Lg not supported recommended for new designs
Gemini 2 Gemini 2 full maintenance recommended for new designs
Gemini 2 L full maintenance recommended for new designs
Gemini 2 XL recommended for new designs to be supported
Gemini 215 not supported recommended for new designs
Gemini 210 not supported recommended for new designs
Femto Femto Bolt full maintenance recommended for new designs
Femto Mega full maintenance recommended for new designs
Femto Mega I full maintenance recommended for new designs
Astra Astra 2 full maintenance recommended for new designs
Astra+ limited maintenance not supported
Astra Pro Plus limited maintenance not supported
Astra Mini Astra Mini Pro full maintenance recommended for new designs
Astra Mini S Pro full maintenance recommended for new designs
LiDAR Pulsar ME450 not supported recommended for new designs
Pulsar SL450 not supported recommended for new designs

注意:

  1. 如果未找到您的设备,请联系我们的 FAE 或销售代表寻求帮助。
  2. 如果设备同时支持 Orbbec SDK v1 与 Orbbec SDK v2,两个SDK所支持的最低固件版本可能不同。支持的最低固件版本请查看支持的设备列表。特别需要注意的是,Astra Mini Pro 与 Astra Mini S Pro 在 v1.x.x 与 v2.x.x 固件中采用了不同的通信协议:Orbbec SDK v1 仅支持 v1.x.x 固件,而 Orbbec SDK v2 仅支持 v2.x.x 固件。若需从 v1.x.x 升级至 v2.x.x,请参考链接

定义:

  1. recommended for new designs: 我们将提供完整支持,包括新功能、bug 修复和性能优化;
  2. full maintenance: 我们将提供 bug 修复支持;
  3. limited maintenance: 我们将提供关键 bug 修复支持;
  4. not supported: 本版本不支持该设备;
  5. to be supported: 我们在未来增加对该设备的支持。

支持的设备

Products List Minimal Firmware Version
Gemini 330 1.2.20
Gemini 330L 1.2.20
Gemini 335 1.2.20
Gemini 335L 1.2.20
Gemini 336 1.2.20
Gemini 336L 1.2.20
Femto Bolt 1.0.6
Femto Mega 1.1.7
Femto Mega I 2.0.2
Gemini 2 XL Obox: V1.2.5 VL:1.4.54
Astra 2 2.8.20
Gemini 2 L 1.4.32
Gemini 2 1.4.60
Astra+ 1.0.19
Femto 1.6.7
Femto W 1.1.8
DaBai 2436
DaBai DCW 2460
DaBai DW 2606
Gemini E 3460
Gemini E Lite 3606
Gemini 3018
Astra Mini Pro 1007
Astra Mini S Pro 1005

本仓库包含内容

软件license结构说明

当前遵循软件license结构如下: SdkLicenseDiagram

每个模块的许可信息可以在license file中找到。

平台支持

Operating system Requirement Description
Windows - Windows 10 April 2018 (version 1803, operating system build 17134) release (x64) or higher ,windows 11 The generation of the VS project depends on the installation of the VS version and the cmake version, and supports VS2015/vs2017/vs2019
Linux - Linux Ubuntu 16.04/18.04/20.04/22.04 (x64) Support GCC 7.5
Arm32 - Linux Ubuntu 16.04/18.04/20.04 Support GCC 7.5
Arm64 - Linux Ubuntu 18.04/20.04/22.04 Support GCC 7.5
MacOS - M series chip, 11.0 and above; Intel x86 chip, 10.15 and above. supported hardware products: Gemini 2, Gemini 2 L, Astra 2, Gemini 2 XL, Femto Mega, Gemini 330 series

OrbbecViewer

OrbbecViewer 是一个基于 Orbbec SDK 的实用工具,可用于查看 Orbbec 相机的数据流并控制相机。 OrbbecViewer

支持的平台: Windows x64, Linux x64 & ARM64, MacOS M series chip & Intel x86 chip

下载链接: Releases

OrbbecViewer使用说明: OrbbecViewer User Manual

入门指南

获取源码

git clone https://gitee.com/orbbecdeveloper/OrbbecSDK.git

你也可以通过二进制包安装,更多信息请参考installation guidance

环境配置

如果你通过 Debian 包安装,可以跳过 udev 规则文件的安装。如果没有,请使用以下命令安装:

  cd OrbbecSDK/misc/scripts
  sudo chmod +x ./install_udev_rules.sh
  sudo ./install_udev_rules.sh
  sudo udevadm control --reload && sudo udevadm trigger

示例

示例代码位于 ./examples 目录,可使用 CMake 构建。

编译

cd OrbbecSDK && mkdir build && cd build && cmake .. && cmake --build . --config Release

运行示例

将 Orbbec 相机连接到电脑后,按以下步骤运行:

cd OrbbecSDK/build/bin # build output dir
./OBMultiStream  # OBMultiStream.exe on Windows

注意:在 MacOS 上需要 sudo 权限。

# MacOS
cd OrbbecSDK/build/bin # build output dir
cp ../../lib/macOS/* . # copy lib to output dir
sudo ./OBMultiStream

下图是 Gemini2 设备运行 MultiStream 的结果,其他设备的运行结果可能有所不同。

Multistream

注意: 在 Linux/Arm 平台上,此示例要求用户使用 OpenCV 4.2 或更高版本编译,否则无法渲染。

在 CMake 项目中使用 Orbbec SDK

在 CMakeLists.txt 文件中查找并链接 Orbbec SDK,例如:

cmake_minimum_required(VERSION 3.1.15)
project(OrbbecSDKTest)

add_executable(${PROJECT_NAME} main.cpp)

# find Orbbec SDK
set(OrbbecSDK_DIR "/your/path/to/OrbbecSDK")
find_package(OrbbecSDK REQUIRED)

# link Orbbec SDK
target_link_libraries(${PROJECT_NAME} OrbbecSDK::OrbbecSDK)

文档

概览

教程

API 参考

多相机同步

常见问题(FAQ)

多相机无数据流

供电不足:

高分辨率:

增加 usbfs_memory_mb 值:

相关链接