RealSense

3D实感技术是Intel研发的一项新的技术。这项技术利用摄像头,红外投影传感设备及红外捕捉设备获取外界的深度信息,彩色视频信息以及其它信息。并基于此完成获取深度图像,彩色图像,手势识别,面部识别,语音识别,三维重建等工作。

之前2年时间学习,毕业设计和工作接触了Kinect

1代和2代。2014年末参加Intel实感技术全球挑战赛,也接触过一段时间RealSense。​相较于Kinect,RealSense与Kinect有许多相同点:捕捉外界深度信息,彩色信息并基于此完成许多不同的工作。然而RealSense(F200)与目前的Kinect相比,也有许多优劣势,先说说劣势吧,

1.RealSense官方说明提供的有效识别范围是0.2m-1.2m,实际使用时经过测试发现1m之内的效果比较好,超过1m效果不是很好。另外手势识别和脸部识别的距离更短,只有几十cm。而Kinect由于设计初衷就是为XBox设计的体感游戏外设,所以它的检测距离在40cm到3m之间,范围非常大。

2.由于捕捉的范围​非常的大,Kinect可以捕捉人体20个关节节点(2代Kinect可以捕捉25个),所以Kinect可以识别各种人体动作,比如走路,挥手等。而RealSense则由于探测距离的原因无法识别人体全部骨骼,只能识别近距离的手部关节和面部关节。

再说下RealSense的优势吧,由于距离近,所以RealSense

SDK提供了对手部节点的识别以及手势识别,这点Kinect SDK并没有提供,此外RealSense也提供了面部特征识别。

另外,由于RealSense的芯片较小,所以已经被集成到了Laptop(笔记本)上面,这无疑大大增加了RealSense的可扩展性,不需要额外的空间也可以开发小范围的手势体感应用。​

下面就来介绍下RealSense体感设备,先从RealSense设备本身开始:

如图所示为RealSense设备

​在观察RealSense设备后可以发现在设备上有三个传感摄像头,其中位于中间的摄像头是RGB彩色摄像头;而位于左侧的是红外捕捉摄像头,位于右边的是红外投影仪,这两者结合可以获取外界的深度信息。

​官方文档中提供的数据说明了彩色相机和深度相机的参数:

分辨率方面彩色相机可以达到1080P@30FPS,而深度数据可以达到640X480@60FPS(VGA),@120FPS(HVGA)。

​彩色相机的宽高比(Aspect

Ratio)为16:9,深度相机的宽高比为4:3。

彩色相机的照射范围是77° x 43° x

70°(Diagonal X Vertical X Horizontal),深度相机的范围是90° x 59° x 73°(对角 X

垂直 X 水平)。

RealSense原始数据的捕捉范围是在0.2m -

1.2m之间。​可以再室内或室外环境,取决于外部光照等条件。

RealSense提供的手势识别距离很近:HVGA模式范围是20-55cm,而VGA模式提供的范围是20-60cm。

RealSense提供的面部追踪有2中模式,分别是2D面部追踪和3D面部追踪,2D面部追踪的有效范围是35-120cm,3D面部追踪提供的有效范围是35-70cm。​

RealSense官方介绍中也提示开发者及用户要在有效的视区中操作,识别,离开识别视野后就无法正常使用了。

​以上大致介绍完RealSense的硬件及其范围,下面说下RealSense的SDK架构。这里需要用到一张官方文档中的结构图:

RealSense

SDK 结构图

SDK

core是模块的基础,它的一个工作就是管理IO模块和Capability(功能)模块。IO模块负责从设备获取数据,然后将数据传输至输出设备或Capability模块;Capability模块则包括了不同的模式检测和识别算法,比如面部追踪和识别,手部追踪,手势识别以及声音识别和集成。

​   SDK

core的另一个工作是组织执行管道(Execution

pipeline),或许在管道中同时会有很多模块,所以有必要有一个管理类。如果需要多台设备,则需要多管道。

底层模块被封装成了不同平台的接口,包括c#接口,Unity接口,Java接口,c++接口等,以方便不同的开发者使用。

SDK架构介绍完后,需要说明下RealSense所需要的软件平台和硬件平台:

处理器:至少需要Intel第四代Core处理器

​OS : Microsoft Windows

8.1

支持语言:

C++,C#,Java,JavaScript

集成开发环境:Microsoft Visual Studio 2010 - 2013

支持开发工具:Microsoft .Net 4.0 Framework for c#

Unity* pro

4.1.0 or late

Processing

2.2.1 or late

Java JDK

1.7.0 or higher​

以上介绍完了RealSense的基本情况,由于篇幅关系,有不完善的地方。总的来说RealSense是​Intel的一次大胆尝试,现在的应用App较少,但前景乐观,不论从商业开发App还是学术领域研究识别算法,图像处理以及三维重建都有着较高的拓展性。在随后我将去了解及学习RealSense的开发环境部署以及深度,视频,手势及面部识别等功能的开发。

