基于散斑结构光深度相机的多视点计算成像方法

文档序号:6367276阅读:1575来源:国知局
专利名称:基于散斑结构光深度相机的多视点计算成像方法
技术领域
本发明属于图像处理技术领域。具体讲,涉及基于散斑结构光深度相机的多视点计算成像方法。
背景技术
当前计算机视觉获取场景深度的方法有很多种,有通过双目測量,投影仪搭配 摄像头等方法,也有聚焦深度等三角化计算方法,但这些方法都是通过繁琐复杂的计算来获取深度图,近些年来较常用的获取深度图的方法就是使用深度相机。TOF是其中的ー种深度相机,其利用主动射出的红外光往返的相位差来測量深度。该相机获取的深度信息准确,精度高,但是有着较大的缺点,价格高,分辨率低。然而,近期微软推出了一种新的深度相机,该相机价格便宜,方便了很多适用深度信息进行的研究。这款深度相机的名字为Kinect,Kinect是微软于2010年11月在北美上市的XBOX体感交互外设。该设备是ー种3D体感摄像机,拥有导入动态捕捉,影像识别,麦克风输入,语音识别等功能。Kinect的核心技术是由微软在2010年3月收购的专门从事研发3D动作侦测和识别技术的以色列公司Primesense授权的。Kinect利用连续光对测量空间进行编码,通过感应器读取编码的光线,交给晶片运算进行解码后,产生ー张具有深度的图像。该种技术的关键是Laser Speckle错射光散斑,当错射光照射到粗糙物体,或者穿透毛玻璃后,会形成随机的反射斑点(散斑)。散斑具有高度的随机性,会随距离的而变换图案。空间中的任何两处的散斑都是不同的图案,这就等同于将整个空间加上了标记,当任何物体进入该空间及其移动的时候,Kinect都可以据此都可以确切记录物体的位置。但从Kinect中捕捉的深度图有着较大的问题,其不仅存在较大的噪声,同时在ー些深度不连续的边缘处和光滑透明处平面处会存在信息的空缺。如果直接使用这种深度图进行深入的研究的话会对实验结果造成极大的影响,这就需要对Kinect获取的深度图进行修复。从Kinect刚出来后不久,国际涌现了许多修复Kinect深度图的方法,不过现存的技术在修复深度图方面有着明显的不足,尤其是对于存在透明和多边缘的图像,修复后得到的深度图匹配到彩色图的时候有着较大的偏差,边缘处存在许多缺陷。并且这些方法有些花费的时间过长,有些运行速度快但最終的结果并不太理想。

