本发明涉及光学成像、光信息处理以及计算机视觉等技术领域,更具体地,其涉及一种深度相机拍摄的深度图像和红外强度图像融合下的静态物体识别方法。该方法需分别建立样本数据集以获得不同材料在不同位置处的强度参考信息,并通过深度相机针对某一场景分别拍摄同一时刻的深度图像和红外强度图像,各自经过规范二值化处理后进行融合,最后利用K均值聚类方法实现对从属于不同物体的像素点的区分,同时利用相机提供的深度信息和红外强度信息,判别物体的材料种类,实现低计算复杂度的物体识别的目的。
1.一种基于深度相机获取数据融合的物体识别方法,其特征在于:利用深度相机同时得到的深度图像和强度图像数据,并将二者进行融合,由此进行物体识别;包括识别前准备工作是构建样本数据集从而提取强度数据库、识别需基于强度数据库的数据进行物体种类的判定;其步骤如下:步骤1:针对每种待识别材料,得到其在不同空间位置的红外反射强度情况,作为反射光强度数据库,称为强度数据库;为得到强度数据库进行拍摄所建立的数据集称为样本数据集;步骤2:在建立的强度数据库基础上进行物体识别,先要对待识别场景进行数据采集,将深度相机摄像头直面场景,同时对某一时刻进行深度图与强度图的采集;步骤3:将待识别场景的深度图与强度图分别进行规范化、二值化图像处理并融合,得到用于进行物体识别的、无噪声像素的二值化图片,完成前景与背景分离,而后使用K-means聚类方法将所有属于前景的像素归类到不同的类中,完成从属于不同物体的像素点的区分;步骤4:将具有同一类标签的像素点向强度图像进行映射,查询每一个目标物体的红外强度特征,并参照深度与先前建立的强度数据库进行比对,寻找强度特征落在的区间,判定出目标物体的材料种类,即完成物体识别;所述步骤1,具体包括:进行样本数据集的拍摄时针对待探测的不同材料,按照等距或近似等距采样的原则,由近及远地同时用深度相机进行深度图和强度图的采集;同时需要考虑到同一距离平面内不同空间位置的反射情况也会有区别,尽可能保证采集到同一深度X-Y平面内的各处深度,以便参考横向不同位置反射光效果的差异,减小其对材料判定结果带来的影响;而后对得到的深度图像和强度图像进行二值化,实现前景像素和背景像素的区分;由于现实中拍摄场景得到的深度或强度图像难免会有噪声,且环境物体对应的像素点在物体识别工作中属无用像素点,因而需要之后对每一组数据的深度图与强度图进行噪声点与其他无用像素去除;深度图和强度图分别进行去噪后即可进行融合,其方法包括按位与操作,即只有当两幅图像对应的(i,j)点灰度值都为255时,该点才保留255的灰度值,否则设定为0;得到二值化图片后,将其作为掩模板,对强度图像进行掩模处理,得到掩模图片;遍历掩模图片的所有像素点,求有效平均灰度值:
或查询所有前景物点的坐标(ix,jx),按照坐标对相应的强度图原图进行初始灰度值索引,也可求出所有前景像素平均灰度值:
同理针对所有非零像素点求灰度标准差,也可以作为灰度值特征;由此即可从强度图像中得到不同材料在不同深度下的反射光特征,强度数据库建立完成;
所述步骤3具体包括:深度图与强度图融合方法包括按位与操作;所使用的K-means聚类是一种迭代算法,经过聚类,在二维图片中距离较近的像素就会被划分到同一个类别中,,同一物体对应的像素点相互距离较近,自然被定义为从属于同一物体的像素点,也即图像每一个被判定为前景的像素都贴上标签,使之归属于不同的物体;实际操作中,将前景物体归类的图像算法,包括K-means聚类算法;K-means聚类的具体实现方法为Python的Scikit-learn库中的KMeans类。
2.根据权利要求1所述的基于深度相机获取数据融合的物体识别方法,其特征在于:使用的深度相机的探测原理采用飞行时间原理。
3.根据权利要求1所述的基于深度相机获取数据融合的物体识别方法,其特征在于:所述的去噪算法,为中值滤波、高斯滤波,或由腐蚀和膨胀操作复合而成的开操作和闭操作。
技术领域
[0001]本发明涉及光学成像、光信息处理以及计算机视觉等技术领域,尤其涉及一种基于飞行时间原理深度相机获取的两种图像数据融合的物体识别方法。
背景技术
[0002]在计算机视觉技术中,物体识别是最基本的任务,也是应用最广泛的方向之一。在自动驾驶、货仓监测、医疗图像分析等场景中,通常需要计算机辅助分析单帧或连续帧图像数据。而在现有技术当中,这项任务往往需要依赖神经网络进行图像内容识别。使用神经网络往往意味着需要使用大量数据用于网络的训练,且因为网络层级繁多、结构复杂,给优化和调试的过程增加了困难,同时,以往以RGB图像为主的单数据流的成像与识别常在光照变化大、照明条件差甚至黑暗等极端条件下表现不佳,甚至失效。
发明内容
[0003]基于上述情况,本发明提供一种深度相机拍摄的深度图像和红外强度图像融合下的静态物体识别方法。通过使用深度相机来获取同一时刻双数据流的单帧图像,即深度图像和强度图像,而后进行处理、融合,并加强对强度数据流的应用,提取出反射光强度信息,旨在从光学原理出发,减少计算时间、同时提升物体识别的准确度。同时,本方法对环境光也具有较强的鲁棒性,适用于黑暗等多种光照条件下的物体识别。
[0004]本发明涵盖的光学原理如下:
[0005]在深度相机的红外发射器探测物体时,理论上材料和距离(深度)都是反射强度的影响因素,可以简单描述为:
[0006]I=f(d,m)
[0007]其中I代表反射强度,d代表距离(深度),m代表材料性质。由此,在一定的单调关系下,由探测得到的反射强度I和深度d即可反向判定出被探测物体的材料特征,用于辅助物体识别。
[0008]本发明采用的方案如下:
[0009]步骤1:构建反射光强度数据库,即得到每种待识别材料在不同空间位置的红外反射强度情况,简称为强度数据库。为得到强度数据库进行拍摄所建立的数据集称为样本数据集。拍摄到样本数据集中的场景图像后,需要将前景与背景进行分离,此时需要将拍摄得到的深度图和强度图分别进行规范化、二值化并融合,提取出前景物体部分的所有像素,分析对应的强度图特征,建立出强度数据库。
[0010]其具体实现如下:
[0011]首先进行样本数据集的拍摄。拍摄过程中,针对不同的待探测材料,按照等距或近似等距的采样原则,由近及远地用深度相机同时进行深度图和强度图的采集;同时同一距离(深度)平面内不同空间位置的反射情况也会有区别,需要尽可能采集到同一深度X-Y平面内各处的深度,以便参考横向不同位置反射光效果的差异,减小其对材料判定结果带来的影响。
[0012]而后对得到的深度图像和强度图像进行二值化,实现前景像素和背景像素的区分。
[0013]环境物体对应的像素点在物体识别工作中属无用像素点,因而需要在二值化后对每一组数据的深度图与强度图进行噪声点与其他无用像素去除,其手段主要有两种:
[0014](1)对于大面积无用像素,如背景像素,可以直接采用画幅坐标阈值或深度灰度阈值的方法进行滤除;
[0015](2)对细微噪声点,可以使用的去噪方法包括但不限于中值滤波、高斯滤波,以及由腐蚀和膨胀操作复合而成的开操作和闭操作等。
[0016]深度图和强度图分别进行去噪后即可进行融合,可以使用按位与操作(即只有当两幅图像对应的(i,j)点灰度值都为255时,该点才保留255的灰度值,否则设定为0)。
[0017]得到融合后的二值化图片后,将其作为掩模板,对强度图像进行掩模处理,得到掩模图片。遍历掩模图片的所有像素点,可求得有效平均灰度值:
[0018]
[0019](非零像素指掩模图片上属于露出部分的像素)其等效操作为:查询所有前景物点的坐标(ix,jx),按照坐标对相应的强度图原图进行初始灰度值索引,也可求出所有前景像素平均灰度值:
[0020]
[0021]同理针对所有非零像素点求灰度标准差,也可以作为灰度值特征。由此即可从强度图像中得到不同材料在不同深度下的反射光特征,强度数据库建立完成。
[0022]步骤2:在建立的强度数据库基础上进行物体识别,先要对待识别场景进行数据采集,采集结果称为测试数据集(与样本数据集相对)。将深度相机摄像头直面场景,对某一时刻某一场景同时进行深度图与强度图的采集。
[0023]其具体拍摄方法与步骤1中类似,只需将平行放置的样本材料替换成待探测的不同目标物体即可。
[0024]步骤3:将待识别场景的深度图与强度图分别进行规范化、二值化、去噪等图像处理,并将处理后的深度图与强度图融合,得到用于进行物体识别的、无噪声像素的二值化图片,完成前景与背景分离。
[0025]不同于样本数据集中每一幅图像中不同物体均为同种材料,真正的物体识别场景每一个物体可能分属不同材料类别,同时物体识别任务客观上也要求分清每一个目标物体,因此,得到二值化图像后需要将所有属于前景的像素归类到不同的类(目标物体)中,本发明中使用的K-means(K均值)聚类的方法。
[0026]具体实现如下:
[0027]深度图与强度图分别进行规范化、二值化并融合,得到用于进行物体识别的、无噪声像素的二值化图片,完成前景与背景分离,这一过程与步骤1中相似。而后需要使用K-means聚类的方法将所有属于前景的像素归类到不同的类(目标物体)中。
[0028]经过聚类,在二维图片中距离较近的像素就会被划分到同一个类别中,应用于本发明,同一物体对应的像素点相互距离较近,自然被定义为从属于同一物体的像素点,也即图像每一个被判定为前景的像素都贴上标签,使之归属于不同的物体。实际操作中,K-means聚类采用Python的Scikit-learn库中的KMeans类来实现。
[0029]步骤4:将具有同一类标签的像素点向强度图像进行映射,查询每一个目标物体的红外强度特征,也即强度图中对应像素集的灰度值均值或灰度值标准差,并参照深度与先前建立的强度数据库进行比对,寻找强度特征落在的区间,判定出目标物体的材料种类,即可完成物体识别。
附图说明
[0030]图1是本发明中使用双数据流进行物体识别的流程框图。
[0031]图2是根据实施例的样本数据采集场景的概念图。
[0032]图3是根据实施例的测试数据采集场景的概念图。
[0033]图4是根据实施例对所得样本数据进行处理的概念图。
[0034]图5是根据实施例对所得测试数据进行处理的概念图。
[0035]图6示出了实施例中针对某一样本材料在第一深度下的探测与数据处理过程。
[0036]图7示出了实施例中针对某一样本材料在第二深度下的探测与数据处理过程。
[0037]图8示出了实施例中针对某一测试场景的探测与数据处理过程以及物体识别结果。
具体实施方式
[0038]以图6、图7示出的基于真实数据的处理和识别过程为例,说明本发明中双数据流物体识别的具体流程和相关细节。
[0039]图6和图7分别示出了针对某一样本材料在不同深度下的探测与数据处理的过程以构建强度数据库。在样本数据集拍摄过程中,受待探测物体的尺寸限制,为保证采集到同一深度X-Y平面内的各处深度,使深度与强度数据更具有代表意义,实验过程中需要同时在左、中、右三个方位摆放待探测材料。具体操作流程如下:
[0040]步骤1:通过深度相机拍摄场景,得到相应的深度图像(611、711)和强度图像(621、721)。
[0041]步骤2:分别对深度数据流(601、701)和强度数据流(602、702)进行处理。深度图像原图经固定阈值二值化得到二值化深度图,如612、712;强度图像经Otsu二值化得到二值化强度图,如622、722。
[0042]步骤3:二值化后由于往往难以恰好将前景和背景完全分离,容易带有若干环境像素,这些像素对于物体识别是无用的;且在现实场景拍摄中往往会出现图像噪声,因此需要进行去除无用像素和噪声。对于大面积的环境像素,通过利用环境位置信息以及在画幅中的位置信息,通过像素坐标阈值法进行滤除,对于细微噪声点,先使用开操作去除,再用高斯滤波进行修复。由高斯滤波原理可知该操作会破坏二值化结果,因此在高斯滤波后应再次进行二值化。对画面中存在开孔的情况,需要使用闭操作进行弥合。对深度图的去噪处理如613、713所示,对强度图的去噪处理如623、723所示。
[0043]步骤4:将所得经处理的深度图和强度图按位与操作进行融合,得到最终的二值化图像(631、731),此时图像中灰度值为255也即白色像素即作为前景物点,按照坐标值对强度图原图进行初始灰度值索引,从而分别得到材料在不同深度处的强度值数据特征。如此对不同材料在不同深度下进行数据采集即可得到所需的强度数据库。
[0044]图8示出了针对某一待识别场景的探测与数据处理过程。具体操作流程如下:
[0045]步骤1:通过深度相机拍摄场景,得到相应的深度图像(811)和强度图像(821)。
[0046]步骤2:分别对深度数据流(801)和强度数据流(802)进行处理。深度图像原图经固定阈值二值化得到二值化深度图,如812;强度图像经Otsu二值化得到二值化强度图,如822。
[0047]步骤3:类似地,先通过像素坐标阈值法进行滤除,再使用开操作、高斯滤波二值化、闭操作等进行修复。对深度图和强度图的去噪处理如813、823所示。
[0048]步骤4:将所得经处理的深度图和强度图以按位与操作进行融合,得到最终的二值化图像(831),对融合后的二值化图片使用K-means聚类算法进行不同目标物体的区分,如831所示。之后,再通过先前所建立的强度数据库进行材料种类判定,如841所示,图中从左至右的三个目标物体,参照深度与先前建立的强度数据库进行比对,物体1和物体3被识别为材料A,物体2被识别为材料B,识别结果准确。由此完成物体识别。
[0049]以上结合附图对本发明实施例进行了详细说明,此处的附图是用来提供对本发明的进一步理解。但本发明的保护范围不限于公开的实施例,意在覆盖所附权利要求的精神和范围之内所包括的多种变形和等效设置,如使用不同于本发明的数据流进行融合、使用不同的融合算法、去噪算法、使用不同原理的深度相机设备等。因此,对属于本发明技术构思,并且仅仅是技术方案显而易见的改动,均应属于本发明保护范围。