matlab控制realsense,RealSense开发学习--1.初识RealSense相关推荐

  1. 安卓开发学习之初识ndk开发

    背景 今天没事干,就开始学习ndk开发,实现了一下Android和C的函数方法互调,记录一下步骤 步骤 1.通过Android Studio的SDK Manager安装CMake.LLDB和NDK 2 ...

  2. 开发学习笔记——初识P3D

    P3D,Prepar3D 是一款由Lockheed Martin公司开发的军队训练仿真软件.私人飞行员,商业组织,学术学会以及军队都依赖于Prepar3D进行沉浸式学习.P3D是可视化的仿真平台,并允 ...

  3. Polyworks脚本开发学习笔记(六)-比较运算、数学运算、逻辑运算及流程控制

    Polyworks脚本开发学习笔记(六)-比较运算.数学运算.逻辑运算及流程控制 前言 比较运算.逻辑运算及流程控制是编程的基本语法,Polyworks的语法规则与VB/C#/Python等并没有很大 ...

  4. Polyworks脚本开发学习笔记(十)-互动式开发及出错控制

    Polyworks脚本开发学习笔记(十)-互动式开发及出错控制 第八章组合的各种命令,完成了一个对所选的测点名称进行命名的任务.但是,由于任务中没有交互环节,只能机械地将 曲面点 - 包边点改为Flu ...

  5. matlab软件中GUI界面开发学习——双色球选择小工具

    matlab软件中GUI界面开发学习--双色球选择小工具 先上一张界面截图: 特别说明:只是最近对双色球比较感兴趣,所以找了一个实际的项目依据帮助我学习GUI工具,小工具的相关条件仅代表个人想法,选择 ...

  6. matlab length_《Matlab - Robotics System Toolbox》学习笔记(2)

    写作说明: 1. 本文主要记录学习 Matlab - Robotics System Toolbox[1]的过程,就其中的一些重要知识点做相关记录.方便后期供自己与他人进行学习. 2. 由于 Matl ...

  7. MATLAB App Designer GUI开发从0到1(二)

    文章目录 前言 一.开关以及旋钮 1. 左上角:旋钮 2.右上角:90度仪表 3.左下角:分档开关 4.右下角:开关 5.对旋钮微调 二.画图 1. 普通画图 2.添加小组件 三.回调函数 简单的回调 ...

  8. Nacos学习之初识Nacos

    Nacos学习之初识Nacos 在分布式项目中既然存在Eureka这个注册中心,那么Nacos有充当什么角色?Nacos到底是个啥?他又是咋么下载安装的?本文我会将从什么是Nacos.Nacos与其他 ...

  9. PE病毒学习笔记——初识感染技术 (转自看雪学院)

    [分享]PE病毒学习笔记--初识感染技术 <script type="text/javascript"></script>   标 题: [分享]PE病毒学 ...

最新文章

  1. 如何在 Python 中开始机器学习?(小白必看)
  2. RHEL 6.5 安装 was 8.5
  3. 成都理工大学乐千桤java考试_2009年度优秀教师、优秀教务工作者评选结果公示-成都理工大学工会...
  4. java selenium (十) 操作浏览器
  5. AndroidLinker与SO加壳技术之上篇
  6. 33万字!深度学习笔记在线版发布!
  7. php中生成标准uuid(guid)的方法
  8. 关于Bitmap中的inBitmap变量的学习与使用
  9. android onlescan 参数,Android BLE:从iOS外设广告时,在onLeScan()回调中检索服务UUID
  10. Java压缩技术(五) GZIP相关——浏览器解析
  11. linux系统中如何安装qwt,linux下Qt开发环境中qwt库的安装与使用
  12. scala 函数中嵌套函数_Scala函数–声明,定义,调用和嵌套函数
  13. 硬见小百科:机加工中获得工件尺寸精度的常用方法
  14. Android酷炫计时器
  15. elasticsearch对analyzed字段无法使用term方法的解决办法
  16. NLP在网络文学领域的应用
  17. Domain Adaptation
  18. Linux脚本定时开关机,2020-09-06shell脚本开机自动启动与定时任务
  19. Python中__main__.py文件的作用
  20. win10 ubuntu16.04 双系统 时间不一致问题解决办法

热门文章

  1. “哪里有人喜欢孤独,不过是害怕失望罢了”———村上春树《东尼泷谷》观后感...
  2. CodeForces - 1017D The Wu
  3. 在VMware中装Win server 2012配置Hyper-v
  4. Asp.net MVC在Razor中输出Html的两种方式
  5. anddroid悬浮窗的手机QQ后台清理不掉的秘密
  6. 2.1.1物理层基本概念
  7. torchvision包的主要构成
  8. volatile关键字解析
  9. 【剑指offer】面试题50:第一个只出现一次的字符(java)
  10. python函数递归法求一个数各位数之和_python – 设计一个使用digit_sum计算数字总和的递归函数...