论文《Depth Edge Filtering Using Parameterized Structured Light Imaging》学习

Abstract

(2017二区)这项研究的特点是利用结构光成像的参数化深度边缘检测,利用单色条纹模式和相关的二进制条纹模式。通过参数化深度边缘检测,我们指的是在给定的距离范围内,深度差大于或等于一个特定值的所有深度边缘的检测。以往的研究没有很好地处理阴影区域,导致了图像的双边缘,而我们通过统计学习的方法,通过对结构光图像中颜色条纹的有效识别,有效地去除阴影区域。我们还提供了对相关参数的更简单的控制。我们将我们的方法的深度边缘过滤性能与最先进的方法和Kinect深度地图的深度边缘检测进行了比较。实验结果表明,该方法能较准确地找到所需的深度边缘,而其他方法不能。

关键词: 深度边缘滤波器;深度检测;结构光

1. Introduction

如图1所示,这项工作的目标是精确地找到所有的深度边缘,它们在指定的距离范围内[amin,amax][a_{min},a_{max}]与摄像机/投影仪的深度差rminr_{min}最小。我们称之为“深度边缘过滤”。我们提出了一种基于结构光的框架,该框架使用垂直条纹的单色模式和相关的二进制模式。由于所涉及的参数的精确控制,该方法可用于对目标形状检测至关重要的应用场合,例如当机器人机械手需要通过识别具有一定深度差的内部部件来抓取未知对象时。
论文《Depth Edge Filtering Using Parameterized Structured Light Imaging》学习
对文学的结构、结构、结构和结构的研究一直是相当重要的[1 - 5]。在这里,我们只提到一些近期的作品。Barone等人提出了一种编码结构光技术,用于使用一组小的条纹模式进行表面重建。他们按照德布鲁因序列对条纹进行编码,并将彩色条纹分解成二进制条纹,这样他们就可以利用单色相机了。Ramirez等人提出了一种基于De Bruijn序列的结构化光投影方法[2]来提取静态对象的对应关系。为了提高深度图的质量,Shen等人提出了一种用于深度补全和去噪的场景[3]。大部分的工作都是针对表面重建的,也有一些工作是针对深度边缘滤波的。一个值得注意的技术是为非真实感渲染[6]创建深度边缘映射。他们捕捉了一系列的图像,其中不同的光源从不同的位置照亮了场景。然后,他们在每个图像中使用阴影来组合深度边缘地图。但是,这种技术无法控制距离摄像机/投影仪的距离范围和深度差等参数。

不久前,在[7,8]中,对参数化结构光成像也提出了类似的控制。他们使用由黑白等宽横条纹组成的结构光,在指定的距离范围内检测深度差rrminr≥r min的深度边缘。由于捕获的图像中沿着深度不连续点的模式偏移量与相机的深度值有关,因此他们通过Gabor振幅阈值找到可检测的模式偏移量来检测深度边缘。他们通过将条纹的宽度与图案偏移量联系起来,自动计算出条纹的宽度。

以前方法的一个主要缺点是没有解决阴影区域的问题。投影光不能到达的区域会产生阴影区域,并产生双边。图1d显示了该方法在[8]中给定参数下的结果,在阴影区域中出现了双边和缺失边。此外,由于使用简单的黑白条纹,精确的图案偏移量可能无法根据相机的目标位置进行测量。这一不足需要额外使用几个结构灯与宽度的条纹加倍,三倍等。

