# Mv3dRgbdSDK_OpenNI2 **Repository Path**: Hikrobot/Mv3dRgbdSDK_OpenNI2 ## Basic Information - **Project Name**: Mv3dRgbdSDK_OpenNI2 - **Description**: RGB-D相机SDK OpenNI2 - **Primary Language**: C - **License**: BSD-3-Clause - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-03-01 - **Last Updated**: 2023-03-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # **一.** **环境设置** 注:本开发给的两个项目都可以编译运行,分别是rs2Driver和openni,以下文档内容是从零开始编译OpenNI有关的工程。 1.去Github中搜索RealSense,下载ZIP包,找到“[librealsense](https://github.com/IntelRealSense/librealsense)/[wrappers](https://github.com/IntelRealSense/librealsense/tree/master/wrappers)/**openni2**/”,在[README.md](https://github.com/IntelRealSense/librealsense/tree/master/wrappers/openni2#readme)处下载OpenNI2 SDK 和RealSense2 SDK,或者到官网下载OpenNI2 SDK。(本文档已经提供了两个文件) 2.不要改动目录直接安装两个SDK文件。 3.下载CMake程序(桌面版,文件已经给了),将下载的ZIP包解压,找到“[librealsense](https://github.com/IntelRealSense/librealsense)/[wrappers](https://github.com/IntelRealSense/librealsense/tree/master/wrappers)/**openni2**/”下的CMkeLists.txt文件,使用CMake程序编译出vs工程。 4.解压openni2.zip后替换掉“[librealsense](https://github.com/IntelRealSense/librealsense)/[wrappers](https://github.com/IntelRealSense/librealsense/tree/master/wrappers)/”下的openni2(注意文件路径)。 5.按照7修改环境配置,路径为自己的MV3D SDK的路径。 6.使用编译出的vs工程(Rs2driver.sln),编译所需驱动的动态库(Rs2driver.DLL)。(本文已经开发好了适应于Mv3d SDK的OpenNI代码示例,)。openni.zip是适用于Mv3d SDK的OpenNI框架Demo 7.安装好的OpenNI2 会有一个工程文件夹“OpenNI2\Samples\”,将编译好的动态库和Mv3d动态库放置在所需位置(按照1中的使用说明来)。Mv3d库路径为“C:\Program Files (x86)\Common Files\Mv3dRgbdSDK\Runtime\Win64_x64”,如: # 二.OpenNI2开发逻辑 OpenNI2通过上文提到过的rs2Driver的接口来进行过程调用,从而让开发者只使用接口调用进行开发工作。 rs2Driver底层实现了三个类,相关的类都放在命名空间oni::driver中,主要的类有DriverBase、DeviceBase、StreamBase;各个设备Driver都需要实现这些类,同时将DriverClass通过宏ONI_EXPORT_DRIVER导出,而这三个类都继承自父类Base,具体介绍请看: 1.《浅析OpenNI2---Driver开发(1)》转载 [https://blog.csdn.net/magicfrog2009/article/details/74062894](https://blog.csdn.net/magicfrog2009/article/details/74062894)  2.《浅析OpenNI2---Driver开发(2)》转载  [浅析OpenNI2---Driver开发(2)_magicfrog2009的博客-CSDN博客](https://blog.csdn.net/magicfrog2009/article/details/75153937)       Intel在实现rs2Driver的三个类时,利用IntelRealSense SDK进行了再封装。从而实现了简单易懂的OpenNI框架,所以我们的开发目标就是在原有OpenNI的基础上,利用Mv3d SDK替换掉IntelRealSense SDK,按功能需求重新实现相关函数即可。 ##