深度测量装置、方法及计算机可读存储介质与流程

文档序号:32663077发布日期:2022-12-24 00:11阅读:19来源:国知局
深度测量装置、方法及计算机可读存储介质与流程

1.本技术涉及深度测量技术领域,尤其涉及一种深度测量装置、方法及计算机可读存储介质。


背景技术:

2.目前,工业3d相机已经在诸多领域得到广泛应用,由于工业3d测量一般对精度要求较高,所以当前能够满足高精度的3d测量方法主要以相移结构光技术、3d激光扫描技术等为主。其中,由于相移结构光技术具有测量速度快、无需机械移动或者扫描等特点,因此在工业3d测量中应用广泛。
3.现有的工业3d相机采用相移结构光技术进行距离测量时,为了实现更高的精度,往往需要采用多个相移条纹实现相位解调,但该种方式只能先得到相对相位,而相对相位是不连续的,所以还需要对相对相位解缠绕得到连续的绝对相位。为解决相移解相中的“相位缠绕”现象,通常采用多频、傅里叶变换、融合格雷码等现有技术。其中,多频和融合格雷码技术由于需要增加曝光次数,因此会降低工业3d相机的测量速度;而傅里叶变换虽然可以提高测量速度,但是场景适用性受限,无法满足非连续平面的高精度测量。


技术实现要素:

4.本技术提供一种深度测量装置、方法及计算机可读存储介质,可以在保证工测量精度的基础上,提高测量速度。
5.第一方面,本技术实施例中提供了一种深度测量装置,包括:投影模组,用于向目标物分别投射至少三帧相移条纹与至少一泛光光束;接收模组,包括tof传感器,用于分别在2d工作模式下采集经目标物反射的相移条纹和在3d工作模式下采集经目标物反射的泛光光束;处理模组,用于分别控制投影模组及接收模组;还用于分别根据接收模组接收的相移条纹及泛光光束分别生成至少三帧相移条纹图像及至少一帧深度图像;利用至少三帧相移条纹图像计算tof传感器中各像素的相对相位;获取至少一帧深度图像中各像素的第一深度值对对应像素的相对相位进行解相得到各像素的绝对相位,并根据各像素的绝对相位计算各像素的目标深度值。
6.第二方面,本技术实施例中提供了一种深度测量方法,应用于第一方面的深度测量装置,方法包括:驱动投射模组朝向目标物投射至少三帧相移条纹,并控制tof传感器采集经目标物反射的相移条纹;驱动投射模组朝向目标物投射至少一泛光光束,并控制tof传感器采集经目标物反射的泛光光束;根据tof传感器接收的相移条纹及泛光光束分别生成至少三帧相移条纹图像及至少一帧深度图像,并利用至少三帧相移条纹图像计算tof传感器中各像素的相对相位;获取至少一帧深度图像中各像素的第一深度值对对应像素的相对相位进行解相得到各像素的绝对相位,并根据所述各像素的绝对相位计算各像素的目标深度值。
7.第三方面,本技术实施例中提供了一种计算机可读存储介质,所述计算机可读存
储介质中存储有计算机执行指令,当处理模组执行所述计算机执行指令时,实现如第二方面提供的深度测量方法。
8.本技术的有益效果为:与现有技术相比,本技术利用itof的高速深度计算辅助相移结构光测量的相位缠绕恢复,有效地提高相移结构光的测量速度。本技术不仅融合了相移结构光技术和itof技术,还结合相移结构光具有高精度的特点和itof能够实现高速测量的特点,使得本技术在保证高精度测量的基础上,提高了测量速度。
附图说明
9.图1为本技术实施例中提供的一种深度测量装置的结构示意图;
10.图2为本技术实施例中提供的一种深度测量方法的步骤流程示意图。
具体实施方式
11.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。此外,虽然本技术中公开内容按照示范性一个或几个实例来介绍,但应理解,可以就这些公开内容的各个方面也可以单独构成一个完整实施方式。
12.需要说明的是,本技术中对于术语的简要说明,仅是为了方便理解接下来描述的实施方式,而不是意图限定本技术的实施方式。除非另有说明,这些术语应当按照其普通和通常的含义理解。
13.本技术中说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似或同类的对象或实体,而不必然意味着限定特定的顺序或先后次序,除非另外注明。应该理解这样使用的用语在适当情况下可以互换,例如能够根据本技术实施例图示或描述中给出那些以外的顺序实施。
14.此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖但不排他的包含,例如,包含了一系列组件的产品或设备不必限于清楚地列出的那些组件,而是可包括没有清楚地列出的或对于这些产品或设备固有的其它组件。
15.本技术中使用的术语“模块”,是指任何已知或后来开发的硬件、软件、固件、人工智能、模糊逻辑或硬件或/和软件代码的组合,能够执行与该元件相关的功能。
16.在工业3d相机采用相移结构光技术进行测量时,为了实现更高的精度,往往需要采用多个相移条纹实现相位解调,比如三步相移法或四步相移法等。但基于上述方法只能先得到相对相位而相对相位是不连续的,并且相对相位的值都在(0,2π)的范围内,所以还需要对相对相位解缠绕得到连续的绝对相位其中,k为条纹周期序列数(k=0、1、2、

)。而相位解缠绕的关键是利用已知条件快速正确求解出条纹周期序列数k。
17.然而,在现有技术中,为了解决相移解相中的“相位缠绕”现象,往往采用多频、傅里叶变换、融合格雷码等技术。其中,多频和融合格雷码技术由于需要增加曝光次数,因此
会降低工业3d相机的测量速度;而傅里叶变换虽然可以提高测量速度,但是场景适用性受限,无法满足非连续平面的高精度测量。
18.有鉴于此,本技术提出一种深度测量装置及深度测量方法,以解决上述一个或多个技术问题。
19.图1为本技术实施例中提供的一种深度测量装置的结构示意图,该深度测量装置10包括:投影模组101,用于向目标物20投射至少三帧相移条纹与至少一泛光光束;接收模组102,包括tof传感器,用于分别在2d工作模式下采集经目标物反射的至少三帧相移条纹和在3d工作模式下采集经目标物反射的所述泛光光束;处理模组103,用于控制投影模组101及接收模组102;还用于分别根据接收模组接收的相移条纹及泛光光束分别生成至少三帧相移条纹图像及所述至少一帧深度图像,利用所述至少三帧相移条纹图像计算所述tof传感器中各像素的相对相位,获取至少一帧深度图像中各像素的第一深度值对对应像素的相对相位进行解相得到各像素的绝对相位,并根据各像素的绝对相位计算各像素的目标深度值。
20.在一些实施例中,投影模组101包括驱动单元、激光器、dlp整形器及镜头;其中,驱动单元,用于驱动激光器发射脉冲信号;激光器,用于发射至少两种不同脉宽及频率的预设激光脉冲信号;dlp整形器,用于接收至少两种不同的预设激光脉冲信号并分别产生至少三帧相移条纹及至少一泛光光束;镜头,用于分别将产生的相移条纹及泛光光束准直后投射至目标物20。可选的,镜头可以为单个准直透镜或者准直透镜组,此处不作限制。
21.在一个实施例中,dlp整形器包括多个微反射镜,每个微反射镜均具有独立控制光路的开关能力,并可通过激光器发射的预设激光脉冲信号的脉冲宽度大小以控制每个微反射镜的开、关光路的时间,从而实现相移条纹与泛光的切换投射。
22.在一个实施例中,接收模组102还包括镜头和滤光片,其中,镜头用于接收经目标物反射的光束使其聚焦于图像传感器的像素上,滤光片用于限制预设波段内的反射光进入图像传感器,以避免杂光干扰。可选的,镜头可以为单个聚焦透镜或者聚焦透镜组,此处不作限制。
23.在一个实施例中,图像传感器为tof传感器,其包括至少一个像素,与传统的仅用于拍照的图像传感器相比,tof传感器中的每个像素包含3个或3个以上的抽头(tap,用于在相应电极的控制下存储并读取或者排出由反射光脉冲产生的电荷信号),当每个像素包括多个抽头时,在单个帧周期t(或单次曝光时间内)内以一定的次序依次切换抽头以采集像素接收经目标物反射回的光信号产生的电子从而形成电荷信号。
24.在一个实施例中,tof传感器包括两种工作模式,分别为2d工作模式及3d工作模式,其中,2d工作模式为单频shuffle(轮转)、多帧的模式,处于2d工作模式的tof传感器用于接收经目标反射回的条纹;3d工作模式为单频noshuffle(非轮转)、单帧的模式,处于3d工作模式的tof传感器用于接收经目标反射回的泛光光束。需要说明的是,shuffle/noshuffle是tof传感器中抽头的一种工作模式,shuffle是指每个抽头获取单帧图像时工作多次,noshuffle是指每个抽头在获取单帧图像时仅工作一次。
25.具体地,通过处理模组控制tof传感器启动2d工作模式并同步产生条纹触发信号至驱动单元,以使驱动单元驱动激光器产生激光脉冲信号;dlp整形器接收激光脉冲信号并通过镜头向目标投射至少三帧相移条纹,至少三帧相移条纹在时间上依次分别曝光;当至
少三帧相移条纹依次曝光时,tof传感器依次采集经目标反射回的不同帧相移条纹并传输至处理模组生成多帧条纹图像。
26.在一个实施例中,tof传感器的采集经目标反射回的不同帧相移条纹并传输至处理模组生成多帧条纹图像具体包括:在单个帧周期内tof传感器每个像素中至少3个抽头采集至少3次光信号,并将光信号分别转换成电荷信号得到rawphase图像以传输至处理模组103,其中,各抽头采集的时间以及间隔相同;处理模组103根据rawphase图像计算各像素的强度信息,遍历所有像素后便可获得一帧条纹图像;其中,rawphase图像为tof传感器将采集得到的光信号转换为数字信号的原始数据,条纹图像中各像素的像素值即为强度信息。
27.需要说明的是,上述为单帧条纹图像的形成,需重复上述步骤便可得到多帧条纹图像,此处不作限制。
28.在一个实施例中,以tof图像传感器各像素中3个抽头在单个帧周期内采集4次光信号说明,根据rawphase图像计算各像素的强度信息具体包括:根据rawphase图像获取各像素中每个抽头依次采集的电荷量分别为c1、c2、c3及c4,则单个像素的强度信息计算如下:
[0029][0030]
而对于存在环境光的影响时,通过上述方法难以消除环境光影响,从而导致最终的条纹图像信噪比较低。因此,在另一个实施例,假设在非常小时间范围内环境光不变,则单个像素的强度信息可根据下式计算:
[0031][0032]
需要说明的是,当在单个帧周期内各像素采集光信号次数超过各像素包括的抽头数量时,需记录每次仅采集环境光对应的电荷量并利用采集到的反射光的电荷量及记录的环境光对应的电荷量进行计算便可得到单个像素的强度信息,此处不作限制。
[0033]
进一步地,在tof传感器依次采集完经目标物反射回的条纹相移条纹后,处理模组控制tof传感器启动3d工作模式并由tof传感器同步发送泛光触发信号至驱动单元,以使驱动单元驱动激光器产生激光脉冲信号;dlp整形器接收激光脉冲信号并通过镜头向目标投射泛光,并由tof传感器每个像素中的至少3个抽头在单个帧周期内分别采集至少3次光信号并转换成对应的电荷信号得到rawphase图像并传输至处理模组103;其中,各抽头采集的时间以及间隔相同。
[0034]
在一个实施例中,处理模组103还用于对3d模式下获取的rawphase图像进行处理得到各个像素对应的泛光飞行时间,并根据各个像素对应的泛光飞行时间计算各个像素的第一深度值,从而遍历所有像素得到目标的深度图像。
[0035]
具体地,根据rawphase图像计算各像素的相位信息,优选地,以tof传感器中每个像素包括3抽头依次采集3次光信号为例说明,根据rawphase图像获取各像素中各抽头得到的电荷量为c1、c2及c3,各抽头的脉冲采集信号的脉冲宽度th,则单个像素的飞行时间为:
[0036]
[0037]
进而可根据d=c*t/2得到第一深度值,c表示光速。遍历所有像素得到各像素的第一深度值。需要说明的是,若tof传感器中每个像素包括4抽头,则可采用四相位采样法计算相应的飞行时间;本技术也可获取多帧深度图像,通过计算各深度图像中各像素对应深度值的均值作为第一深度值,此处不作限制。
[0038]
由此,tof传感器既可以用于采集投影模组产生的不同相移的条纹,同时也可以实现基于itof的深度测量功能,不仅节约了成本,还兼顾两种工作模式,从而提高了深度装置的测量精度。
[0039]
基于上述实施例中描述的内容,如图2所示,本技术实施例还提供一种深度测量方法,应用于上述深度测量装置。其中,该深度测量方法包括:
[0040]
s201、驱动投射模组朝向目标物投射至少三帧相移条纹,并控制tof传感器采集经目标物反射的相移条纹;
[0041]
s202、驱动投射模组朝向目标物投射至少一泛光光束,并控制tof传感器采集经目标物反射的泛光光束;
[0042]
s203、根据tof传感器接收的相移条纹及泛光光束分别生成至少三帧相移条纹图像及至少一帧深度图像,并利用至少三帧相移条纹图像计算tof传感器中各像素的相对相位;
[0043]
s204、获取至少一帧深度图像中各像素的第一深度值以对对应的相对相位进行解相得到各像素的绝对相位,并根据各像素的绝对相位计算各像素的目标深度值。
[0044]
在一些实施例中,本技术可通过相移法对获取的至少三帧相移条纹图像进行解相。在一个实施例中,相移法包括三步法、四步法和五步法等多步法,基于误差影响和计算速度的考虑,本技术优选使用四步法进行计算,也即在本实施例中通过获取四帧相移条纹图像进行解相。
[0045]
具体地,基于光强公式可得到每张相移条纹图像相应的表达式,如下:
[0046][0047][0048][0049][0050]
其中,a表示平均亮度,b为调制信号的幅度,表示绝对相位。
[0051]
由此,基于上式可得到相对相位的表达式:
[0052][0053]
又由于绝对相位的表达为:
[0054][0055]
其中,相对相位的取值范围为[-π,π];k为正整数,表示条纹的周期数。由于上式(3)中k是条纹的周期数,通过四帧条纹图像无法确定周期数k,因此要确定绝对相位,必须
先要确定k值。
[0056]
在一个实施例中,基于计算飞行时间的公式其中fm为投影模组的调制频率,表示相位延迟,也即绝对相位,由此,可利用tof模式下计算得到的飞行时间计算绝对相位,并通过公式(3)计算相应的条纹k级。
[0057]
在另一个实施例中,假设一个像素对应的投影图像坐标x
p
已知,则可根据下式(4)可计算该像素的绝对相位:
[0058][0059]
其中,n为条纹数量,w是投影图像的水平分辨率,表示绝对相位。需要说明的是,投影图像为与接收模组的成像平面对齐的投影模组投影平面上待发射的条纹。
[0060]
进一步地,借助于3d工作模式计算出来的第一深度值对2d工作模式下获取的条纹图像进行相位缠绕恢复。具体地,选择任一像素,由于本技术使用同一传感器采集图像,由此可直接根据该像素的坐标选择该像素对应的第一深度值,并根据对应的第一深度值计算得到该像素对应的投影图像坐标x
p
;通过公式(4)计算该像素的绝对相位并利用绝对相位及公式(3)求解k值,从而后续可基于第k级条纹的绝对相位计算出该像素更加精确的目标深度值。
[0061]
在一些实施例中,利用第一深度值计算得到该像素的投影图像坐标xp,具体可以包括:假设基于3d工作模式得到的深度图像中某一像素点p对应的世界坐标为(x,y,z),将点p的世界坐标(x,y,z),分别投影至接收模组的成像平面及与成像平面对齐的投影模组的投影平面中,其中投影到接收模组的成像平面的坐标记为xc,投影到投影平面的坐标记为x
p
,由此可以得到:
[0062]
scxc=kc[re|tc]x=pcx
[0063]sp
x
p
=k
p
[r
p
|t
p
]x=p
p
x
ꢀꢀ
(5)
[0064]
其中,x表示点p的世界坐标(x,y,z)的齐次坐标,sc与s
p
表示尺度因子,k
p
和kc表示投影模组与接收模组内参矩阵,r
p
|t
p
及rc|tc表示投影模组与接收模组的投影矩阵,可简化为pc、p
p
。在一个实施例中,假设:
[0065][0066]
由此根据公式(6),点p的世界坐标(x,y,z)可以用下式表示:
[0067][0068]
其中,xc、yc表示点p在接收模组成像平面对应的坐标,x
p
、y
p
表示点p在投影平面中的坐标。通过点p的世界坐标(x,y,z)及点p在成像平面的坐标根据公式(7)可以计算出x
p
=(x
p
,y
p
),并将x
p
代入公式(4)便可计算出点p的绝对相位以及利用公式(3)可以计算k值。
由于条纹是基于准确的相位值计算出点p的深度,且相移法相对于tof原理计算得到的深度值精度高,因此根据第k级条纹点p的绝对相位可以计算出点p更加精确的目标深度值。根据上述方法遍历所有像素便可得到各像素的目标深度值。
[0069]
在一个实施例中,根据第k级条纹点p的绝对相位利用公式(4)计算出像素点p的投影图像坐标x
p
,再利用公式(7)可以计算出点p的目标深度值;或利用第k级条纹p点的绝对相位并通过三角测量的方法计算像素点p的目标深度值,此处不作限制。
[0070]
综上,现有技术一般利用多频法对相移条纹图像进行解相,但其需在原有四次曝光的基础上,额外继续曝光4次(双频)或者8次(三频)才可进行解相,这将极大降低3d测量的速度。而本技术通过采用tof传感器采集的深度图像辅助相移条纹图像进行相位缠绕解算,与现有的多频解相的方法相比,其只需在原有曝光次数的基础上额外再曝光一次便可进行解算,可提高的3d测量的速度。另外,目标的深度是采用相移条纹结构光的相移解相方法得到,亦保证了测量精度。
[0071]
进一步的,基于上述实施例中所描述的内容,本技术实施例中还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机执行指令,当处理模组执行所述计算机执行指令时,以实现如上述实施例中处理模组执行的步骤。
[0072]
应当理解的是,在本技术所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0073]
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
[0074]
另外,在本技术各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。上述模块成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
[0075]
上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本技术各个实施例所述方法的部分步骤。
[0076]
应理解,上述处理模组可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合申请所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
[0077]
上述存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(static randomaccess memory,sram),电可擦除可编程只读
存储器(electrically erasable programmable read only memory,eeprom),可擦除可编程只读存储器(electrical programmable read only memory,eprom),可编程只读存储器(programmable read only memory,prom),只读存储器(read only memory,rom),磁存储器,快闪存储器,磁盘或光盘。存储介质可以是通用或专用计算机能够存取的任何可用介质。
[0078]
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
[0079]
最后应说明的是:以上各实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述各实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1