在这部作品中,我们通过克服之前工作的不足之处,来准确地控制、深化、过滤。我们在图2中提供了方法的概述。我们选择使用垂直条纹的单色模式和相关的二进制模式,如第3节所示。使用二进制图案有助于准确地恢复彩色条纹的原始颜色。我们在第3节中给出详细信息。给定输入参数[amin,amax][a _{min}, a_{ max}]rminr _{min},条纹宽度ww将自动计算,以创建检测深度差异大于或等于rminr _{min}的深度边缘所需的结构光模式。我们通过在场景中投射结构光模式来捕获结构光图像。为了不受场景纹理的影响,我们首先恢复了结构光图像中彩色条纹的原始颜色。然后,对于每个颜色均匀的区域,我们使用支持向量机分类器来判断给定区域是否来自阴影。然后,我们通过填充阴影区域获得彩色条纹图案图像,这些阴影区域使用的是投影在那里的彩色条纹。最后对模式图像进行Gabor滤波,得到深度差大于或等于rminr _{min}的深度边缘。
论文《Depth Edge Filtering Using Parameterized Structured Light Imaging》学习
我们比较了我们的方法与[8]和Kinect传感器的深度边缘滤波性能。实验结果表明,该方法能较准确地找到所需的深度边缘,而其他方法不能。本工作的主要贡献在于利用一种有效识别结构光图像中颜色条纹和阴影去除的新方法来精确控制深度边缘滤波。

2. Parameterized Structured Light Imaging

通过参数化结构光成像,我们指的是利用结构光成像来控制相关参数的技术。据我们所知,Park等人的工作[7]是这种类型的第一个。在我们的例子中,控制参数为最小深度差,rminr _min,目标距离范围,[amin,amax][a _{min}, a_{ max}],以及条纹宽度,ww。[7]检测深度边缘的基本思想是利用深度不连续处的模式偏移量。为了检测深度不连续,他们连续地将白光和结构光投射到场景中,并通过区分白光和结构光图像来提取二值模式图像。这种区分有效地去除纹理边缘。去除纹理边缘后,他们基本上检测出模式偏移产生深度边缘的位置。在彩色结构图像中,通过恢复原始的彩色条纹来达到去除纹理边缘的效果。细节将在下一节中给出。

[7]开发的参数控制如图3a所示,其中amaxa _{max}rminr _{min}为输入参数;然后,确定宽度、ww和最小值。但是,在后面的步骤中从其他参数中找到最小值是很困难的。在[8]中对该方法进行了重大改进,输入参数为[amin,amax][a _{min}, a_{ max}]rminr _{min}。给定输入参数,该方法提供条带宽度、ww和结构光图像数量,nn如图3b所示。介绍了该算法在船体轮廓信息检测中的应用。在我们的工作中,我们通过使用如图3c所示的颜色模式来实现对关键参数的更简单控制。虽然在[7,8]的方法需要几个结构光图像,我们使用一个单一的颜色模式和一个相关的二进制模式。
论文《Depth Edge Filtering Using Parameterized Structured Light Imaging》学习
为了更好地描述我们的方法,让我们重新访问[7,8]中相机、投影仪和对象建模成像几何的关键方程(1)。使用相似三角形可以很容易地从图4的几何图形中推导出这个方程:
论文《Depth Edge Filtering Using Parameterized Structured Light Imaging》学习
这里,a,b,fa, b, f分别是物体位置a到投影仪/摄像机的距离,b到摄像机的虚拟像平面的距离。exact∆_{exact}表示当目标位置A和B深度差为r时,模式偏移的准确量。
论文《Depth Edge Filtering Using Parameterized Structured Light Imaging》学习
由于在[7,8]中,他们使用了简单的黑白条纹,宽度相等,exact∆_{exact}可能无法测量,这取决于来自摄像机的目标位置。模式偏移的可观测量(visible)(∆_{visible})是周期性的,随着目标位置与相机的距离增加或减少。在rrdd固定的情况下,exact∆_{exact}与a之间的关系表明,由于缺少可见的偏移量,深度边缘的检测是困难的,尽管exact∆_{exact}意义重大。参见图5。他们已经将需要可靠检测深度边缘的最小模式偏移量设置为2w/32w / 3。为了扩大探测范围,在图5中采用了额外的宽度为2w4w2w、4w等条带的结构光来填补∆精确的间隙,并扩大了目标位置的对应范围aa。相反,因为我们使用了彩色条纹模式,exact∆_{exact}等于visible∆_{visible}。因此,不需要使用多个模式图像。
论文《Depth Edge Filtering Using Parameterized Structured Light Imaging》学习

3. Use of Color Stripes Pattern

