【计算机视觉】深度相机(一)--TOF总结
http://www.voidcn.com/blog/lg1259156776/article/p-6302915.html
1.1 TOF初探
TOF是Time of flight的简写,直译为飞行时间的意思。所谓飞行时间法3D成像,是通过给目标连续发送光脉冲,然后用传感器接收从物体返回的光,通过探测光脉冲的飞行(往返)时间来得到目标物距离。这种技术跟3D激光传感器原理基本类似,只不过3D激光传感器是逐点扫描,而TOF相机则是同时得到整幅图像的深度信息。TOF相机与普通机器视觉成像过程也有类似之处,都是由光源、光学部件、传感器、控制电路以及处理电路等几部单元组成。与同属于非侵入式三维探测、适用领域非常类似的双目测量系统相比,TOF相机具有根本不同3D成像机理。双目立体测量通过左右立体像对匹配后,再经过三角测量法来进行立体探测,而TOF相机是通过入、反射光探测来获取的目标距离获取。
TOF技术采用主动光探测方式,与一般光照需求不一样的是,TOF照射单元的目的不是照明,而是利用入射光信号与反射光信号的变化来进行距离测量,所以,TOF的照射单元都是对光进行高频调制之后再进行发射,比如下图所示的采用LED或激光二极管发射的脉冲光,脉冲可达到100MHz。与普通相机类似,TOF相机芯片前端需要一个搜集光线的镜头。不过与普通光学镜头不同的是这里需要加一个带通滤光片来保证只有与照明光源波长相同的光才能进入。同时由于光学成像系统具有透视效果,不同距离的场景为各个不同直径的同心球面,而非平行平面,所以在实际使用时,需要后续处理单元对这个误差进行校正。作为TOF的相机的核心,TOF芯片每一个像元对入射光往返相机与物体之间的相位分别进行纪录。该传感器结构与普通图像传感器类似,但比图像传感器更复杂,它包含2个或者更多快门,用来在不同时间采样反射光线。因为这种原因,TOF芯片像素比一般图像传感器像素尺寸要大得多,一般100um左右。照射单元和TOF传感器都需要高速信号控制,这样才能达到高的深度测量精度。比如,照射光与TOF传感器之间同步信号发生10ps的偏移,就相当于1.5mm的位移。而当前的CPU 可到3GHz,相应得时钟周期是300ps,则相应得深度分辨率为45mm。运算单元主要是完成数据校正和计算工作,通过计算入射光与反射光相对相移关系,即可求取距离信息。
TOF的优势:与立体相机或三角测量系统比,TOF相机体积小巧,跟一般相机大小相去无几,非常适合于一些需要轻便、小体积相机的场合。TOF相机能够实时快速的计算深度信息,达到几十到100fps。TOF的深度信息。而双目立体相机需要用到复杂的相关性算法,处理速度较慢。TOF的深度计算不受物体表面灰度和特征影响,可以非常准确的进行三维探测。而双目立体相机则需要目标具有良好的特征变化,否则会无法进行深度计算。TOF的深度计算精度不随距离改变而变化,基本能稳定在cm级,这对于一些大范围运动的应用场合非常有意义。
1.2 TOF研究机构
<1> Dynamic 3D Vision (2006-2010):
研究领域:多芯片2D/3D传感器, 动态场景重建, 目标位置识别和光场计算
官网:www.zess.uni-siegen.de/pmd-home/dyn3d
<2>ARTTS (2007-2010):
全称:“Action Recognition and Tracking based on Time-of-Flight Sensors”
研究领域:开发更加小型更加便宜的新一代TOF相机;将HDTV与TOF技术相结合(iii) 基于动作跟踪和识别算法的多模式接口和交互系统
<3>Lynkeus (2006-2009):
研究领域:致力于工业应用领域的高分辨率和鲁棒性的TOF传感器,例如自动化和机器人导航
<4>3D4YOU(2008-2010):
研究领域: 构建3D-TV产品线,从3电影中实时获取点云数据并且转换为3D显示到家庭电视中3D4YOU 应用ToF range cameras初始化估计多个高清晰度相机的深度以及初始化计算3D场景图像的深度。
<5>MOSES(2008-2012):
全称:“Multi-Modal Sensor Systems for Environmental Ex-ploration (MOSES)”
研究领域:基于传感器的多方面的应用,包括基于TOF的人机接口和多传感器融合
官网:www.zess.uni-siegen.de/ipp_home/moses
TOF 相机目前的主要应用领域包括:
<1> 物流行业:通过 TOF 相机迅速获得包裹的抛重(即体积),来优化装箱和进行运费评估;
<2> 安防和监控:
进行 Peoplecounting 确定进入人数不超过上限;
通过对人流或复杂交通系统的counting,实现对安防系统的统计分析设计;
敏感地区的检测对象监视;
<3> 机器视觉:工业定位、工业引导和体积预估;
替代工位上占用大量空间的、基于红外光进行安全生产控制的设备;
<4> 机器人:
在自动驾驶领域提供更好的避障信息;
机器人在安装、质量控制、原料拣选应用上的引导;
<5>医疗和生物:足部矫形建模、病人活动/状态监控、手术辅助、面部3D 识别;
<6>互动娱乐:动作姿势探测、表情识别、娱乐广告
<1>优点:
1.相对二维图像,可通过距离信息获取物体之间更加丰富的位置关系,即
区分前景与后景;
2.深度信息依旧可以完成对目标图像的分割、标记、识别、跟踪等传统应用;
3.经过进一步深化处理,可以完成三维建模等应用;
4.能够快速完成对目标的识别与追踪;
5.主要配件成本相对低廉,包括CCD和普通 LED 等,对今后的普及化生产及使用有利;
6.借助 CMOS 的特性,可获取大量数据及信息,对复杂物体的姿态判断极为有效;
7.无需扫描设备辅助工作
<2>缺点:
1.相对于普通数码相机,其造价仍然偏高,影响该产品目前的普及使用率;
2.相机本身仍然受到硬件发展的限制,更新换代速度较快;
3.测量距离较常规测量仪器短,一般不超过 10 米;
4.测量结果受被测物性质的影响;
5.大多数机器的测量结果受外界环境干扰较为明显,尤其是受外界光源干扰;
6.分辨率相对较低,本文研究的 PMD Camcube 2.0 型号相机,为目前分辨率最高的 3D 相机,其分辨率仅为 204×204像素(这个信息比较老了。没有实际意义);
7. 系统误差及随机误差对结果影响明显,需要进行后期数据处理。
2 深度相机比较
目前的深度相机有TOF、结构光、激光扫描等几种。主要用于机器人、互动游戏等应用。其中较多的是指TOF相机。目前主流的有TOF相机厂商有PMD、MESA、Optrima、微软等几家,其中MESA在科研领域使用较大,相机紧凑性好,而PMD是唯一一款能够在户内、户外均能使用的TOF相机,并且能够具有多种探测距离,可用于科研、工业等各种场合。而Optrima、微软(还不是真正的TOF技术)的相机主要面向家庭、娱乐应用,价位较低。
<1>MESA公司:SR4000
<2>PMD公司:CamCube3.0
<3> Canesta公司:XZ422
<4> Fotonic公司
官网:http://www.fotonic.com/content/Company/Default.aspx
2.1 MESA系列介绍
MESA Imaging AG成立于2006年7月,致力于生产销售世界领先的3D 飞行时间(TOF)深度测绘相机。该相机采用的图像芯片技术,能够实时采集三维数据列(通常称之为深度图像),并集成于一个紧凑的固件内。MESA 在此领域荣获过SwissRanger技术创新奖,众多的成功经验可以为客户带来定制相机解决方案。MESA的产品能够进行单相机3D成像。它采用飞行时间法(Time of flight),通过给目标连续发送光脉冲,然后用传感器接收从物体返回的光、探测光脉冲的飞行(往返)时间来得到目标物距离。相比于其它立体成像方式,这种方式具有实时性好、无死区等特点。MESA的芯片由专门的厂家生产,并引进了CCD/CMOS生产工序,保证了光电功能模块的独立性以及优化配置。由此保证了MESA使用的芯片的底层噪声和随后的距离测量能力大大优于基于标准CMOS工艺制造的芯片。其型号是SR4000
SR4000 3D测距相机能以视频帧速率实时输出3维距离值和振幅值。基于时间飞行原理(time-of-flight TOF),相机包括一个内置的激光光源,发射光经场景中的物体反射后返回相机,每个图像传感器中的像素点都分别精确测量该时间间隔,并独立算出距离值。设计用于户内环境,SR4000可轻易经USB2.0或者以太网(Ethernet)接口连接到电脑或者网络中,快速生成实时深度图。代表着MESA公司第4代时间飞行原理相机,它可输出稳定的距离值,外形美观、坚固,体积小(65 X 65 X 68mm)(USB版)。 SR4000随机包括驱动和软件接口程序,用户可以通过接口程序创建更多的应用。
2.2 PMD Tec系列
Camcube3.0是全球第一款可应用于室外环境的高精度深度相机,这为汽车辅助驾驶、移动机器人等应用带来了便利。在汽车等交通工具中,停车、开车运行等都一直通过驾驶员的直接观测和经验来完成,由于人的经验误差或精神状态影响,在实际过程中,难免会出现各种状况。而通过TOF相机3D探测,可以很方便的对外界环境进行探测,并对驾驶员起到提醒和辅助驾驶的作用。
PMDTec公司是一家德国公司,其原身是德国锡根大学一个研究传感器系统(ZESS)的中心实验室,2002年从德国锡根大学分离出来组建了公司,后被另一家公司收购组建了现在的PMDTec公司。该公司研究3D TOF Imaging(时间飞行技术)超过了10年。2011年,Omek Interactive和PMDTechnologies宣布达成了战略合作伙伴关系,以提供姿态识别和身体跟踪解决方案,这为今后的商业应用打下了坚实的基础。该公司的产品已经开发到了第三代 - CamCube3.0。3D摄像头的分辨率为200*200,可以以每秒40帧的速度获取场景的深度信息和灰度图像。CamCube3.0具有非常高的灵敏度,它可以在较短的快门时间内获得更高精度和更远的探测距离。由于其独家的SBI技术,TOF是少有的既可以用于室内,又可以用于室外的TOF相机,并可以探测快速运动目标。不过缺点就是价格不菲,不含税的话,要12000美元。所以只适合搞科研,对于民用还有很长的路要走。
PMDTec 公司网址:http://www.pmdtec.com/
PMDTec Wiki:http://en.wikipedia.org/wiki/PMDTechnologies
2.3 NATAL
Natal并不是基于ToF的原理,PrimeSense为微软提供了其三维测量技术,并应用于Project Natal。在PrimeSense公司的主页上提到其使用的是一种光编码(light coding)技术。不同于传统的ToF或者结构光测量技术,light coding使用的是连续的照明(而非脉冲),也不需要特制的感光芯片,而只需要普通的CMOS感光芯片,这让方案的成本大大降低。Light coding,顾名思义就是用光源照明给需要测量的空间编上码,说到底还是结构光技术。但与传统的结构光方法不同的是,他的光源打出去的并不是一副周期性变化的二维的图像编码,而是一个具有三维纵深的“体编码”。这种光源叫做激光散斑(laser speckle),是当激光照射到粗糙物体或穿透毛玻璃后形成的随机衍射斑点。这些散斑具有高度的随机性,而且会随着距离的不同变换图案。也就是说空间中任意两处的散斑图案都是不同的。只要在空间中打上这样的结构光,整个空间就都被做了标记,把一个物体放进这个空间,只要看看物体上面的散斑图案,就可以知道这个物体在什么位置了。当然,在这之前要把整个空间的散斑图案都记录下来,所以要先做一次光源的标定。在PrimeSense的专利上,标定的方法是这样的:每隔一段距离,取一个参考平面,把参考平面上的散斑图案记录下来。假设Natal规定的用户活动空间是距离电视机1米到4米的范围,每隔10cm取一个参考平面,那么标定下来我们就已经保存了30幅散斑图像。需要进行测量的时候,拍摄一副待测场景的散斑图像,将这幅图像和我们保存下来的30幅参考图像依次做互相关运算,这样我们会得到30幅相关度图像,而空间中有物体存在的位置,在相关度图像上就会显示出峰值。把这些峰值一层层叠在一起,再经过一些插值,就会得到整个场景的三维形状了。
2.4 primeSense
今天最常见的影像捕捉设备是数码相机。数码相机输出一个像素矩阵,每个像素代表一个色值。这是一种二维(2D)视觉技术。3D 视觉是指除了捕捉目标的空间位置(x 轴和 y 轴)和颜色之外,还能捕捉目标的深度(又称 Z 轴、范围、距离)及其周围环境。一个 3D 视觉系统同时输出每个场景的地形视图和色彩视图。PrimeSense是一家无厂半导体公司。他们的技术赋予电视、机顶盒、客厅电脑等消费电子产品自然互动能力。他最得意的两个字就是:深度。他们的 PrimeSensor 产品包含 Reference Design 和 NITE 中间件。PrimeSensor Reference Design 是一款成本低廉、即插即用、靠 USB 供电的设备,可以放在电视机或显示器的顶部或旁边,也可以嵌入其中。ReferenceDesign 能够实时生成客厅场景的深度、色彩和音频数据。它能在各种室内照明条件下工作(包括一片漆黑和非常明亮的房间)。它不需要用户佩戴或手持任何东西,无需校准,也不需要主机处理器做任何运算。PrimeSensor 的设计中包含一个先进的视觉数据处理中间件,它针对面向大众市场的 CE 产品——NITE进行了优化。NITE 为开发丰富的自然互动应用程序提供了算法框架。NITE SDK(软件开发工具包)提供了一个文档详细的 API 和框架,既能完成 GUI(图形用户界面)的设计开发,又能完成游戏开发。
http://labs.manctl.com/rgbdemo/index.php/Main/Download RGBD标定 ,必看!!
http://www.ee.oulu.fi/~dherrera/kinect/ 最重要!!!
http://nicolas.burrus.name/index.php/Research/KinectCalibration ToF 标定
下面摘自:
http://www.cnblogs.com/TracePlus/p/4136297.html
Kinect v1是采用结构光方案,Kinect v2采用TOF方案。
Kinect v1和Kinect v2预览版的传感器的配置比较在表1显示。
Kinect v1 | Kinect v2预览版 | ||
---|---|---|---|
颜色(Color) | 分辨率(Resolution) | 640×480 | 1920×1080 |
fps | 30fps | 30fps | |
深度(Depth) | 分辨率(Resolution) | 320×240 | 512×424 |
fps | 30fps | 30fps | |
人物数量(Player) | 6人 | 6人 | |
人物姿势(Skeleton) | 2人 | 6人 | |
関節(Joint) | 20関節/人 | 25関節/人 | |
手的開閉状態(Hand State) | △(Developer Toolkit) | ○(SDK) | |
检测範囲(Range of Detection) | 0.8~4.0m | 0.5~4.5m | |
角度(Angle)(Depth) | 水平(Horizontal) | 57度 | 70度 |
垂直(Vertical) | 43度 | 60度 | |
(Tilt Motor) | ○ | ×(手動) | |
複数的App | ×(単一的App) | ○ |
【计算机视觉】深度相机(一)--TOF总结的更多相关文章
- 【计算机视觉】深度相机(四)--Realsense概览
本文参考下文,做一点个人使用补充. http://blog.csdn.net/app_12062011/article/details/52662143 转自: http://blog.csdn. ...
- 三维重建:深度相机方案对比-KinectFusion的基本原理(尺度)
算法原理请参考此文: kinect fusion 3D重建基本算法 http://log.csdn.net/xiaohu50/article/details/51592503 三维重建为三维空间实 ...
- [Unity3D]深度相机 Depth Camera
作为3D世界里最重要的窗口,摄像机的应用就显得很重要,毕竟在屏幕上看到的一切都得用摄像机矩阵变换得来的嘛.论坛上看到了一篇帖子讲非天空盒的背景做法,让我想起其实很多界面合成画面可以用摄像机之间的交互来 ...
- ROS与深度相机入门教程-在ROS使用kinect v1摄像头
ROS与深度相机入门教程-在ROS使用kinect v1摄像头 说明: 介绍在ros安装和使用kinect v1摄像头 介绍freenect包 安装驱动 deb安装 $ sudo apt-get in ...
- 深度相机Astra Pro测试教程
最近在微信群内,很多群友在群友的推荐下,购买了Astra pro的深度相机,价格地道,物超所值!群友反馈积极,所以这里出一波简单的教程. 以下内容知识抛砖引玉,主要讲解windows下和Ubunt ...
- 【计算机视觉】深度相机(五)--Kinect v2.0
原文:http://blog.csdn.NET/qq1175421841/article/details/50412994 ----微软Build2012大会:Kinect for Windows P ...
- 【计算机视觉】深度相机(九)--OpenNI API及中间件说明
本文由官方文档翻译而来 总览 目的 OpenNI 2.0 API(应用程序编程接口)提供了访问PrimerSense的兼容深度传感器.这就使得一个应用程序能够初始化传感器和从设备接收深度(depth) ...
- 【计算机视觉】深度相机(八)--OpenNI及与Kinect for windows SDK的比较
OpenNI(开放自然交互)是一个多语言,跨平台的框架,它定义了编写应用程序,并利用其自然交互的API.OpenNI API由一组可用来编写通用自然交互应用的接口组成.OpenNI的主要目的是要形成一 ...
- 【计算机视觉】深度相机(六)--Kinect v2.0 手势样本库制作
目录为1.如何使用Kinect Studio录制手势剪辑:2.如何使用Visual Gesture Builder创建手势项目:3.如何在我的C#程序中使用手势:4.关于录制.剪辑手势过程中的注意事项 ...
随机推荐
- Java进阶(三十三)java基础-filter
java基础-filter 我们先看看没有filter的时候,整个web客户端-服务端的一个流程. 接下来我们再看看引入了filter之后的Uml图.尝试分析这两者之间的差别. filter从哪里来? ...
- RH阴性血妇女怀孕注意事项
RH阴性血的妇女怀孕注意事项,本文主要讲解RH阴性血抗体效价检测. 第一.孕前准备:Rh阴性的妇女怀孕前,需要到血液中心或指定医院作ABO和Rh血型鉴定,并且做一次孕前血液免疫学产前检查(血型抗体检 ...
- UNIX环境高级编程——system函数
system函数 功能:调用fork产生子进程,由子进程来调用:/bin/sh -c command来执行参数command所代表的命令,阻塞当前进程直到command命 令执行完毕. int sys ...
- AngularJS进阶(三十八)上拉加载问题解决方法
AngularJS上拉加载问题解决方法 项目中始终存在一个问题:当在搜索栏输入关键词后(见图1),按照既定的业务逻辑应该是服务端接收到请求后,首先返回查询的前7条数据,待客户端出现上拉加载时,继续查找 ...
- 9、Libgdx的输入处理
(官网:www.libgdx.cn) 不同的平台有着不同的输入方式.桌面用户可以通过键盘和鼠标与应用进行交互,基于浏览器的游戏也是这样.在Android中,鼠标被触摸屏所替代,通常没有实体键盘.And ...
- ISLR系列:(4.2)模型选择 Ridge Regression & the Lasso
Linear Model Selection and Regularization 此博文是 An Introduction to Statistical Learning with Applicat ...
- Dynamics CRM 通过OData查询数据URI中包含中文的情况
filter条件如下"?$filter=new_name eq '采购主管' and new_entityname eq 'new_purchaseenquiry' ",如果用这个 ...
- shell的字符串和数字的转化(数字自动做字符串处理,变量名做字符串输出用单引号)
shell里面怎么样把字符串转换为数字? 例如:a="024" 1,用${{a}} 2,用let达到(()) 运算效果. let num=0123; echo $num; 83 3 ...
- Eclipse搭建Android环境失败的解决方案
今天在Eclipse上搭建Android开发环境,不仅在安装ADT的过程中老是出错,而且Android SDK下载后,打开SDK Manager时也无法链接到网页下载tools,网上查了好多方法,试了 ...
- Android免Root无侵入AOP框架Dexposed
Dexposed框架是阿里巴巴无线事业部近期开源的一款在Android平台下的免Root无侵入运行期AOP框架,该框架基于AOP思想,支持经典的AOP使用场景,可应用于日志记录,性能统计,安全控制,事 ...