您好,欢迎访问三七文档
利用RGB-D数据进行人体检测LucianoSpinello,KaiO.Arras(摘自:)摘要人体检测是机器人和智能系统中的重要问题。之前的研究工作使用摄像机和2D或3D测距器。本文中我们提出一种新的使用RGB-D的人体检测方法。我们从HOG(HistogramofOrientedGradients)描述子获得灵感,设计了一个在稠密深度数据中检测人体的方法,叫做深度方向直方图HOD(HistogramofOrientedDepths)。HOD对局部深度变化的方向进行编码,依靠在预知深度信息的尺度空间的搜索来获得检测过程的3倍加速。随后我们提出了Combo-HOD,一个联合了HOD和HOG的RGB-D检测器。实验包括几个检测方法的综合比较,包括HOG,几个HOD的变种,一个用于3D点云的几何人体检测器,以及一个基于Haar特征的AdaBoost检测器。在最远8米范围内,等错误率为85%的情况下,实验表明HOD和Combo-HOD在用Kinect传感器获得的室内环境真实数据上具有鲁棒性。1引言人体检测是很多机器人、交互系统和智能车辆的重要而基础组件。经常用于人体检测的传感器是摄像机和测距仪(RangeFinder)。这两种传感器各有利弊,随着可靠而廉价的RGB-D传感器逐渐变得可用,只利用其中一种方式进行检测的方法将被淘汰。在机器人领域中,很多研究者利用距离数据进行人体检测。早期的研究工作利用2D距离数据[1][2]。利用3D距离数据进行人体检测是较新的问题。Navarro等[3]将3D数据分割为虚拟的2D切片,从中找到地平面上的显著垂直目标并用一系列SVM分类器特征判断是否人体。Bajracharya等[4]从立体视觉的点云中检测人体,利用固定人体模型对点云中垂直目标的一系列几何和统计特征进行判断。但这些检测方法都需要一个地平面假设,Spinello等[5]利用部分投票方法和可学习最优特征集的自顶向下的验证过程克服了这一限制。在计算机视觉领域中,从单张图片中检测人体的问题也已研究了很长时间。最近的研究工作如[6-10]中使用基于部件的投票方法和滑动窗口搜索方法。在前一个方法中,人体各部分独立的对人体进行投票;在后一个方法中,固定尺寸的检测窗口在图像的不同尺度空间上滑动来对每个区域进行分类。还有的研究多模型人体检测问题:[11]提出了一个可训练的2D距离数据和摄像机系统;[12]使用立体系统来联合图像数据、差异映射和光流;[13]使用灰度图和低分辨率的time-of-flight摄像机。本论文对人体检测领域的贡献如下:(1)我们提出了一个强壮的基于稠密深度信息的人体检测方法,叫做HOD(HistogramofOrientedDepths),灵感来自HOG方法和KinectRGB-D传感器的深度特征。(2)我们基于一个训练好的尺度到距离的映射和一种积分图[14]的新的使用方式进行预知深度信息的尺度空间搜索。(3)我们提出了Combo-HOD,一个新的利用RGB-D数据进行人体检测的融合方法。(4)实验包括几个检测方法的综合比较,包括HOG,几个HOD的变种,一个用于3D点云的几何人体检测器[5],以及一个基于Haar特征的AdaBoost检测器[15]。注意我们的方法既不依赖于背景学习也不依赖于地平面假设。论文的结构如下:Kinect传感器特性在下一节进行讨论,随后的SectionⅢ是HOD描述子以及在RGB-D数据中检测人体的Combo-HOD方法的描述。SectionⅣ中描述了数据集、性能度量方法和对比实验。SectionⅤ是总结。图1,在RGB-D数据(右图)和彩色图像数据(左图)上检测人体。此方法既不依赖于背景学习也不依赖于地平面估计。2KINECT传感器特性我们在此节中分析和讨论实验中用到的微软KinectRGB-D传感器的特性。Kinect传感器包括一个红外摄像机(IRCamera),一个红外发射器(IRProjector),和一个标准彩色摄像机,利用红外结构光原理[16]来测量深度。深度图分辨率为640*480,每个像素的位深度为11位。有趣的是,并不是所有的位都用来编码深度信息:超出距离范围的深度值被定位Vmax=1084,深度最小值为Vmin=290,所以,只有794个深度值(10位)来编码每个像素的深度信息。原始深度值v和以米为单位的距离d之间的关系为[17]:其中B=0.075m,对应红外发射器和红外摄像机之间的距离(基线),Fx是红外摄像机在水平方向的焦距长度(FocalLength)。d如果是负值则被忽略。公式(1)是双曲线关系,类似立体摄像机系统中点到点的对应关系。图2显示了v和d的关系,以及说明书[18]中给出的传感器可以可靠工作的合理距离范围(AdequatePlaySpace)。空间被限制在设备前最远2m到2.5m。图2,Kinect深度数据的特点。蓝色曲线是深度图中的像素值与以米为单位的距离值间的关系。红色线表示传感器的最小测量深度。绿色区域是Kinect说明书中建议的合理使用范围,黄色区域是本文中用来检测人体时使用的距离范围。注意到我们是在建议距离范围的几乎4倍空间内进行人体检测,所以深度分辨率变得相当粗糙。本文中,我们在0到8米的范围内检测人体,这几乎达到了建议使用范围的4倍距离,所以具有挑战性的是在深度分辨率上的损失。86.9%的深度值被用来编码0到2.5米间的深度信息,剩下仅有140个值来编码2.5到8米间的深度信息。这种效应,来自公式(1)的双曲线特征,在图3的两个不同距离的人的点云图上可以明显看出来。在前方大约2米处的人的形状很详细,而远处的目标人体仅有几个点来描述,非常粗糙。这使得传感器远处目标的3D几何信息严重损失。另一个效应,尤其在远距离上,是对物体表面材料的敏感性。强红外吸收表面(IR-absorbingsurface)会使发出去的红外返回时变得非常弱,这会导致块状的深度信息丢失,在图3的右图中有展示。图3,左图:双曲分辨率损失效应。传感器前不同距离的两个人的侧视图。近处的一个人被描述地精确而详细。越往远处量子化越严重,人体的形状信息损失严重。在这种数据上用于人体检测的几何方法将表现非常差。右图:远处的红外吸收表面会导致大量块状的深度数据丢失(如最左边的人的上半身,白色表示深度数据丢失)。3利用RGB-D数据进行人体检测在此节中介绍我们提出的检测器。首先总结一下普通图像的HOG检测器,然后介绍HOD,一种灵感来自HOG的用于稠密深度数据的新方法,最后介绍结合两种数据的Combo-HOD方法。A.HOG:HistogramsofOrientedGradients由Dalal和Triggs[6]提出的HOG方法是目前应用最广的视觉人体检测方法[9][10]。此方法使用一个固定尺寸的检测窗口,窗口被划分为以cell为单位的网格。每个cell中像素的梯度方向被统计到一个一维直方图中。直观的表述就是局部外观和形状可以被局部梯度的分布很好的描述,而不需要知道这些梯度在cell中的精确位置。将一组cell聚合成block,进行局部对比度归一化。将所有block中的直方图串接起来,构成检测窗口的描述子向量,此描述子向量被用来训练线性SVM分类器。检测人体时,在图像的不同尺度空间滑动检测窗口,计算每个位置和尺度的HOG描述子,然后用学习好的SVM分类器进行分类,详见论文[6]。B.HOD:HistogramsofOrientedDepths基于HOG的思想,我们提出一种新的用于稠密深度数据的人体检测器HOD。1)操作原理:HOD在深度图像上遵循与HOG相同的处理流程。包括将固定窗口划分为cell,计算每个cell的描述子,将深度方向梯度统计到一维直方图中。四个cell组成一个block,使用L2-Hys方法进行块归一化,从而对深度噪声具有更好的鲁棒性。直观的表达就是局部深度变化数组可以很好的描述局部3D形状和外表。最后得到的HOD特征向量被用来训练一个软线性SVM分类器,使用论文[6]中给出的两部训练方法。2)深度图像处理:在SectionⅡ中已讨论过,原始深度图对真实距离的编码非常不均匀。对于远处的目标,一个深度值可以对应15cm的距离变化。这对于HOG/HOD框架非常重要,因为目标轮廓周围的block对结果的影响权重非常大。特别是那些对应SVM超平面的有最高正权重的block。所以,我们对带有公式(1)的原始深度图进行预处理来加强前景背景的分割。为了加强梯度计算的数值稳定性,将得到的以米为单位的距离值乘以M/Dmax,其中M=100,是常数增益,Dmax=20,是以米为单位的最大距离。此预处理步骤类似用于加强对比度的伽马校正的思想。我们可以利用关于传感器的一些知识来消除对模型的非线性影响。3)预知深度信息的尺度空间搜索:多数视觉检测方法例如HOG都使用在图像尺度空间的搜索来发现目标。在HOD方法中,可以利用深度信息来引导此搜索过程。有了深度信息进行辅助预测,搜索会更加高效和精确。我们改进搜索过程的思想是提出一个快速判断深度图中每个位置对应的尺度的方法。首先,从训练数据集中计算出平均人体高度Hm,数据集中地面位置和每个样本的高度都做了精确标注。此信息用来计算一个尺度到深度的映射(如图4中所示):Fy是红外摄像机在垂直方向的焦距长度,Hm=1.74m是人体的平均高度,Hw是检测窗口在尺度为1时的高度(单位为米)。公式(2)左边的部分表示高度为Hm的半平面在距离d处垂直于摄像机的图像投影。为了限制内存使用,每1/3尺度进行一次量化。计算深度图中每个像素的尺度s,形成一个尺度映射,从中可以得到所有尺度的列表S。此列表S只包括图像中人体可能存在位置的尺度。此方法避免了在图像金字塔的所有尺度进行穷尽搜索。每个图像对应一个尺度列表S,然后进行尺度空间的搜素。搜索时,只有当搜索窗口的深度信息对应列表S中的尺度时,才拿到SVM分类器中进行分类。解决这一问题的简单做法是选择尺度列表S中的一个尺度s,看检测窗口中每个位置的深度值是否与s兼容。这种方法需要扫描搜索窗口中的每个位置并测试是否有至少一个深度值与s兼容,计算复杂度很高,尤其是遇到大尺度时。通过使用积分图[14],我们提出一种更快速地可在O(1)时间内完成的测试尺度是否兼容的方法。积分图是一种可快速计算矩形区域内像素值和的技术。积分图中每个点的像素值是原图中该点左上方所有点像素值的和。构建积分图的过程耗时O(N),N是原图的尺寸大小。使用积分图的主要优点是可通过4次加减法快速计算面积积分。将此原理扩展到integraltensor,即多层积分图,层数与S中的尺度个数相同。integraltensor中的每层是一个二进制图像,其非白(non-white)像素对应该层的尺度。这样就可以高效地测试给定搜索窗口是否包含某一尺度的至少一个像素。integraltensor的构建每张图片需要进行一次。检测时,选择S中的一个尺度s。对于每个搜索窗口位置,用integraltensor中对应尺度s的层对搜索窗口进行面积积分。如果结果大于0,说明至少有一个与尺度s兼容的深度像素,则计算HOD描述子;否则该检测窗口不被考虑,继续测试下一个窗口。图4,反应米制深度与检测窗口尺度关系的量化回归曲线。曲线的最大尺度限制在20,以避免过大的检测窗口。C.Combo-HOD:RGB-D人体检测上面介绍的两种检测方法都是单独考虑彩色图或深度图,为了利用RGB-D数据,我们提出Combo-HOD,一种新的联合两种数据的检测方法。这种结合意义重大:深度数据对光照变化具有不变性,但会受到返回信号强度过低的影响,并且分辨率有限。彩色图像数据颜色和纹理丰富,分辨率高,但在非理想光线下很容易变得不可用。Combo-HOD是分别在图像数据上训练一个HOG检测器,在深度数据上训练一个HOD检测器。此方法依赖于上面介绍的预知深度信息的尺度空间搜索:每个检测窗口都有一个对应的兼容
本文标题:People深度图像行人检测DetectioninRGB-DData-spinelloIROS11【
链接地址:https://www.777doc.com/doc-2849712 .html