我们选择使用彩色条纹模式,通过填充exact∆_{exact}的间隙,我们可以扩大距离范围,如图5所示。我们认为离散空间复用方法是一个合适的选择,因为它的误差可以忽略不计,并且只需要一个简单的匹配算法。我们用四种颜色:红色、青色、黄色和白色。我们也使用两个版本的每种颜色:光明和黑暗。也就是说,它们的RGB(红、绿、蓝)值是[L,0,0], [0,L,L], [L,L,0],和[L,L,L], L = 255或128,其中L表示亮度强度。为了创建一个颜色图案,我们使用了长度为3的德布鲁金序列[11],也就是说,任何三个颜色条纹的序列在一个邻域中都是唯一的。此属性有助于识别摄像机捕获的图像中的每个条纹。

此外,我们使用一个相关的二进制条纹,RGB值可以表示为[L,L,L]L=255[L,L,L], L = 255128128。也就是说,我们还使用了针对二进制stipes的亮(L = 255)和暗(L = 128)版本。我们设计了条纹图案,在彩色条纹和二进制条纹中,亮条纹和暗条纹交替出现。彩色条纹与二进制条纹相关联,所以颜色图案中的亮条纹对应于二进制图案中的暗条纹。指图6。该设置通过参考二叉结构光图像中二叉条纹的明度,在恢复彩色结构光图像中彩色条纹的原始颜色时,确实大大方便了解决方案。
论文《Depth Edge Filtering Using Parameterized Structured Light Imaging》学习
采用德布鲁金序列的彩色条纹图案的最大优点是
exact∆_{exact}与可见模式偏移visible∆_{visible}的数量相同。我们可以安全地将检测深度边缘所需的最小模式偏移量设置为w/2w/ 2。此外,在[7,8]中使用了2w/32w / 3。因此,利用式(2)[8]计算条纹宽度ww:
论文《Depth Edge Filtering Using Parameterized Structured Light Imaging》学习

4. Recovery of the Original Color of Stripes

在结构化光图像中,恢复彩色条纹原始颜色的问题是确定每个颜色通道的亮度L。我们利用相关的二值图像作为参考以避免决策错误。图7显示了恢复彩色条纹原始颜色的过程。这个过程包括两个步骤。对于彩色结构图像中的每个像素,我们首先决定它是来自明亮(L = 256)的彩色条纹还是来自黑暗(L = 128)的彩色条纹。然后,我们在每个颜色通道中恢复L的值。
论文《Depth Edge Filtering Using Parameterized Structured Light Imaging》学习
让我们分别在彩色结构光图像中表示一个像素,在二元结构光图像中表示相应的像素,分别为C和B。CiC_ iBii=r,g,bB _i i = r, g,b,表示它们的RGB值。由于颜色模式中的亮条纹对应于二进制模式中的暗条纹,因此当将来自亮颜色条纹的像素投射到场景中时,它很可能比来自二进制条纹的相应像素更亮。因此,在大多数情况下,我们可以简单地通过比较CiC_i的最大值和BiB_i的最大值来做出正确的决定,i=r,g,Bi = r, g, B。然而,由于捕获的图像中条纹的RGB值受对象表面颜色的影响,我们可能会有决策错误,特别是对于在一个通道中具有高值的对象表面像素。例如,当物体表面颜色为纯蓝色[0,0,255],颜色条纹为鲜红色[255,0,0]时,物体表面上一个像素在颜色和二进制结构化图像中的RGB值分别为[200,5,200]和[100,100,205]。在这种情况下,只有比较最大通道值才会给出错误的答案。因此,我们使用一个附加的标准来比较所有三个通道的平均值。通过大量的实验,我们证实了这个简单的方案可以正确的将像素分为亮像素和暗像素。

