
RealSense SDK 2.0 在 Windows 平台的完整分发与安装指南二进制安装、源码构建与帧元数据启用【免费下载链接】librealsenseRealSense SDK项目地址: https://gitcode.com/GitHub_Trending/li/librealsenseRealSense™ SDK 2.0librealsense为 Windows 平台提供了一套开箱即用的二进制发行方案用户既可以直接下载预编译的RealSense.Viewer.exe与RealSense.SDK.exe快速体验深度相机并完成 SDK 安装也可以使用 CMake 与 Visual Studio 从源码自行构建。本文以仓库中的 Windows 发行说明 为主线完整覆盖预编译发行包的使用流程、安装器逐步操作、从源码构建的配置要点并结合 Windows 安装指南 与仓库源码深入讲解 Windows 平台帧元数据Frame Metadata的启用原理、注册表配置和 CMake 构建选项帮助开发者在 Windows 10/11 上从零搭建可用的 RealSense 开发环境。本文聚焦于 Windows 平台的分发与安装环节。若需了解 Linux 平台对应的 dpkg 包安装与内核补丁流程可参阅 Linux 发行说明若需了解帧元数据的软件设计与查询 API可继续阅读 帧元数据设计文档。前置认知Windows 上如何获得 SDKRealSense™ SDK 2.0 在 Windows 上的获取途径有两条分别对应不同场景预编译二进制发行官方在项目的 GitHub Releases 页面发布打包好的安装程序涵盖 RealSense Viewer 独立程序Intel.RealSense.Viewer.exe与完整 SDK 安装器RealSense.SDK.exe。适合快速验证硬件、安装运行库并获取各语言开发包。源码构建克隆仓库后使用 CMake 与 Visual Studio 从源码编译。适合定制功能、集成进现有工程或使用非标准构建选项如强制启用元数据支持的场景完整步骤见 Windows 10 11 源码安装指南。在开始任何操作之前将 RealSense 深度相机插入主机的USB3 端口然后打开 Windows 的“设备管理器”Device Manager在“图像设备”Imaging Devices分类下应能看到新接入的设备例如Intel(R) RealSense(TM) Camera D415 Depth如果设备未出现在设备管理器中请先排查 USB 端口类型与线缆是否满足 USB3 规格再继续后续安装步骤。快速体验使用 RealSense ViewerRealSense Viewer 是官方提供的图形化工具用于直接预览深度、彩色、红外等流数据无需编写任何代码。前往项目 Releases 页面的latest stable release最新稳定版展开Assets资源区下载并运行Intel.RealSense.Viewer.exe启动后即可浏览相机的深度数据Viewer 不仅能实时显示深度图还集成了后处理滤镜、测量、点云等功能是验证相机硬件与 SDK 运行状态最快捷的手段。若 Viewer 无法识别相机可参考文末的故障排查小节。安装 SDKRealSense.SDK.exe 安装器若需要在系统层面安装完整的 SDK包含运行时库、头文件、各语言开发包以及 RealSense Viewer请下载并运行RealSense.SDK.exe然后按以下步骤完成安装许可协议RealSense™ SDK 2.0 采用 Apache 2.0 宽松开源许可证安装向导第一步会展示该许可条款界面见 win_step1。组件选择SDK 同时包含 RealSense Viewer 以及针对多种编程语言如 Python、C#、MATLAB 等的开发包可按需勾选界面见 win_step2。快捷方式批准在桌面创建两个快捷方式界面见 win_step3。安装前审查确认安装路径与组件列表后进入安装界面见 win_step4。打开示例工程安装完成后打开随 SDK 分发的RealSense™ Samples解决方案界面见 win_shortcuts。编译运行示例在 Visual Studio 中按F5编译并运行示例程序界面见 win_samples。完成至此 SDK 安装成功可以开始基于 RealSense API 开发应用。安装器同时会部署设备驱动与必要的运行时组件因此安装完成后建议重新插拔一次相机确保驱动正确加载。从源码构建CMake Visual Studio对于需要定制构建或集成源码的开发场景仓库提供了完整的 CMake 构建体系整体入口为 根 CMakeLists.txt。构建环境要求CMake v3.10仓库根 CMakeLists.txt 中cmake_minimum_required(VERSION 3.10)即为最低版本约束Visual Studio 2019 或更新版本——MSVC2015 及更老的编译器不完全兼容项目所使用的 C14 特性集不支持虚拟机由于宿主机与虚拟机之间存在 USB 3.0 转换层官方不推荐也不支持在 VM 中安装使用请在物理机上操作。CMake 配置要点在 CMake GUI 中指定源码目录与构建目录点击 Configure 后即可看到大量可调选项。务必勾选BUILD_EXAMPLES否则不会编译官方示例程序常用的构建选项在 CMake/lrs_options.cmake 中定义Windows 场景下值得关注的包括选项默认值说明BUILD_EXAMPLESON编译示例程序不含图形示例图形示例由BUILD_GRAPHICAL_EXAMPLES控制BUILD_GRAPHICAL_EXAMPLESON编译图形示例Viewer 与 DQT隐式开启 GLSL 扩展ENFORCE_METADATAOFF强制要求 WinSDK 具备元数据支持不满足则中止构建仅 WindowsBUILD_WITH_CUDAOFF启用 CUDA 加速点云/图像转换FORCE_RSUSB_BACKENDOFF强制使用 RSUSBWinUSB后端Windows 7 下为强制项BUILD_PYTHON_BINDINGSOFF构建 Python 绑定pyrealsense2ENABLE_SECURITY_FLAGSOFF启用额外的编译器安全标志Windows 专属的构建行为仓库在 CMake/windows_config.cmake 中集中处理了 Windows 平台的构建细节理解这些行为有助于排查构建与运行问题输出目录统一CMAKE_LIBRARY/RUNTIME/ARCHIVE_OUTPUT_DIRECTORY全部指向构建根目录便于示例与测试运行时找到动态库Debug 库命名为 MSVC 设置CMAKE_DEBUG_POSTFIX d使 Debug 构建的库带有d后缀避免与 Release 版本产生命名冲突并行编译追加/MP编译标志支持多核并行构建后端选择Windows 7 下强制启用 RSUSBWinUSB后端RS2_USE_WINUSB_UVC_BACKEND其余 Windows 版本默认使用 WMFMedia Foundation后端RS2_USE_WMF_BACKEND安全标志启用ENABLE_SECURITY_FLAGS后会追加/Gy /DYNAMICBASE /GS等安全相关标志Release 构建还会加上/WX警告即错误、/sdl与链接期/LTCG /NXCOMPAT等强化项Win7 驱动打包启用 RSUSB 后端时构建系统会把 src/win7/drivers/IntelRealSense_D400_series_win7.inf 等驱动文件复制到构建目录的drivers/下供 Win7 目标机安装使用。从源码结构看WMF 后端实现在 src/mf/如 mf-backend.cpp、mf-uvc.cpp、mf-hid.cpp而 Win7 的 RSUSB 后端则在 src/win7/其入口 rsusb-backend-windows.cpp 通过create_backend()创建rs_backend_windows实例并配套基于轮询的polling_device_watcher监听设备热插拔。在 Windows 上启用帧元数据Frame Metadata帧元数据是随每一帧生成的一组传感器配置与系统状态参数是高级应用如自动曝光调优、帧同步调试依赖的能力。默认情况下 Windows 系统不会为视频设备暴露元数据通道需要按以下步骤显式启用。完整的元数据设计原理可参考 帧元数据文档。前置条件Windows 10 且使用管理员账户登录Windows 11 亦可安装 WinSDK 10版本 10.0.15063 或更高——较老的 SDK 不包含 UVC 元数据支持所需的 API。验证步骤在终端运行winver命令确认系统版本为 Windows 10Build 15063 或更高官方推荐 17763或 Windows 11打开“控制面板” → “程序和功能”双击 “Microsoft Visual Studio” 并选择 “修改”在组件列表中确认已勾选 10.0.10586 或更高版本的 SDK缺失则补充安装方式一使用自动化脚本推荐仓库提供了现成的 PowerShell 脚本 scripts/realsense_metadata_win10.ps1它能够自动扫描已连接的 RealSense 设备并在注册表中写入对应的元数据键。以管理员身份启动 PowerShell切换到脚本所在目录后运行# 为当前已连接的 RealSense 设备添加元数据注册表键等价于 -op install PS .\realsense_metadata_win10.ps1 # 也可显式指定操作参数 PS .\realsense_metadata_win10.ps1 -op install # 为已连接设备添加键 PS .\realsense_metadata_win10.ps1 -op install_all # 为注册表中所有含历史RealSense 设备添加键 PS .\realsense_metadata_win10.ps1 -op remove # 移除已连接设备的键 PS .\realsense_metadata_win10.ps1 -op remove_all # 移除所有 RealSense 设备的键脚本支持的四个操作参数语义如上install/install_all分别对应“仅已连接设备”与“注册表内全部设备”remove/remove_all为对应的清理操作不传参数时等价于install。若提示... cannot be loaded because running scripts is disabled on this system先执行以下命令放开脚本执行策略回答Y后重新运行PS Set-ExecutionPolicy RemoteSigned从 脚本源码 可以看到其核心逻辑它遍历HKLM:\SYSTEM\CurrentControlSet\Control\DeviceClasses下两个元数据相关的 GUID 分支{e5323777-f976-4f5b-9b55-b94699c46e44}与{65E8773D-8F56-11D0-A3B9-00A0C9223196}筛选 VID 为8086Intel的 UVC 设备记录并在每台设备的#global\Device Parameters下写入MetadataBufferSizeInKB0值为 5。对于脚本内置$MultiPinDevices列表中的多接口设备涵盖 D400/D410/D415/D420/D430/D435/D435i/D405/D455/D460/D465/L500/L515/L535 等型号以USB\VID_8086PID_xxxxMI_00形式匹配还会追加MetadataBufferSizeInKB1以及MetadataBufferSizeInKB2键值同样为 5。重要提示注册表键是与设备一一对应的键名包含设备实例路径因此每接入一台新的 RealSense 设备都必须重新执行一次该脚本。方式二手动修改注册表若因权限或其他原因无法执行脚本可手动完成配置连接 RealSense 设备打开“控制面板” → “设备管理器”找到 RealSense 设备条目例如RealSense™ Camera D415 Depth通过属性页找到设备的Device instance path设备实例路径Step 2同时记下该设备暴露的附加接口Step 3使用regedit导航到HKLM\SYSTEM\CurrentControlSet\Control\DeviceClasses\{e5323777-f976-4f5b-9b55-b94699c46e44}分支展开与上一步Device instance path 同名的子目录进入#GLOBAL→Device Parameters添加一个DWORD (32 位)值名称为MetadataBufferSizeInKB0值为5对于 RS400 系列设备的零号接口形如##?##USB#VID_8086PID... MI_00再添加DWORD (32 位)值MetadataBufferSizeInKB1值同样为5对应脚本中多接口设备需要额外键的逻辑对另一分支HKLM\SYSTEM\CurrentControlSet\Control\DeviceClasses\{65E8773D-8F56-11D0-A3B9-00A0C9223196}重复上述操作对设备管理器中列出的每一个RealSense 设备如RealSense™ Camera D415 RGB等重复整个过程。编译开启元数据支持编译阶段构建系统会根据所选 WinSDK 版本自动检测并启用/禁用元数据功能。若所选 WinSDK 不暴露元数据接口编译时会收到如下提示说明本次构建不包含元数据生成能力Librealsense notification: Featuring UVC Metadata requires WinSDK 10.0.10586.0 toolset. The library will be compiled without the metadata support!要强制开启请在 CMake 配置阶段勾选ENFORCE_METADATA选项。该选项在 CMake/lrs_options.cmake 中定义默认 OFF注释明确“Windows OS Only”并在 CMake/global_config.cmake 中通过add_definitions(-DENFORCE_METADATA)注入编译定义。设置后编译器会校验目标 WinSDK 版本若与元数据要求不兼容则直接中止构建。另外当系统安装了多个 WinSDK 版本时CMake 默认选择最新版本若自动选择失败可在 Visual Studio 中手动将解决方案重新定向Retarget到合适的 WinSDK 版本见 win_retarget_platform。常见问题排查错误现象可能原因修正措施SDK 无法识别相机SDK 没有访问相机的权限在 Windows 系统设置中开启“设置” → “隐私” → “相机” → “允许桌面应用访问你的相机”元数据查询返回不支持未完成注册表键配置或编译未启用元数据执行realsense_metadata_win10.ps1脚本确认以ENFORCE_METADATA重新构建设备在设备管理器中不可见USB 端口/线缆不满足 USB3 规格更换原生 USB3 端口与合格线缆后重新插拔虚拟环境中无法识别设备VM 的 USB 3.0 转换层限制在物理机上安装使用小结Windows 平台下的 RealSense SDK 2.0 提供了“下载即用”与“源码构建”两条并行的落地路径普通用户可通过 Releases 页面的 Viewer 与 SDK 安装器快速部署开发者则可基于 CMake 3.10 与 Visual Studio 2019 从源码定制构建并通过ENFORCE_METADATA等选项控制功能边界。帧元数据的启用涉及“系统注册表配置 编译期选项”两个层面仓库中的 realsense_metadata_win10.ps1 脚本与 windows_config.cmake 分别为这两个层面提供了自动化与可配置的支撑。完成上述步骤后即可基于 官方示例 开始 RealSense 应用开发。【免费下载链接】librealsenseRealSense SDK项目地址: https://gitcode.com/GitHub_Trending/li/librealsense创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考