发明内容
本发明g在克服现有技术的不足,提供一种多视点计算成像方法,获取的深度信息准确,精度高。为达到上述目的,本发明采取的技术方案是,基于散斑结构光深度相机的多视点计算成像方法,包括如下步骤使用微软的人机交互设备Kinect,从中获取深度图和彩色图;先检测出彩色图的边缘,将空缺信息进行膨胀,直至膨胀的空缺覆盖了原先深度图附近对应于彩色图中的边缘停止膨胀;接着采用深度信息和彩色信息对空缺边缘的点使用双边滤波估值,估值的过程使用了彩色图的边缘信息进行限制,在获取彩色图和修复后的深度图后,将深度图转换成视差图,使用深度图像结合彩色图像的视差图合成方法合成任意数量的虚拟视点图。所属步骤进ー步细化为I)使用OpenNI平台结合PrimeSense驱动从Kinect巾贞流中捕捉ー巾贞的彩色图像C和深度图像D ;2)根据I)中获取的深度图D映射出ー张只包含0/1值的映射图Dm,根据I)中的彩色图C进行边缘检测得到(;;3)膨胀2)中映射图Dm的空洞,直至所有的空洞都覆盖了其附近的边缘,得到图像Di ,将图像IV 映射至深度图D,得到图Dd,映射方法如下对于图像IV u中值为O的点P,深度图D对应的像素点的值不变,其他的像素点的值为O ;4)检测3)中处理后的深度图Dd的空洞边缘,并将空洞边缘点压入堆栈,如果该点属于2)中检测的彩色图像边缘点之一旦第一次访问该点则不将该点放入堆栈,第二次遇到该彩色图像边缘点的时候将该点放入堆栈;5)取出栈顶的点,使用滤波窗口内不在空洞区的像素的深度值进行双边插值得该点深度值;6)不断重复4)和5)操作,直至深度图中不存在空缺信息,得到最終修复的深度图Dr ;7)对6)中的深度图比进行计算,得到对应的视差图V,视差图V里像素点的值和深度图比像素点的值成反比例关系。所述步骤2)-5)进ー步细化为根据获取的深度图D,根据以下公式生成对应的映射图Dm
权利要求
1.一种基于散斑结构光深度相机的多视点计算成像方法,其特征是包括如下步骤使用微软的人机交互设备Kinect,从中获取深度图和彩色图;先检测出彩色图的边缘,将空缺信息进行膨胀,直至膨胀的空缺覆盖了原先深度图附近对应于彩色图中的边缘停止膨胀;接着采用深度信息和彩色信息对空缺边缘的点使用双边滤波估值,估值的过程使用了彩色图的边缘信息进行限制,在获取彩色图和修复后的深度图后,将深度图转换成视差图,使用深度图像结合彩色图像的视差图合成方法合成任意数量的虚拟视点图。
2.如权利要求I所述的基于散斑结构光深度相机的多视点计算成像方法,其特征是,所属步骤进一步细化为 1)使用OpenNI平台结合PrimeSense驱动从Kinect巾贞流中捕捉一巾贞的彩色图像C和深度图像D ; 2)根据I)中获取的深度图D映射出一张只包含0/1值的映射图Dm,根据I)中的彩色图C进行边缘检测得到(;; 3)膨胀2)中映射图Dm的空洞,直至所有的空洞都覆盖了其附近的边缘,得到图像D' m,将图像D' m映射至深度图D,得到图Dd,映射方法如下对于图像D' m中值为0的点P,深度图D对应的像素点的值不变,其他的像素点的值为0 ; 4)检测3)中处理后的深度图Dd的空洞边缘,并将空洞边缘点压入堆栈,如果该点属于2)中检测的彩色图像边缘点之一且第一次访问该点则不将该点放入堆栈,第二次遇到该彩色图像边缘点的时候将该点放入堆栈; 5)取出栈顶的点,使用滤波窗口内不在空洞区的像素的深度值进行双边插值得该点深度值; 6)不断重复4)和5)操作,直至深度图中不存在空缺信息,得到最终修复的深度图比; 7)对6)中的深度图比进行计算,得到对应的视差图V,视差图V里像素点的值和深度图Dr像素点的值成反比例关系。
3.如权利要求2所述的基于散斑结构光深度相机的多视点计算成像方法,其特征是,所述步骤2)-5)进一步细化为 根据获取的深度图D,根据以下公式生成对应的映射图Dm d , Ti如果像素点(>,> )处于深度空缺处D ,\x,v) = { …U ) [0其他情况 对彩色图C进行边缘检测得到Ce , Tl如果像素点(U)处于深度不连续处Q(xj;) = |o 其_兄(2) 对于Dni(Xj) = I的点仏 (4力,分别以点仏 (U)为中心,上下左右分别扫描R个像素,R < 40,如果扫到的像素Ce(x+T,y+T) = I,记录markR = T,同时停止该方向的扫描;在扫描过程中不断更新markR = max (markR, T);接下来对Dm中空缺信息进行膨胀操作,使用膨胀的结构元素为以markR为半径的球形元素,膨胀后得到D' >映射至深度图,得到Dd,映射操作如下
4.如权利要求2所述的基于散斑结构光深度相机的多视点计算成像方法,其特征是,具体的插值步骤是,对从栈顶取出的点PDd (^y),使用以Kd (^,y)为中心半径为W的方形窗口进行双边滤波,其中滤波过程分为两种情况 (1)若窗口内不存在点Cjx,y) = I,意味着窗口内不存在位于深度不连续的地方的点,直接使用窗口内不处于空缺处的点的深度信息和该点相对于仏(U)的距离信息进行填补,公式中的P表示的是点&(U),q表示的是滤波窗口内区别于Klf(U)的点
5.如权利要求2所述的基于散斑结构光深度相机的多视点计算成像方法,其特征是,在得到修复后的深度图,根据下面的公式得到视差图
6.如权利要求I所述的基于散斑结构光深度相机的多视点计算成像方法,其特征是,使用最终的视差图%和彩色图C进行虚拟视点合成,C(x,y)表示C中的点,
全文摘要
本发明属于图像处理技术领域。为提供一种多视点计算成像方法,获取的深度信息准确,精度高。为达到上述目的,本发明采取的技术方案是,基于散斑结构光深度相机的多视点计算成像方法,包括如下步骤使用微软的人机交互设备Kinect,从中获取深度图和彩色图;先检测出彩色图的边缘,将空缺信息进行膨胀,直至膨胀的空缺覆盖了原先深度图附近对应于彩色图中的边缘停止膨胀;接着采用深度信息和彩色信息对空缺边缘的点使用双边滤波估值,估值的过程使用了彩色图的边缘信息进行限制,在获取彩色图和修复后的深度图后,将深度图转换成视差图,使用深度图像结合彩色图像的视差图合成方法合成任意数量的虚拟视点图。本发明主要应用于图像处理。
文档编号G06T7/00GK102710951SQ20121014204
公开日2012年10月3日 申请日期2012年5月9日 优先权日2012年5月9日
发明者侯春萍, 李坤, 杨敬钰, 黄浩 申请人:天津大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1