接下来,我们确定每个通道的值LL,亮度和环境反射光在不同的情况下可以不同。我们采用自适应阈值方案进行决策。对于亮色条纹的像素,Ci0,255Bi=128C _i∈{0,255},B _i = 128。我们决定如果CiBi>thrBC_ i−B_ i > thr_ B,则C_ i = 255;否则,Ci=0C_i = 0thrBthr _B确定为式(3),s由训练样本计算:
论文《Depth Edge Filtering Using Parameterized Structured Light Imaging》学习
对于深色条纹像素,Ci0,128Bi=255C_ i∈{0,128},B_ i = 255。我们决定如果Bi2Ci<thrDB_ i - 2 C_ i < thr _D,则Ci=128C _i = 128。否则,Ci=0C_i = 0。计算thrDthr _D为式(4),由训练样本估计bbtt:
论文《Depth Edge Filtering Using Parameterized Structured Light Imaging》学习
我们设置偏差b以确保大多数时间thr D是正的。当min{Bi2Ci}min \{B_i−2C_ i\}为负时,这对于处理接近min{Bi2Ci}min \{B_i−2C _i\}的任何正值{Bi2Ci}\{B_i−2C _i\}都是必要的。

原始颜色和捕获颜色之间的关系是非线性的。我们试图用一种简单的统计方法来确定参数sbts、b和t。我们收集了一系列的图像。每个集合由三幅图像组成,分别是Mb,MgM _b, M_ gMwM _w,通过投射黑色[0,0,0],灰色[128,128,128]和白色[255,255,255]。我们可以把Mb,MgM _b, M_ gMwM _w看作是三个图像矩阵,它们通过实验来模拟观察到的黑色、灰色和白色。请注意,我们在相同的环境中拍摄每一张图像。通常,我们收集的训练样本越多,得到的代表性参数就越多。然而,在实际操作中,几百个样本就足够了。我们使用各种不同形状和不同纹理的对象来构建场景。我们估计如下:
论文《Depth Edge Filtering Using Parameterized Structured Light Imaging》学习
N是集合的数量,最小()(·)和最大()(·)是元素明智的函数,ii表示第ii个集合。在明亮的条纹中,我们已经知道当分配通道值时,CiBiC _i−B _i通道值在模式中分配为255时,应为127。式(5)为CiBiC_ i−B_ i在场景中投影时的最大值与最小值关系的采样过程。thrBthr _B给出最小的CiBiC_i - B_i。如果CiBiC_ i−B _i在任何信道中都大于thrBthr _B,我们愿意相信它的值是255。

我们最初将thrDthr _D建模为tmini=r,g,bi=r,g,b{Bi2Ci}t·\underset{i=r,g,b}{min} i = r,g,b \{B_i- 2C _i\},如式(6)所示。该模型与式(3)的思想相同,它使tmin{Bi2Ci}t·min \{B_i- 2C _i\}min{Bi2Ci}min \{B_i- 2C _i\}可能的最小值。而在深色条纹中,Bi2CiB_i- 2C _i接近于0。简单地缩放不会影响它的符号,这可能会导致一个不合适的决定。为了缓解外部干扰,我们根据min{Bi2Ci}min \{B_i- 2C _i\}对上述阈值模型进行微调。当min{Bi2Ci}min \{B_i- 2C _i\}较大时,我们增加阈值,反之则减少阈值。由于MbMgMwM_b、M_g和M_w分别为观测亮度值L = 0、128和255,因此Mgi=MwiMbi2M'_{gi}=\frac{M_{wi}−M_{bi}}{2}MgiM_{gi}的估计。因此,我们根据MgiM_{gi}MgiM'_{gi}之间的差异来调整阈值。因此,我们将b近似为式(7)。在min{Bi2Ci}min \{B_i- 2C _i\}符号方面,暗条纹的阈值略有变化。s=0.65,t=0.47,b=50s = 0.65, t = 0.47, b = 50在我们的实验中使用:
论文《Depth Edge Filtering Using Parameterized Structured Light Imaging》学习
最后,我们检查恢复的颜色是否是我们使用的四种颜色之一。如果不是,我们就把它改成四种中最可能的颜色。我们通过两个步骤实现:(1)将恢复的颜色与四个默认颜色进行比较,看看有多少通道匹配;(2)在匹配通道最多的颜色中,选择阈值差最小的颜色,不要选择失配通道。图8显示了恢复彩色条纹原始颜色的实验结果。在图8b中,主要物体周围的灰度和绿色区域以及噪声区域对应阴影区域。因为阴影区域是无色的,所以颜色分配是没有意义的。如前所述,我们可以通过考虑颜色条纹的原始颜色来忽略物体表面的纹理边缘。
论文《Depth Edge Filtering Using Parameterized Structured Light Imaging》学习
虽然使用了经验确定的参数,但整个系统在非阴影区域工作得很好。然而,恢复的颜色在阴影区域是没有意义的条纹图案完全丢失。我们检测到阴影区域,并在那里延伸彩色条纹,否则就会被投射出来。下一节将详细介绍。

