前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >奥比中光-VisualStdio 2019 文档记录

奥比中光-VisualStdio 2019 文档记录

作者头像
云深无际
发布2021-11-12 18:35:10
6250
发布2021-11-12 18:35:10
举报
文章被收录于专栏:云深之无迹

奥比中光的相机可以使用VS 2019直接编译,但是我对VS不熟悉,让Linux一键编译惯坏了,今天在使用的时候发现有必要记录一下。

SDK在此:

代码语言:javascript
复制
https://developer.orbbec.com.cn/download.html?id=65

就是这个

下载

解压在一个位置,不要忘记

·

现成的Demo

集成的API

实用工具

代码语言:javascript
复制
https://api.orbbec.com.cn/uploads/files/Orbbec%20Viewer_v1.1.pdf

手册

其实真的做的还行,刚刚好。先简单的了解一下OpenNi2的一些基础概念。

OpenNI

OpenNI 类是API的静态入口,每一个OpenNI2.0的应用程序都需要使用这个类来初始化SDK以及驱动,以便可以创建合法的设备对象。OpenNI类还定义了一个监听器类以及相应的事件,使得当发生设备连接,设备连接断开及设备配置改变时,应用程序能得到事件通知。另外,OpenNI类提供了一个函数用来获取OpenNI的版本信息,提供了一个函数用来等待从列表中任何一个流产生的数据帧。

Device

Device类是对一个特定设备的抽象,特定的设备或者是一个硬件设备,或者是从一个硬件设备记录下来的文件设备。该类提供了连接一个设备,以及获取设备的配置信息和设备支持的流的种类的能力。该类提供了方法来查询和修改设备的配置参数,包括启动深度和彩色流以及帧同步等。当创建和初始化VideoStream类时会使用Device类-为了调用VideoStream.create()功能,我们需要一个Device对象的指针来作为VideoStream.create()函数的其中一个参数,对于应用开发者来说,将Device用来创建及初始化VideoStream是一个最基本的使用Device类的场景。在创建设备对象之前,OpenNI::initialize()函数必须已经被调用,使得API能够获得系统中的设备驱动。

VideoStream

视频流是来自特定数据源的帧的顺序流。想象一下一卷老式电影胶片,其中,视频将作为单个图像快照依次记录在长条胶片上。每个图像快照便是一帧,您可以将整部影片想象成一个流,而流与电影的区别在于流不一定有确切的终点。

VideoStream 对象封装了设备上的一个单独的视频流,VideoStream 对象创建之后,可以用来启动设备上的数据流和从设备上读取数据帧。VideoStream类是OpenNI中获取数据的核心, VideoStream类提供了手动以循环方式读取数据的能力以及提供了以事件驱动方式获取数据的事件类及监听器类的定义。

除了获取数据帧的接口,VideoStream类提供了一系列函数用来获取一个VideoStream对象的信息,比如视场、支持的视频模式以及支持的最大及最小像素值。除了获取数据,VideoStream对象还用来配置一个指定流的属性,特别地,可以用来控制裁剪、镜像和视频模式。

创建流时,我们需要 一个指向合法的已初始化设备(该设备需支持待创建的流类型)的指针作为参数。同一个传感器上可以创建多个视频流,这对当一个应用的多个模块都需要单独读取帧数据时很有用。

VideoStreamRef

VideoFrameRef 类是对一个视频帧及其元始数据的抽象。视频帧是一个特定的视频流在某个时间的输出。输出的数据中包含单个帧(Color、IR或者Depth)以及对应的元数据。

一个VideoFrameRef类的对象并不是真正持有帧中的数据,而只是帧的引用。这个引用可以通过销毁VideoFrameRef对象或者通过调用release()方法来释放。当帧的最后一个引用释放后,帧中的数据才会被真正的释放。

最常用的获取VideoFrameRef对象的方法是调用VideoStream.:readFrame()。

VideoFrameRef对象引用的数据以像素数组格式存储。每个像素的类型都与指定的像素格式保持一致。

代码语言:javascript
复制
https://developer.orbbec.com.cn/technical_library/OpenNI2/zh/getting_started.html

主要是跟着这个文章来配置的

这是文档

配置页面

我还有很多的疑惑,然后我就找到了IDE的文档所在:

代码语言:javascript
复制
https://docs.microsoft.com/zh-cn/cpp/build/working-with-project-properties?view=msvc-160

大家可以看一下

我就是参考这个配置的,下一篇文章为配置和源码解读。

这个写的是真清晰,我喜欢!

代码语言:javascript
复制
https://github.com/OpenNI/OpenNI2

之后放上OpenNi2的库。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-11-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 云深之无迹 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • OpenNI
  • Device
  • VideoStream
  • VideoStreamRef
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档