5. Removal of Shadow Regions

在结构光成像中,阴影是在投影光无法到达的区域产生的。在阴影区域,条纹图案完全丢失,无法进行参数控制的深度边缘检测。为了防止阴影区域的双边和缺失边,我们主动识别阴影区域,并延伸原本投影的彩色条纹。

伊利识别阴影区域和延伸颜色条纹,否则已被投影。已有自然阴影去除的研究[12,13]。当一个区域变暗时,它变得更暗,纹理更少。这说明颜色和纹理是检测阴影区域的重要工具。在恢复了投影条纹的原始颜色后,我们将恢复后的彩色图像分割成颜色均匀的单连通区域,并基于区域判断给定区域是否来自阴影。我们采用了以下特性。

5.1. Color Feature

我们将恢复的颜色转换为实验室空间,并建立颜色直方图。根据Guo等人提供的[12],我们在每个通道设置了21个箱子。所有的直方图都是按区域面积归一化的。通过预先对L通道进行阈值化,剔除部分非阴影区域,节省了大量的训练和聚类时间。

5.2. Texture Feature

纹理,一个在[10]中提出的概念,可以帮助我们建立一个纹理直方图。他们构造了一系列的滤波器,这些滤波器是由一个普通的二维高斯滤波器推导出来的。我们将它们的滤波器组应用于大量的实验图像,并使用k -means算法对数据进行分类,形成k个簇,这些簇的均值称为文本。每个像素都聚集在最近的texton周围。纹理直方图也按区域面积进行归一化。

5.3. Angle Feature

影子是无色的。我们在RGB空间中查看彩色模式图像中的每个像素以及二进制模式图像中相应的像素。我们分别用C和B来表示它们。我们构成两个向量,OC\overrightarrow{OC}OB\overrightarrow{OB},从原点到C和B。OB\overrightarrow{OB}OC\overrightarrow{OC}之间的夹角对于阴影中的像素来说应该是小的。阴影概率可以用这个角度的余弦值来估计;但是,仅靠这个角度特征还不足以对阴影区域进行正确的分类。

5.4. Classifier Training

我们使用颜色、纹理和角度特征一起训练SVM分类器,如图9所示。我们用两个不同的亮度值给所有四种颜色编号,这样每个像素都被标记为1到8之间的整数。我们可以很容易地将恢复的彩色条纹区域分割成碎片,并将其聚集到阴影或非阴影区域。每个废料都是一个训练的例子。我们在实验中抽样了大约3000个样本。因为在我们的实验中,相机在投影仪的左上方,所以阴影一定是由物体的左上方造成的。这个先验帮助我们知道在哪里找到我们延伸条纹的阴影区域。图10显示了使用我们的方法可以准确地检测到阴影区域。通常,我们用它上面的区域填充每个阴影区域。对于顶部的阴影区域,我们选择右侧的区域来代替。
论文《Depth Edge Filtering Using Parameterized Structured Light Imaging》学习

6. Depth Edge Detection

我们使用Gabor滤波进行深度边缘检测,如[7,8]。他们对黑白条纹图案进行了Gabor滤波,以找出条纹图案的空间频率在哪里中断。因为使用Gabor滤波的深度边缘检测只能应用于二进制模式,所以我们分别考虑亮条纹模式和暗条纹模式来创建二进制模式,如图11c,d所示。沿着图11中的深度边缘,上面的条纹应该与下面的条纹有不同的颜色。然后,我们利用颜色信息来检测潜在的深度边缘位置,将Gabor滤波应用到二值模式图像中,每个颜色的二值条纹依次被删除。请注意,只要原始彩色模式图像中存在模式偏移量,那么通过删除每种颜色的二进制条纹得到的二进制模式偏移量就会大于原始偏移量。这使得Gabor滤波对周期模式变化的响应更加生动。与之前的工作[7]相似,我们还利用纹理边缘来改进深度边缘的定位。为了获得纹理边缘,我们简单地对每个像素的彩色模式图像和二值模式图像的最大通道值进行平均,然后合成一个没有条纹模式的场景灰度图像。图11为偏移量为1.78 ww的深度边缘检测过程。采用2w×2w2w×2w的Gabor滤波器。图11e,f分别显示了没有深蓝和灰色条纹的图案。图11g,h为已二值化的Gabor滤波器的响应。黑色的低Gabor振幅区域表示潜在深度边缘的位置。我们用同样的方法处理明亮的条纹图案。图11i,p,q,r包含了所有可能的颜色组合。因此,它们的结合产生深度边缘。为了得到深度边缘,我们只需对union的结果应用细化操作。
论文《Depth Edge Filtering Using Parameterized Structured Light Imaging》学习

7. Experimental Results

我们已经在Matlab (2015b, MathWorks, Natick, MA, USA)中对我们的方法进行了编码,代码还没有进行优化。我们使用了2.9 GHz Intel Core i5 CPU, 8GB 1867 MHz DDR3内存(圣克拉拉,加利福尼亚州,美国)和英特尔图形(虹膜图形6100,圣克拉拉,加利福尼亚州,美国)。图12显示了一个实验结果示例。我们比较了我们的方法与之前的方法[8]和使用Kinect传感器的性能。为了从Kinect深度图中生成深度边缘,对于每个像素,我们扫描其半径为5的圆形区域的深度值,如果其圆形内的任何像素具有rrminr≥r_{ min}的深度差,则输出像素。结果清楚地表明,我们的方法能最准确地找到给定参数的深度边缘,而其他方法则不能。图12e显示了Kinect深度地图深度边缘检测的结果,其中直的深度边缘片段没有被检测为直的。这是因为Kinect传感器沿深度边缘提供的深度值由于插值而不准确。无论假阳性或假阴性,有两个主要原因:不准确的颜色恢复和条纹会导致错误的边缘。但是,颜色恢复错误被很好地控制住了,因为我们在识别条纹的原始颜色时检查了De Bruijn约束。当阴影区域未被检测到时,就会出现误报。另一方面,当一些非阴影区域被视为边界附近的阴影时,会产生不正确的深度边缘。表1列出了我们的方法的每个步骤的计算时间,如图2所示。

图13给出了一个附加的实验结果,我们找到了满足深度约束rminrrmaxr_{ min}≤r≤r_{ max}的深度边。我们可以通过对模式图像进行Gabor滤波的连续两次应用来实现这一目的:第一次和第二次Gabor滤波分别产生rrminr≥r_{ min}rrmaxr≥r_{ max}的深度边缘,并去除r≥r max的深度边缘。我们可以看到我们的方法比其他的好。虽然我们提供了没有任何后处理操作的原始实验结果,但是通过使用简单的形态学操作可以很容易地增强结果。
论文《Depth Edge Filtering Using Parameterized Structured Light Imaging》学习
论文《Depth Edge Filtering Using Parameterized Structured Light Imaging》学习
论文《Depth Edge Filtering Using Parameterized Structured Light Imaging》学习

8. Conclusions

提出了一种利用彩色条纹模式精确控制输入场景深度边缘滤波的新方法。为了精确,我们使用了一个关联的二进制模式。该方法可用于场景特定三维信息的主动传感。我们认为,如果一个任务是找到精确的深度边缘,我们的方法提供了一个更好的解决方案。进一步的研究正在进行中,使用所提出的方法,通过编译具有各种深度差异的深度边缘来创建三维重建的草图。