CN117043547A - 混合模式深度成像 - Google Patents

混合模式深度成像 Download PDF

Info

Publication number
CN117043547A
CN117043547A CN202180095998.6A CN202180095998A CN117043547A CN 117043547 A CN117043547 A CN 117043547A CN 202180095998 A CN202180095998 A CN 202180095998A CN 117043547 A CN117043547 A CN 117043547A
Authority
CN
China
Prior art keywords
frame
pixel
primitive
search space
determining
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202180095998.6A
Other languages
English (en)
Inventor
I·诺西亚斯
M·J·O·杜普雷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN117043547A publication Critical patent/CN117043547A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/521Depth or shape recovery from laser ranging, e.g. using interferometry; from the projection of structured light
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/24Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures
    • G01B11/25Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures by projecting a pattern, e.g. one or more lines, moiré fringes on the object
    • G01B11/2513Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures by projecting a pattern, e.g. one or more lines, moiré fringes on the object with several lines being projected in more than one direction, e.g. grids, patterns
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/02Systems using the reflection of electromagnetic waves other than radio waves
    • G01S17/06Systems determining position data of a target
    • G01S17/08Systems determining position data of a target for measuring distance only
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/89Lidar systems specially adapted for specific applications for mapping or imaging
    • G01S17/8943D imaging with simultaneous measurement of time-of-flight at a 2D array of receiver pixels, e.g. time-of-flight cameras or flash lidar
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Electromagnetism (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Theoretical Computer Science (AREA)
  • Optics & Photonics (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Measurement Of Optical Distance (AREA)

Abstract

描述了用于生成深度图的系统和技术。例如,过程可以包括获得包括基于光图案生成的反射光图案的帧,该光图案基于包括唯一可识别特征的集合的图元。该过程可以包括使用飞行时间(ToF)传感器确定与帧的像素相关联的第一距离测量,以及基于第一距离测量确定图元内的搜索空间。所述过程可包含基于搜索所述搜索空间而确定对应于所述帧的所述像素周围的区域的所述图元的特征。该过程可以包括基于确定图元的特征来确定与帧的像素相关联的第二距离测量。所述过程可包含至少部分地基于所述第二距离测量生成深度图。

Description

混合模式深度成像
技术领域
本公开涉及深度成像。例如,本公开的各方面涉及用于结构化光和飞行时间(ToF)深度成像的组合技术。
背景技术
图像传感器通常集成到广泛的电子装置中,例如相机、移动电话、自主系统(例如,自主无人机、汽车、机器人等)、智能可穿戴设备、扩展现实(例如,增强现实、虚拟现实、混合现实)装置和许多其它装置。图像传感器允许用户从配备有图像传感器的任何电子设备捕获视频和图像。可以捕获视频和图像以用于娱乐使用、专业摄影、监视和自动化以及其他应用。可以以各种方式操纵由图像传感器捕获的视频和图像,以提高视频或图像的质量并创建某些艺术效果。
在一些情况下,可以分析由图像传感器捕获的光信号和图像数据以识别关于图像数据和/或由图像数据捕获的场景的某些特性,然后可以使用这些特性来修改捕获的图像数据或执行各种任务。例如,可以分析光信号和/或图像数据以估计由图像数据捕获的场景的距离。估计距离信息可用于各种应用,诸如三维(3D)摄影、扩展现实体验、对象扫描、自主车辆操作、地球地形测量、计算机视觉系统、面部识别系统、机器人、游戏,以及创建各种艺术效果,诸如模糊和背景虚化(bokeh)效果(例如,离焦效果)。然而,以足够的分辨率和/或准确度估计距离信息可能是非常有力且计算密集的。
发明内容
本文描述了用于至少部分地通过组合用于结构化光和飞行时间(ToF)深度成像的技术来执行混合模式深度成像的系统和技术。根据一个说明性实例,提供一种生成一个或多个深度图的方法。该方法包括:获得包括基于由结构化光源发射的光图案生成的光的反射图案的帧,该光图案基于包括唯一可识别特征集合的图元(primitive);使用ToF传感器确定与所述帧的像素相关联的第一距离测量;至少部分地基于所述第一距离测量来确定所述图元内的搜索空间,所述搜索空间包括来自所述图元的所述唯一可识别特征集合的特征的子集;基于在所述图元内搜索所述搜索空间,确定对应于所述帧的所述像素周围的区域的所述图元的特征;至少部分地基于从所述图元内的所述搜索空间确定所述图元的所述特征来确定与所述帧的所述像素相关联的第二距离测量;以及至少部分地基于所述第二距离测量生成深度图。
在另一实例中,提供一种用于生成一个或多个深度图的装置。所述装置包括结构化光源,所述结构化光源被配置为基于图元发射光图案。图元包括唯一可识别的特征集合。装置还包括飞行时间(ToF)传感器、至少一个存储器以及耦合到至少一个存储器的一个或多个处理器。一个或多个处理器被配置为:获得包括基于由结构化光源发射的光图案生成的光的反射图案的帧;使用所述ToF传感器确定与所述帧的像素相关联的第一距离测量;至少部分地基于所述第一距离测量来确定所述图元内的搜索空间,所述搜索空间包括来自所述图元的所述唯一可识别特征集合的特征的子集;基于在所述图元内搜索所述搜索空间,确定对应于所述帧的所述像素周围的区域的所述图元的特征;至少部分地基于从所述图元内的所述搜索空间确定所述图元的所述特征来确定与所述帧的所述像素相关联的第二距离测量;以及至少部分地基于所述第二距离测量生成深度图。
在另一实例中,提供一种非暂时性计算机可读介质,其上存储有指令,所述指令在由一个或多个处理器执行时致使所述一个或多个处理器:获得包含光的反射图案的帧,所述光的反射图案是基于由结构化光源发射的光图案而生成,所述光图案是基于包含唯一可识别特征集合的图元;使用ToF传感器确定与所述帧的像素相关联的第一距离测量;至少部分地基于所述第一距离测量来确定所述图元内的搜索空间,所述搜索空间包括来自所述图元的所述唯一可识别特征集合的特征的子集;基于在所述图元内搜索所述搜索空间,确定对应于所述帧的所述像素周围的区域的所述图元的特征;至少部分地基于从所述图元内的所述搜索空间确定所述图元的所述特征来确定与所述帧的所述像素相关联的第二距离测量;以及至少部分地基于所述第二距离测量生成深度图。
在另一示例中,提供了一种用于对一个或多个帧执行时间混合的装置。所述装置包含:用于获得包含基于由结构化光源发射的光图案而生成的光的反射图案的帧的装置,所述光图案是基于包含唯一可识别特征集合的图元;用于使用ToF传感器确定与所述帧的像素相关联的第一距离测量的装置;用于至少部分地基于所述第一距离测量来确定所述图元内的搜索空间的装置,所述搜索空间包含来自所述图元的所述唯一可识别特征集合的特征的子集;用于基于搜索所述图元内的所述搜索空间来确定对应于所述帧的所述像素周围的区域的所述图元的特征的装置;用于至少部分地基于从所述图元内的所述搜索空间确定所述图元的所述特征来确定与所述帧的所述像素相关联的第二距离测量的装置;以及用于至少部分地基于所述第二距离测量生成深度图的装置。
在一些方面中,所述方法、设备和计算机可读介质可包含(或经配置以):获得与第一照明水平相关联的帧的第一曝光;获得与不同于所述第一照明水平的第二照明水平相关联的所述帧的第二曝光;以及至少部分地基于与所述第一曝光中的所述像素相关联的第一光振幅和与所述第二曝光中的所述像素相关联的第二光振幅之间的比较来确定与所述帧的所述像素相关联的所述第一距离测量。
在一些方面,第一距离测量包括距离测量范围。在一些方面中,所述方法、设备和计算机可读介质可包含至少部分地基于距离测量的范围确定(或经配置以)图元内的搜索空间的尺寸。例如,大范围的距离测量与大尺寸的搜索空间相关联。在一些情况下,该方法、装置和计算机可读介质可以包括至少部分地基于与ToF传感器相关联的模糊度水平来确定(或被配置为确定)距离测量的范围。例如,高模糊度水平与大范围的距离测量相关联。
在一些方面中,所述方法、设备和计算机可读介质可包含(或经配置以):至少部分地基于所述第一距离测量确定所述帧的所述像素的第一位置与所述图元的所述特征的第二位置之间的偏移,其中所述偏移与所述第一距离测量成反比;以及至少部分地基于所述偏移确定所述图元内的所述搜索空间。在一些情况下,所述方法、设备和计算机可读介质可包含将图元内的搜索空间的中心轴设置(或经配置以设置)为图元的特征的第二位置。
在一些方面中,帧的像素周围的区域具有预定尺寸。在这样的方面中,该方法、装置和计算机可读介质可以包括(或被配置为):确定搜索空间的第一区域,搜索空间的第一区域具有预定尺寸;以及确定所述帧的所述像素周围的所述区域内的图像数据是否对应于所述搜索空间的所述第一区域内的图像数据。在一些情况下,所述方法、设备和计算机可读介质可包含(或经配置以):确定所述帧的所述像素周围的所述区域内的所述图像数据对应于所述搜索空间的所述第一区域内的所述图像数据;以及至少部分地基于确定帧的像素与搜索空间的第一区域的对应特征之间的距离来确定第二距离测量。在一些情况下,所述方法、设备和计算机可读介质可包含(或经配置以):确定所述帧的所述像素周围的所述区域内的所述图像数据不对应于所述图元内的所述搜索空间的所述第一区域内的所述图像数据;确定所述搜索空间的第二区域,所述搜索空间的所述第二区域具有所述预定尺寸;以及确定所述帧的所述像素周围的所述区域内的图像数据是否对应于所述搜索空间的所述第二区域内的图像数据。
在一些方面,由结构化光源发射的光图案包括多个光点。在一些方面,图元的唯一可识别特征集合内的特征包括多个光点中的两个或更多个光点。在一些情况下,特征的光点对应于帧的两个或更多个像素。
在一些方面,结构化光源被配置为使用衍射光学元件发射光图案,该衍射光学元件同时投影对应于图元的多个光图案。
在一些方面中,所述方法、设备及计算机可读介质可包含(或经配置以):在所述结构化光源不发射所述光图案时基于所述图元获得额外帧;至少部分地基于所述附加帧来确定环境光信号;以及在确定与所述帧的所述像素相关联的所述第一距离测量之前,从所述帧中减去所述环境光信号。在一些情况下,该方法、装置和计算机可读介质可以包括(或被配置为):在从帧中减去环境光信号之后,使用该帧来确定与多径干扰相对应的光信号;以及在确定与所述帧的所述像素相关联的所述第一距离测量之前,从所述帧中减去对应于多径干扰的所述光信号。
在一些方面中,所述方法、设备和计算机可读介质可包含在确定与所述帧的所述像素相关联的所述第一距离测量之前将函数拟合(或经配置以拟合)到对应于所述帧的所述像素的光信号。
在一些方面,装置是以下各项、是以下各项的一部分和/或包括以下各项:相机、移动设备(例如,移动电话或所谓的“智能电话”或其他移动设备)、可穿戴设备、扩展现实设备(例如,虚拟现实(VR)设备、增强现实(AR)设备或混合现实(MR)设备)、个人计算机、膝上型计算机、服务器计算机、车辆或车辆的计算设备或部件,或其他设备。在一些方面中,装置包含用于捕获一个或多个图像的相机或多个相机。在一些方面,装置还包括用于显示一个或多个图像、通知和/或其他可显示数据的显示器。在一些方面,上述装置可以包括一个或多个传感器(例如,一个或多个惯性测量单元(IMU),例如一个或多个陀螺仪、一个或多个加速度计、其任何组合和/或其他传感器)。
本发明内容不旨在标识所要求保护的主题的关键或必要特征,也不旨在单独用于确定所要求保护的主题的范围。应当通过参考本专利的整个说明书的适当部分、任何或所有附图以及每个权利要求来理解主题。
通过参考以下说明书、权利要求和附图,前述内容以及其他特征和实施例将变得更加明显。
附图说明
下面参考以下附图详细描述本申请的说明性实施例:
图1是示出根据一些示例的飞行时间(ToF)深度成像系统的示例架构的框图;
图2A是示出根据本公开的一些示例的直接ToF感测过程的示例的简化框图;
图2B是示出根据本公开的一些示例的间接ToF感测过程的示例的简化框图;
图3A是说明根据一些实例的结构化光深度成像系统的实例架构的框图;
图3B是说明根据一些实例的由图像传感器接收器与图案投影仪之间的视差引起的视差的实例的图式;
图3C是示出根据一些示例的由衍射光学元件(DOE)复制的投影垂直腔表面发射激光器(VCSEL)图元的示例的图;
图3D是示出根据一些示例的包括放置在VCSEL阵列前面的DOE和透镜的深度成像系统的图;
图4是示出根据一些示例的混合模式深度成像系统的示例架构的框图;
图5A示出了根据一些示例的由ToF深度成像系统捕获的示例帧曝光;
图5B示出了根据一些示例的由混合模式深度成像系统捕获的示例帧曝光;
图5C示出了根据一些示例的由混合模式深度成像系统生成的示例ToF深度图;
图6A和图6B是示出根据一些示例的用于由ToF距离测量引导的结构光解码的示例过程的图;
图7A和图7B示出了根据一些示例的具有降低的信号噪声的示例帧曝光;
图8是根据一些示例的由传感器接收的光的捕获振幅和理想振幅的曲线图的示例;
图9A和图9B是根据一些示例的由各种深度成像系统生成的深度图的示例;
图10是示出根据一些示例的用于混合模式深度成像的过程的示例的流程图;
图11是示出用于实现本文描述的某些方面的系统的示例的图。
具体实施方式
下面提供本公开的某些方面和实施例。这些方面和实施例中的一些可以独立地应用,并且它们中的一些可以组合应用,这对于本领域技术人员来说是显而易见的。在以下描述中,出于解释的目的,阐述了具体细节以便提供对本申请的实施例的透彻理解。然而,显而易见的是,可以在没有这些具体细节的情况下实践各种实施例。附图和描述不旨在是限制性的。
随后的描述仅提供示例性实施例,并且不旨在限制本公开的范围、适用性或配置。相反,示例性实施例的随后描述将为本领域技术人员提供用于实现示例性实施方式的使能描述。应当理解,在不脱离所附权利要求中阐述的本申请的精神和范围的情况下,可以对元件的功能和布置进行各种改变。
各种系统和/或应用利用表示场景的三维(3D)信息,诸如执行面部识别的系统和/或应用、使用对象的面部标识(ID)的认证系统、对象扫描、对象检测、对象抓取、对象跟踪、自主驾驶、机器人技术、航空导航(例如,用于无人驾驶飞行器、飞机等)、室内导航、扩展现实(例如,增强现实(AR)、虚拟现实(VR)、混合现实(MR)等)、3D场景理解等任务。最近需要从场景捕获3D信息已经生成了对主动深度感测技术的高需求。
结构光系统是提供可靠且高度准确的深度捕获系统的技术的一个示例。一般来说,结构光系统可包含用于扫描和/或确定场景和/或场景中的一个或多个物体(例如,人、设备、动物、车辆等)的尺寸和/或移动的一个或多个结构光投影仪和传感器。结构光投影仪可以将已知形状或图案的光投影到包括一个或多个对象的场景上,并且传感器可以接收从场景中的一个或多个对象反射的光。结构光系统可基于所测量或检测到的形状或图案的变形来确定场景的尺寸和/或场景内的移动(例如,场景内的一个或多个对象的尺寸和/或移动)。
飞行时间(ToF)技术是提供高效且高分辨率的深度捕获系统的另一示例。通常,ToF系统可以包括一个或多个光发射器和一个或多个传感器。例如,光发射器用于朝向目标(例如,场景中的一个或多个对象)发射光信号,该光信号可以击中目标并基于从目标反射的光信号返回到一个或多个传感器。一个或多个传感器可以检测和/或测量反射光,然后可以使用反射光来确定目标的深度和/或距离信息。直接ToF系统可以基于发射的光信号的行进时间(例如,从发射光信号的时间到接收到对应的返回/反射光信号的时间)来确定深度和/或距离信息。间接ToF系统可以基于使用间隔开一段时间的脉冲光的两次曝光捕获的两个帧来确定深度和/或距离信息。帧中的一个点的深度和/或距离信息可以对应于一个帧中的点的光振幅与另一帧中的点的光振幅的比率。间接ToF系统还可以基于发射光信号和对应的返回/反射光信号之间的相移来确定深度和/或距离信息。
结构化光和ToF深度捕获系统提供各种优点和缺点。举例来说,结构化光系统可能够确定高度准确的深度信息,但可具有有限分辨率和/或高计算复杂度。ToF系统可以能够以低计算复杂度生成高分辨率深度图,但是深度图的准确度可能被噪声和/或光散射降级。
本公开描述了提供改进的深度成像的系统、装置、方法和计算机可读介质(统称为“系统和技术”)。该系统和技术为深度成像系统提供基于结构化光技术和ToF技术的组合来生成深度图的能力。这样的深度成像系统可以被称为可以执行混合模式深度成像的“混合模式”深度成像系统。在一些情况下,混合模式深度成像系统可以根据结构化光发射器的图元投影光图案。在一些情况下,投影的光图案可以包括具有以重叠或非重叠方式重复或镶嵌(例如,使用衍射光学元件或DOE)的图元的图案。然后,深度成像系统可以使用ToF传感器来确定与返回(或反射)光相关联的距离测量。ToF距离测量可以用于加速(并且以更好的效率)使用结构光技术来确定附加的(例如,更准确的)距离测量。例如,深度成像系统可以使用ToF距离测量来减小结构化光解码器的搜索空间。
如上所述,在一些示例中,深度成像系统可包括结构化光发射器,该结构化光发射器被配置为诸如使用相对于结构化光发射器定位的DOE来发射包括棋盘格化(例如,或重复的)图元图案(也称为图元)的光图案。图元可包含多个唯一可识别特征(也称为“码字”)。举例来说,图元中的特征或码字可包含光点(也称为“点”)的4×4布置。如本文中所描述,特征(或码字)可用于执行所捕获帧与图元图案之间的匹配,如本文中所描述。在一些情况下,深度成像系统可以使用垂直腔表面发射激光器(VCSEL)来生成图元图案,并且可以使用DOE来镶嵌图元图案。在一些示例中,图元中的每个点可以对应于VCSEL阵列中的单个VCSEL。深度成像系统可以将棋盘格化的图元图案投影到场景内的对象上。
深度成像系统的一个或多个传感器可以基于由场景内的对象反射并返回到深度成像系统的光图案(包括重复的图元图案)来捕获帧。图元图案的每个点可以占据捕获帧中的多个像素。在一个说明性示例中,可以设置系统(例如,接收器和发射器的透镜等),使得图元的每个点对应于捕获帧中的4×4像素布置。如上所述,特征(或码字)可以包括4×4的点布置,当每个点占据4×4像素时,这可以导致特征在捕获的帧中占据16×16像素。
帧的像素可以相对于原始图元图案的对应点偏移(例如,移位)。这些偏移的值对应于和/或指示与像素相关联的对象的深度。在一些情况下,传统结构光系统可通过获得像素周围的像素区(或块)(例如,16×16像素块)且在图元中搜索对应于(例如,匹配或最类似于)像素周围的像素区中的“特征”的唯一可识别特征来确定与帧的像素相关联的深度。此技术可涉及搜索图元的整体以识别对应(例如,最相似)像素,这可需要大量时间和/或处理能力。举例来说,结构光解码通常包含针对帧的每一像素从来自图元(例如,其可具有124×64的尺寸)的可能相同尺寸的图案中识别所述像素周围的区域(例如,16×16块)。使用块匹配类型的解码,深度成像系统可以将图元中的点的每个4×4区域与来自帧的当前像素周围的16×16邻域进行比较。
为了避免搜索整个图元,混合模式深度成像系统可以基于与帧中的光点相关联的ToF距离测量来确定包括要搜索的图元的区域(例如,块、切片或部分)的搜索空间。例如,深度成像系统可以确定反射的图元图案的光点的全部或一部分的ToF距离测量(例如,间接ToF距离测量)。基于与帧的一个像素相关联的ToF距离测量,深度成像系统可以确定图元内可能和/或预期包括与帧的像素周围的像素区域中的特征相对应的唯一可识别特征的搜索空间。例如,ToF距离测量可以对应于帧的特征与图元的对应特征之间的估计的(例如,未细化的)偏移。待搜索的图元内的搜索空间可以包括在估计的偏移处或附近的图元的点。在一些情况下,可以至少部分地基于与ToF测量相关联的模糊度水平来定义搜索空间的尺寸(例如,宽度)。模糊度水平可能是ToF传感器的配置和/或ToF系统中的固有不准确性(其通常可能不如结构光系统准确)的结果。在说明性示例中,图元内的搜索空间可以被定义为以偏移为中心并且具有与ToF测量的模糊度水平相对应的宽度。较高模糊度水平可以对应于较大的宽度。此外,图元内的搜索空间可以跨越图元的高度的全部或一部分。
在图元内定义搜索空间之后,混合模式深度成像系统可以在搜索空间内搜索以识别与由帧的像素周围的像素区域形成的“特征”相对应的图元的特征。在一些情况下,混合模式深度成像系统可以通过将围绕特定帧像素的帧像素块与来自图元的具有对应尺寸的点块进行比较来搜索图元的搜索空间。例如,可以将帧中的像素周围的16×16像素块(例如,其中像素在16×16块的中间)与图元的搜索空间内的各种16×16点块进行比较。块或区域可以具有任何合适的和/或预定的尺寸(例如,16×16、32×32、64×64等)。在一个说明性示例中,混合模式深度成像系统可以使用点积相似性测量或任何其他合适的相似性测量来比较块。
一旦混合模式深度成像系统识别图元的搜索空间内的对应特征,混合模式深度成像系统就可以确定与特定帧像素相关联的更精确(例如,细化)的距离测量。例如,混合模式深度成像系统可以确定帧像素周围的像素区域中的特征的位置与对应的图元特征的位置之间的精确偏移。在一些示例中,混合模式深度成像系统可以针对帧的附加像素的全部或一部分重复混合模式深度成像过程。
混合模式深度成像系统可以基于所确定的距离测量(例如,细化的距离测量)来生成场景的深度图。在一些情况下,深度图可与使用常规结构光系统生成的深度图一样准确和/或精确。此外,通过基于ToF距离测量确定要搜索的图元的相对小的区域(在搜索空间内),混合模式深度成像系统可以在比常规结构化光系统更少的时间内和/或以更低的计算复杂度生成深度图。
在一些情况下,本文描述的系统和技术(例如,混合模式深度成像系统)可以执行一个或多个操作以提高ToF距离测量的准确度。提高ToF距离测量的准确度可以降低与测量相关联的模糊度水平,这进而可以减小在图元内要搜索的区域的尺寸。在一个示例中,与帧内的像素(或像素图案)相关联的光的强度可以具有预期分布(例如,高斯钟形分布)。该系统和技术可以通过在确定ToF距离测量之前将与捕获的帧相对应的光信号拟合到预期分布来减少深度图内的噪声。在另一示例中,系统和技术可以通过基于多个帧(例如,图元图案的多次曝光)确定ToF距离测量来减少与环境光和/或多径干扰相关联的噪声。例如,系统和技术可以捕获对应于环境光信号的帧(例如,当结构光发射器关闭时捕获的帧),并且从用于确定ToF距离测量的一个或多个帧中减去环境光信号。
此外,系统和技术可以基于确定帧的一个或多个像素包括不对应于图元图案的光点的捕获光来确定(然后去除)对应于多径干扰的光信号。例如,不是环境光并且不是直接来自图案的任何光将是由于多径干扰(例如,投影图案从场景中的对象的反射)。投影图案可以具有亮区域和暗区域。由于多径干扰引起的光是高度漫射的光,至少部分地因为基于多径干扰的光来自周围反射的辉光。例如,如果聚光灯投影在房间中的墙壁上,则整个房间将被光淹没,该光包括从各种对象反射多次的光。因为系统和技术可以依赖于相对亮度来执行ToF测量,所以基于多径干扰的光可以影响ToF测量。例如,基于多径干扰的光可以使尖角看起来在所得到的深度图中(例如,在点云中的深度轴上)弯曲。
在使用漫射光(例如,泛光灯照明器)的情况下,多径干扰与直射光混合,在一些情况下使得难以将基于多径干扰的光与直射光分离。本文描述的系统和技术利用结构化光源(其在光点之间具有暗区域)。通过使用结构化光源,可以在暗区域中测量多径干扰。例如,系统可以测量帧的图案的预期暗区域(例如,使用ToF传感器获得)上的多径干扰,导致基于多径干扰的光的稀疏测量。为了生成场景的完整地图,系统可以使用稀疏多径干扰测量来执行插值。例如,系统可以跨稀疏多径干扰测量进行内插,从而为系统提供跨由ToF传感器接收的整个帧的多径干扰的准确表示,包括多径干扰对投影图案的亮区域的贡献。系统可以从帧的模式中减去多径干扰。减去多径干扰可以提高混合模式深度成像系统的ToF精度,并且因此可以降低混合模式深度成像系统的结构光计算的模糊度水平(并因此降低搜索空间)。如本文所述,降低模糊度水平(和搜索空间)可以基于减少在执行结构光计算时需要搜索的区域来减少混合模式深度成像系统的计算负荷。
如上所述,结构光系统使用点来构建特征。这种系统的深度分辨率(例如,所得深度图的宽度和高度)由投影图案中的点的数量而不是捕获帧的分辨率确定。使用本文描述的系统和技术,因为光点(点)在捕获的帧中占据一定数量的像素(例如,4×4像素的布置),所以结构化光解码深度图是帧分辨率的一部分(例如,当每个点占据4×4像素时,深度图具有帧分辨率的四分之一)。在每个点占据4×4像素的一个说明性示例中,如果帧分辨率为640×480,则深度图将为160×120。另一方面,ToF测量返回帧的每个像素的深度值,在这种情况下,深度图分辨率等于帧分辨率。
结构光系统的深度图分辨率降低是由于实际原因而不是基本限制。例如,可以使用结构化光匹配算法,其返回每个帧像素的深度值,或者通过在像素位置之间执行内插来在子像素级返回深度值。在匹配特征或码字的更一般意义上,不需要“对准”到点,在这种情况下,系统可以匹配任何任意偏移。在大多数应用中,高计算成本使得使用全分辨率深度图分辨率不切实际。本文描述的混合模式系统和技术提供了一种使用更复杂的结构化光解码过程但以减小的搜索空间恢复全帧分辨率的方式,从而使其从计算和效率的角度来看是实用的。
此外,许多ToF系统具有泛光灯发射器(例如,均匀光源)。一些系统使用两个单独的发射器或添加可配置的漫射器并捕获两个帧,包括用于结构光的一个帧和用于ToF的一个帧。本文描述的系统和技术可以使用结构化光源进行ToF测量(而不是使用两个不同的发射器)。在这种情况下,使用结构化光源进行ToF测量可以意味着ToF不返回每个帧像素的深度值,因为存在未被照射的区域(例如,点之间的区域)。因此,ToF测量是稀疏的。使用本文描述的系统和技术,稀疏性不是问题,因为例如ToF测量用作结构光解码(例如,匹配)过程的指导。结构光系统基本上填充稀疏ToF测量的间隙。
如上所述,该系统和技术可以提高ToF距离测量的精度。例如,系统和技术可以利用点之间的区域(例如,帧的所谓的“暗”区域)来测量影响ToF精度的多径干扰,其可以从测量中减去。这种解决方案对于基于泛光灯的ToF系统可能是不可能的。
所述系统和技术还固有地提供更高的信噪比(SNR)。例如,因为系统和技术使用结构化光发射器,并且在点处执行ToF,所以对于相同的发射器功率,对比度高于典型的ToF系统(例如,使用泛光灯)。结果是,与相同的供电泛光灯相比,系统可以在干扰下(例如,在阳光直射下的室外)和在高吸收区域中更好地执行。
本文关于各个附图提供了关于混合模式深度成像系统的进一步细节。如将关于附图更详细地解释的,所公开的混合模式深度成像系统可以包括结构化光深度成像系统和/或ToF深度成像系统的全部或一部分。
图1是示出可以实现本文描述的混合模式深度成像技术的混合模式深度成像系统100的示例的图。附加地或替代地,混合模式深度成像系统可以包括用于图4中所示的结构化光信号处理的示例深度成像系统400的全部或一部分,这将在下面更详细地描述。
如图1所示,混合模式深度成像系统100可以包括飞行时间(ToF)传感器系统102、图像传感器104、储存器106和应用处理器110。在一些示例中,深度成像系统100可以可选地包括其他计算组件108,诸如例如中央处理单元(CPU)、图形处理单元(GPU)、数字信号处理器(DSP)和/或图像信号处理器(ISP),深度成像系统100可以使用这些计算组件来执行本文关于应用处理器110描述的操作/功能中的一个或多个。在一些情况下,应用处理器110和/或其他计算组件108可以实现ToF引擎130、图像处理引擎134和/或渲染引擎136。
应当注意,在一些示例中,应用处理器110和/或其他计算组件108还可以实现图1中未示出的一个或多个计算引擎。ToF引擎130、图像处理引擎134和渲染引擎136在本文中是出于说明和解释的目的而提供的,并且为了简单起见,未示出其他可能的计算引擎。此外,为了说明和解释的目的,ToF引擎130、图像处理引擎134、渲染引擎136及其各种操作所公开的操作在本文中将被描述为由应用处理器110实现。然而,本领域技术人员将认识到,在其他示例中,ToF引擎130、图像处理引擎134、渲染引擎136和/或其各种操作所公开的操作可以由其他计算组件108实现。
深度成像系统100可以是计算设备或多个计算设备的一部分或由其实现。在一些示例中,深度成像系统100可以是电子设备(或设备)的一部分,诸如相机系统(例如,数字相机、IP相机、视频相机、安全相机等)、电话系统(例如,智能电话、蜂窝电话、会议系统等)、膝上型或笔记本计算机、平板计算机、机顶盒、电视、显示设备、数字介质播放器、游戏控制台、视频流设备、头戴式显示器(HMD)、扩展现实(XR)设备、无人机、汽车中的计算机、IoT(物联网)设备、智能可穿戴设备或任何其他合适的电子设备。在一些实施方式中,ToF传感器系统102、图像传感器104、储存器106、其他计算组件108、应用处理器110、ToF引擎130、图像处理引擎134和渲染引擎136可以是同一计算设备的一部分。
例如,在一些情况下,ToF传感器系统102、图像传感器104、储存器106、其他计算组件108、应用处理器110、ToF引擎130、图像处理引擎134和渲染引擎136可以集成到相机、智能电话、膝上型计算机、平板计算机、智能可穿戴设备、HMD、XR设备、IoT设备、游戏系统和/或任何其他计算设备中。然而,在一些实现方式中,ToF传感器系统102、图像传感器104、存储装置106、其他计算组件108、应用处理器110、ToF引擎130、图像处理引擎134和/或渲染引擎136中的一个或多个可以是两个或更多个单独的计算设备的一部分或由两个或更多个单独的计算设备实现。
ToF传感器系统102可以使用诸如近红外光(NIR)的光来确定关于目标(例如,周围/附近场景、一个或多个周围/附近对象等)的深度和/或距离信息。在一些示例中,ToF传感器系统102可以测量目标(诸如场景)中的每个像素的距离和强度两者。ToF传感器系统102可以包括光发射器,以朝向目标(例如,场景、对象等)发射光信号,该光信号可以击中目标并返回/反射到ToF传感器系统102。ToF传感器系统102可以包括用于检测和/或测量返回/反射光的传感器,然后可以使用该返回/反射光来确定目标的深度和/或距离信息。目标相对于ToF传感器系统102的距离可以用于执行深度映射。可以通过直接ToF或间接ToF来计算目标的距离。
在直接ToF中,可以基于发射的光脉冲信号和返回/反射光脉冲信号的行进时间(例如,从发射光信号到接收到返回/反射光信号的时间)来计算距离。例如,可以通过将发射光脉冲信号和返回/反射光脉冲信号的行进时间乘以光速(通常表示为c)来计算发射光信号和返回/反射光信号的往返距离。然后可以将计算的往返距离除以2以确定从ToF传感器系统102到目标的距离。
在间接ToF中,可以通过向目标发送调制光并测量返回/反射光的相位来计算距离。知道发射光的频率(f)、返回/反射光的相移和光速允许计算到目标的距离。例如,发射光的路径与返回/反射光的路径之间的运行时间差异导致返回/反射光的相移。发射光与返回/反射光之间的相位差以及光的调制频率(f)可以用于计算ToF传感器系统102与目标之间的距离。例如,ToF传感器系统102与目标之间的距离的公式可以是c/2f×相移/2π。如图所示,更高频率的光可以提供更高的测量精度,但是将导致可以测量的更短的最大距离。
因此,在一些示例中,可以使用双频率来提高测量精度和/或距离,如本文进一步解释的。例如,60MHz光信号可以用于测量2.5米远的目标,并且100MHz光信号可以用于测量1.5米远的目标。在双频场景中,60MHz和100MHz光信号都可以用于计算7.5米远的目标。
图像传感器104可以包括任何图像和/或视频传感器或捕获设备,诸如数字相机传感器、视频相机传感器、智能电话相机传感器、电子设备(诸如电视或计算机)上的图像/视频捕获装置、相机等。在一些情况下,图像传感器104可以是相机或计算设备(诸如数字相机、摄像机、IP相机、智能电话、智能电视、游戏系统等)的一部分。在一些示例中,图像传感器104可以包括多个图像传感器,诸如后传感器设备和前传感器设备,并且可以是双相机或其他多相机组件(例如,包括两个相机、三个相机、四个相机或其他数量的相机)的一部分。图像传感器104可以捕获图像和/或视频帧(例如,原始图像和/或视频数据),其然后可以由应用处理器110、ToF引擎130、图像处理引擎134和/或渲染引擎136处理,如本文进一步描述的。
存储装置106可以是用于存储数据的任何存储设备。此外,存储装置106可以存储来自深度成像系统100的任何组件的数据。例如,存储装置106可以存储来自ToF传感器系统102的数据(例如,ToF传感器数据或测量)、来自图像传感器104的数据(例如,帧、视频等)、来自其他计算组件108和/或应用处理器110的数据和/或由其他计算组件108和/或应用处理器110使用的数据(例如,处理参数、图像数据、ToF测量、深度图、调谐参数、处理输出、软件、文件、设置等)、来自ToF引擎130的数据和/或由ToF引擎130使用的数据(例如,一个或多个神经网络、图像数据、调谐参数、辅助元数据、ToF传感器数据、ToF测量、深度图、训练数据集等)、来自图像处理引擎134的数据(例如,图像处理数据和/或参数等)、来自渲染引擎136的数据和/或由渲染引擎136使用的数据(例如,输出帧)、来自深度成像系统的操作系统100和/或任何其他类型的数据。
应用处理器110可以包括例如但不限于CPU 112、GPU 114、DSP 116和/或ISP 118,应用处理器110可以使用它们来执行各种计算操作,诸如图像/视频处理、ToF信号处理、图形渲染、机器学习、数据处理、计算和/或任何其它操作。在图1所示的示例中,应用处理器110实现ToF引擎130、图像处理引擎134和渲染引擎136。在其他示例中,应用处理器110还可以实现一个或多个其他处理引擎。此外,在一些情况下,ToF引擎130可以实现被配置为执行ToF信号处理和/或生成深度图的一个或多个机器学习算法(例如,一个或多个神经网络)。
在一些情况下,应用处理器110还可以包括存储器122(例如,随机存取存储器(RAM)、动态RAM等)和高速缓存120。存储器122可以包括一个或多个存储器设备,并且可以包括任何类型的存储器,诸如例如易失性存储器(例如,RAM、DRAM、SDRAM、DDR、静态RAM等)、闪存、基于闪存的存储器(例如,固态驱动器)等。在一些示例中,存储器122可以包括一个或多个DDR(例如,DDR、DDR2、DDR3、DDR4等)存储器模块。在其他示例中,存储器122可以包括其他类型的存储器模块。存储器122可以用于存储数据,诸如例如图像数据、ToF数据、处理参数(例如,ToF参数、调谐参数等)、元数据和/或任何类型的数据。在一些示例中,存储器122可以用于存储来自ToF传感器系统102、图像传感器104、存储装置106、其他计算组件108、应用处理器110、ToF引擎130、图像处理引擎134和/或渲染引擎136的数据和/或由ToF传感器系统102、图像传感器104、存储装置106、其他计算组件108、应用处理器110、ToF引擎130、图像处理引擎134和/或渲染引擎136使用的数据。
高速缓存120可以包括存储数据的一个或多个硬件和/或软件组件,使得对该数据的未来请求可以比如果存储在存储器122或存储装置106上更快地被服务。例如,高速缓存120可以包括任何类型的高速缓存或缓冲器,诸如例如系统高速缓存或L2高速缓存。高速缓存120可以比存储器122和存储装置106更快和/或更具成本效益。此外,高速缓存120可以具有比存储器122和存储装置106更低的功率和/或操作需求或占用空间。因此,在一些情况下,高速缓存120可以用于存储/缓冲和快速服务预期将来由深度成像系统100的一个或多个组件(例如,应用处理器110)处理和/或请求的某些类型的数据,诸如图像数据或ToF数据。
在一些示例中,ToF引擎130、图像处理引擎134和渲染引擎136(以及任何其他处理引擎)的操作可以由应用处理器110中的任何计算组件来实现。在一个说明性示例中,渲染引擎136的操作可以由GPU 114实现,并且ToF引擎130、图像处理引擎134和/或一个或多个其他处理引擎的操作可以由CPU 112、DSP 116和/或ISP 118实现。在一些示例中,ToF引擎130和图像处理引擎134的操作可以由ISP 118实现。在其他示例中,ToF引擎130和/或图像处理引擎134的操作可以由ISP 118、CPU 112、DSP 116和/或ISP 118、CPU 112和DSP 116的组合来实现。
在一些情况下,应用处理器110可以包括其他电子电路或硬件、计算机软件、固件或其任何组合,以执行本文描述的各种操作中的任何操作。在一些示例中,ISP 118可以接收由ToF传感器系统102和/或图像传感器104捕获或生成的数据(例如,图像数据、ToF数据等),并且处理数据以生成输出深度图和/或帧。帧可以包括视频序列的视频帧或静止图像。帧可以包括表示场景的像素阵列。举例来说,帧可为每像素具有红色、绿色及蓝色色彩分量的红-绿-蓝(RGB)帧;亮度、色度-红色、色度-蓝色(YCbCr)帧,其每像素具有亮度分量和两个色度(颜色)分量(色度-红色和色度-蓝色);或任何其他合适类型的彩色或单色图片。
在一些示例中,ISP 118可以实现一个或多个处理引擎(例如,ToF引擎130、图像处理引擎134等),并且可以执行ToF信号处理和/或图像处理操作,诸如深度计算、深度映射、滤波、去马赛克、缩放、颜色校正、颜色转换、降噪滤波、空间滤波、伪影校正等。ISP 118可以处理来自ToF传感器系统102、图像传感器104、存储装置106、存储器122、高速缓存120、应用处理器110中的其他组件的数据和/或从远程源(诸如远程相机、服务器或内容提供商)接收的数据。
虽然深度成像系统100被示出为包括某些组件,但是普通技术人员将理解,深度成像系统100可以包括比图1中所示的组件更多或更少的组件。例如,在一些情况下,深度成像系统100还可以包括一个或多个其他存储器设备(例如,RAM、ROM、高速缓存等)、一个或多个网络接口(例如,有线和/或无线通信接口等)、一个或多个显示设备和/或图1中未示出的其他硬件或处理设备。下面关于图11描述可以用深度成像系统100实现的计算设备和硬件组件的说明性示例。
图2A是示出直接ToF感测过程200的示例的简化框图。在图2A的示例中,ToF传感器系统102首先朝向目标210发射光脉冲202。目标210可以包括例如场景、一个或多个对象、一个或多个动物、一个或多个人等。光脉冲202可以行进到目标210,直到其撞击目标210。当光脉冲202撞击目标210时,光脉冲202的至少一些部分可以被反射回ToF传感器系统102。
ToF传感器系统102可以接收反射光脉冲204,反射光脉冲204包括从目标210反射回的光脉冲202的至少一些部分。ToF传感器系统102可以感测反射光脉冲204并基于反射光脉冲204计算到目标210的距离206。为了计算距离206,ToF传感器系统102可以计算发射光脉冲202和反射光脉冲204行进的总时间(例如,从发射光脉冲202时到接收到反射光脉冲204时的时间)。ToF传感器系统102可以将发射光脉冲202和反射光脉冲204行进的总时间乘以光速(c),以确定光脉冲202和反射光脉冲204行进的总距离(例如,往返时间)。ToF传感器系统102然后可以将行进的总时间除以2,以获得从ToF传感器系统102到目标210的距离206。
图2B是示出间接ToF感测过程220的示例的简化框图。在该示例中,可以计算反射光的相移以确定目标210的深度和距离。这里,ToF传感器系统102首先朝向目标210发射调制光222。调制光222可以具有某个已知或预定的频率。调制光222可以行进到目标210,直到它击中目标210。当调制光222撞击目标210时,调制光222的至少一些部分可以被反射回ToF传感器系统102。
ToF传感器系统102可以接收反射光224,并且可以使用以下公式确定反射光224的相移226和到目标210的距离206:
距离(206)=c/2f×相移/2π,
其中f是调制光222的频率,并且c是光速。
在一些情况下,当计算深度和距离(例如,距离206)时,可以考虑或使用影响光如何被反射的一个或多个因素来调整计算。例如,物体和表面可以具有可以导致光不同地反射的特定特性。为了说明,不同的表面可以具有不同的折射率,这可以影响光如何行进或与表面和/或表面中的材料接合。此外,不均匀性(诸如材料不规则性或散射中心)可导致光被反射、折射、透射或吸收,并且有时可导致能量损失。因此,当光撞击表面时,它可以被吸收、反射、透射等。由表面反射的光的比例称为其反射率。然而,反射率不仅取决于表面(例如,折射率、材料性质、均匀性或不均匀性等),而且还可以取决于被反射的光的类型和周围环境(例如,温度、环境光、水蒸气等)。因此,如下面进一步解释的,在一些情况下,当计算目标210的距离206和/或深度信息时,可以考虑关于周围环境的信息、光的类型和/或目标210的特性。
图3A是被配置为使用光分布来确定场景306中的对象306A和306B的深度的示例深度成像系统300的描绘。深度成像系统300可用于生成场景306的深度图(未描绘)。例如,场景306可以包括对象(例如,面部),并且深度成像系统300可以用于生成包括多个深度值的深度图,该多个深度值指示用于识别或认证对象(例如,用于面部认证)的对象的部分的深度。深度成像系统300包括投影仪302和接收器308。投影仪302可以被称为“结构化光源”、“发送器”、“发射器”、“光源”或其他类似术语,并且不应限于特定的传输组件。在整个以下公开内容中,术语投影仪、发射器和光源可以互换使用。接收器308可以被称为“检测器”、“传感器”、“感测元件”、“光电检测器”等,并且不应限于特定的接收组件。
投影仪302可以被配置为将光点的分布304投影或传输到场景306上。分布304中的白色圆圈指示对于可能的点位置没有投影光的位置,并且分布304中的黑色圆圈指示对于可能的点位置投影光的位置。本发明可将分布304称作码字分布或图案,其中分布304的经定义部分为码字(也被称作码或特征)。如本文中所使用,码字是光分布304的矩形(例如正方形)部分。举例来说,在分布304中说明5×5码字340。如图所示,码字340包括五行可能的光点和五列可能的光点。分布304可经配置以包含码字阵列。对于主动深度感测,码字可在分布304中彼此唯一。例如,码字340不同于分布304中的所有其他码字。此外,唯一码字相对于彼此的位置是已知的。以此方式,分布中的一个或多个码字可在反射中识别,且所识别码字相对于彼此的位置、所识别码字相对于所发送码字的形状的形状或失真以及所识别码字在接收器传感器上的位置用于确定对象在场景中反射码字的深度。
投影仪302包括一个或多个光源324(诸如一个或多个激光器)。在一些实施方式中,一个或多个光源324包括激光器阵列。在一个说明性示例中,每个激光器可以是垂直腔表面发射激光器(VCSEL)。在另一说明性实例中,每一激光器可包含分布反馈(DFB)激光器。在另一说明性示例中,一个或多个光源324可以包括谐振腔发光二极管(RC-LED)阵列。在一些实施方式中,投影仪还可以包括透镜326和光调制器328。投影仪302还可以包括孔径322,透射光从该孔径322逸出的投影仪302。在一些实施方式中,投影仪302还可以包括衍射光学元件(DOE),以将来自一个或多个光源324的发射衍射成附加发射。在一些方面,光调制器328(用于调节发射的强度)可以包括DOE。在将光点的分布304投影到场景306上时,投影仪302可以将来自光源324的一个或多个激光发射通过透镜326(和/或通过DOE或光调制器328)并发射到场景306中的对象306A和306B上。投影仪302可以位于与接收器308相同的参考平面上,并且投影仪302和接收器308可以分开称为基线312的距离。
在一些示例实施方式中,由投影仪302投影的光可以是红外(IR)光。IR光可包括可见光谱的部分和/或肉眼不可见的光谱的部分。在一个示例中,IR光可以包括近红外(NIR)光,其可以包括或可以不包括可见光谱内的光,和/或在可见光谱之外的IR光(诸如远红外(FIR)光)。术语IR光不应限于具有在IR光的波长范围内或附近的特定波长的光。此外,提供IR光作为来自投影仪的示例发射。在以下描述中,可以使用其他合适波长的光。例如,可以使用可见光光谱的IR光波长范围以外的部分或紫外光。
场景306可包含距结构光系统(例如,距投影仪302及接收器308)不同深度处的对象。例如,场景306中的对象306A和306B可以处于不同的深度。接收器308可以被配置为从场景306接收所发送的光点分布304的反射310。为了接收反射310,接收器308可以捕获帧。当捕获帧时,接收器308可以接收反射310,以及(i)来自场景306的不同深度处的其他部分的光点的分布304的其他反射,以及(ii)环境光。噪声也可能存在于捕获中。
在一些示例实施方式中,接收器308可以包括透镜330,以将接收到的光(包括来自物体306A和306B的反射310)聚焦或引导到接收器308的传感器332上。接收器308还可以包括孔320。假设对于仅接收到反射310的示例,可以基于基线312、反射310中的光分布304的位移和失真(诸如在码字中)以及反射310的强度来确定物体306A和306B的深度。举例来说,沿着传感器332从位置316到中心314的距离334可用于确定对象306B在场景306中的深度。类似地,沿着传感器332从位置318到中心314的距离336可用于确定场景306中的对象306A的深度。沿着传感器332的距离可以根据传感器332的像素数量或距离单位(诸如毫米)来测量。
在一些实例实施方案中,传感器332可包含用于捕获帧的光电二极管(例如雪崩光电二极管)阵列。为了捕获帧,阵列中的每个光电二极管可以捕获撞击光电二极管的光,并且可以提供指示光强度的值(捕获值)。因此,帧可以是由光电二极管阵列提供的捕获值阵列。
作为包括光电二极管阵列的传感器332的补充或替代,传感器332可以包括互补金属氧化物半导体(CMOS)传感器。为了通过光敏CMOS传感器捕获图像,传感器的每个像素可以捕获撞击像素的光,并且可以提供指示光强度的值。在一些实例实施方案中,光电二极管阵列可耦合到CMOS传感器。以这种方式,由光电二极管阵列生成的电脉冲可以触发CMOS传感器的对应像素以提供捕获值。
传感器332可以包括等于分布304中的可能光点的数量的至少多个像素。例如,光电二极管阵列或CMOS传感器可以分别包括与分布304中的可能光点的数量相对应的至少多个光电二极管或多个像素。传感器332可在逻辑上划分成对应于码字的位的尺寸的像素或光电二极管的群组(例如4×4码字的4×4群组)。像素或光电二极管的群组也可被称为位,且来自传感器332的位的所捕获数据的部分也可被称为位。在一些示例实施方式中,传感器332可以包括至少与分布304相同数量的位。如果光源324透射IR光(诸如波长为例如940纳米(nm)的NIR光),则传感器332可以是IR传感器以接收NIR光的反射。
如图所示,距离334(对应于来自物体306B的反射310)小于距离336(对应于来自物体306A的反射310)。使用基于基线312和距离334和336的三角测量,可以在生成场景306的深度图时确定场景306中的对象306A和306B的不同深度。确定深度还可以基于反射310中的分布304的位移或失真。
在一些实施方式中,投影仪302被配置为投影固定的光分布,在这种情况下,在每个实例中使用相同的光分布用于主动深度感测。在一些实施方式中,投影仪302被配置为在不同时间投影不同的光分布。例如,投影仪302可以被配置为在第一时间投影第一光分布并且在第二时间投影第二光分布。因此,场景中的一个或多个对象的所得深度图基于第一光分布的一个或多个反射和第二光分布的一个或多个反射。光分布之间的码字可不同,且深度成像系统300可能够识别第二光分布中对应于第一光分布中无法识别码字的位置的码字。以此方式,可在生成深度图时生成更有效深度值而不降低深度图的分辨率(例如通过增加码字的尺寸)。
尽管在图3A中示出了多个单独的组件,但是这些组件中的一个或多个组件可以一起实现或者包括附加功能。深度成像系统300可能不需要所有描述的组件,或者组件的功能可以分成单独的组件。还可以存在未示出的附加组件。例如,接收器308可以包括带通滤波器,以允许具有确定波长范围的信号传递到传感器332上(从而滤除波长在该范围之外的信号)。以这种方式,可以防止一些附带信号(诸如环境光)在传感器332的捕获期间作为干扰被接收。带通滤波器的范围可以以投影仪302的透射波长为中心。例如,如果投影仪302被配置为透射波长为940nm的NIR光,则接收器308可以包括带通滤波器,该带通滤波器被配置为允许波长在例如920nm至960nm范围内的NIR光。因此,关于图3A描述的示例是出于说明性目的。
结构化光深度成像系统可以依赖于测量由图像传感器接收器(例如,接收器308)与(例如,通过投影仪,诸如投影仪302)投影到场景中的图案之间的视差引起的“视差”(像素沿一个轴的移位)。图3B是示出确定由图像传感器接收器358和图案投影仪352之间的视差引起的视差356的示例的图。一般来说,对象越靠近图像传感器接收器358,像素的移位(且因此视差356)越大。深度是点距接收器358的距离。深度与由视差356表示的偏移成反比。这种现象类似于立体视觉,其中将两个视图彼此进行比较(例如左眼和右眼)以推断深度。一个区别在于,在结构光的情况下,“视图”中的一个是已知的参考图案(投影)。
测量视差356的动作可以包括在图像传感器接收器358处识别投影图案的每个唯一部分(称为解码)。然后,考虑到无穷远处的视差为0,结构化光深度成像系统可以测量由于视差而沿着基线362(水平轴,其可以类似于图3A中的基线312)的感知偏移。在一些情况下,所投影的图案在结构化光深度成像系统的视场(FoV)上可能不是唯一的,在这种情况下,视差测量将环绕。这确定了结构化光深度成像系统可以推断的最近距离(例如,距离354)。在一些情况下,与结构化光深度成像系统相关的唯一性是沿着基线的唯一性,在这种情况下,投影图案可以在正交(垂直)方向上以一些小余量重复,而不会干扰上述测量。
结构光投影仪可以采用许多形式,具有各种类型的投影图案。如上所述,结构光投影仪的示例是垂直腔表面发射激光器(VCSEL)阵列,其发射开或关激光点的编码图案。如上所述,通过使用衍射光学元件(DOE),可以将VCSEL阵列的图元图案光学复制(或镶嵌)到投影场景中,形成M×N个图块。图3C中示出了由DOE复制的投影VCSEL图元的示例。VCSEL阵列图元370被示出在由框突出显示的中间(0阶(order))。每个蓝色点表示VCSEL激光点。在图3C的示例中,图元370阵列被复制成衍射阶+8/-8x+3/-3图块或17x7,示出为各种图块(例如,图块372)。复制由放置在VCSEL阵列前面的DOE执行。例如,如图3D所示,DOE 386放置在VCSEL阵列382和透镜384的前面。
图4是示出用于混合模式深度成像的深度成像系统400的示例的框图。在一些示例中,深度成像系统400可以由图1的深度成像系统100和/或图3A的深度成像系统300的全部或一部分实现和/或包括图1的深度成像系统100和/或图3A的深度成像系统300的全部或一部分。例如,深度成像系统400可以包括结构化光系统402,其包括结构化光源404。在一个示例中,结构化光源404可以对应于深度成像系统300的投影仪302。在说明性示例中,结构化光源404可以包括VCSEL阵列和被配置为衍射和投影由VCSEL阵列发射的光的DOE。如图所示,结构化光源404可以被配置为发射光图案412(例如,对应于由投影仪302发射的分布304)。例如,结构化光源404可以投影图案412以照亮场景。在一些情况下,图案412可以对应于结构化光源404镶嵌(例如,重复)的图元图案。在一个实例中,图元图案可包含各自对应于两个或多于两个光点的多个唯一可识别特征(例如,码字)。每个光点可以对应于两个或更多个像素(例如,当由深度成像系统400的ToF传感器410捕获时)。在一个示例中,ToF传感器410可以对应于深度成像系统100的图像传感器104。在一些情况下,ToF传感器410可以被配置为接收、捕获和/或处理入射光。例如,ToF传感器410可以捕获图案反射414,其对应于被反射和/或返回到ToF传感器410的图案412的光。在一个示例中,ToF传感器410可以生成对应于图案反射414的一个或多个帧418。如下面将更详细解释的,深度成像系统400的处理器420可以处理和/或分析帧418以生成由图案412照明的场景的深度图416。
在一些情况下,深度成像系统400可以包括ToF深度成像系统(诸如深度成像系统100)和/或结构化光深度成像系统(诸如深度成像系统300)的全部功能。例如,尽管未在图4中示出,但是深度成像系统400可以包括被配置用于泛光照明的投影仪(例如,以促进常规的ToF距离测量)。然而,在一些情况下,深度成像系统400可以使用单个光源(例如,结构化光源404)和单个图像传感器(例如,ToF传感器410)来执行混合模式深度成像,在这种情况下,系统400中不使用或不包括用于泛光照明的投影仪。例如,深度成像系统400可以确定与图案412的光点相对应的像素的ToF距离测量(而不是确定帧418的每个像素的ToF距离测量)。
在一个示例中,深度成像系统400可以执行涉及两个阶段的混合模式深度成像过程。可以对对应于帧418的光点的像素的全部或一部分执行该过程。在一些情况下,该过程的第一阶段可以包括确定与像素相关联的ToF距离测量。ToF距离测量可以表示估计的和/或未细化的距离测量。该过程的第二阶段可以包括使用ToF距离测量来确定图元的搜索空间并在图元的搜索空间内进行搜索。例如,搜索空间可以对应于图元的子集(例如,来自图元中的唯一可识别特征的集合的特征的子集),在这种情况下,对应于帧418的像素的“特征”被定位(例如,预期和/或可能被定位)。如本文所使用的,“搜索”图元的搜索空间可以包括将围绕帧的像素的区域内的图像数据与图元的搜索空间内具有相同尺寸或减小尺寸的区域内的图像数据进行比较。例如,在如上所述的一些情况下,图元中的点可以占据捕获帧中的一定数量的像素(例如,一个点可以占据帧中的4×4像素)。在一个点占据4×4像素的这种示例中,可以从捕获的帧中搜索图元的4×4区域以获得16×16像素布置。一旦深度成像系统400识别对应于帧的区域的图元的区域,深度成像系统400就可以确定与帧像素相关联的结构化光距离测量(例如,基于帧的区域和图元的区域之间的位移)。在一些情况下,结构化光距离测量可以表示精确和/或细化的距离测量。深度成像系统400可以将结构化光距离测量合并到深度图416中。
深度成像系统400可以使用各种类型的ToF感测过程和/或技术来确定ToF距离测量。在说明性示例中,深度成像系统400可以实现基于振幅的ToF过程,其涉及确定与帧的两次或更多次曝光(本文中称为“帧曝光”)内的一个像素相对应的光振幅之间的比率。距离基于第二图像的第二曝光相对于第一图像的第一曝光延迟(例如,两次曝光的亮度之间的比率与距离成比例)。在一些情况下,使用不同水平的照明(例如,不同水平的光强度)来生成帧曝光。举例来说,结构光系统402可通过以具有特定持续时间t的光照明的第一照明水平投影图案412(例如,使用结构化光源404)而生成具有第一曝光的第一帧F1。第一帧F1对应于在该持续时间t期间由ToF传感器410测量的光。结构光系统402接着可通过测量在t与2t之间的持续时间内到达传感器的光而生成具有第二曝光的第二帧F2。与一个像素相关联的ToF距离测量可以对应于与两个帧曝光中的像素相关联的光振幅的比率F1/(F1+F2)。在一些实施例中,可以在没有任何照明的情况下测量第三帧F3,以捕获由于外部光源(诸如光或太阳)引起的背景照明。ToF距离最终可以测量为(F1-F3)/(F1+F2-2F3)*c*t,其中c是光速。
图5A示出了与由传统的基于振幅的ToF系统(例如,使用泛光灯照明的ToF系统)生成的帧曝光的示例相对应的第一帧502和第二帧504。在此实例中,第一帧502具有对应于高亮度水平的第一帧曝光,且第二帧504具有对应于低亮度水平的第二帧曝光。如图所示,第一帧502和第二帧504的每个像素对应于反射光(例如,由于使用泛光灯照明生成帧曝光)。基于传播通过场景的相同光脉冲,第一帧502和第二帧504的两次曝光具有相同持续时间。两次曝光在时间上一个接一个地分开。使帧502和504看起来具有不同亮度的原因是传感器针对帧502和504中的每一个捕获了多少返回光。第一帧502的第一曝光(例如,对应于上述持续时间t)几乎在发射光脉冲之后立即开始。如果附近没有物体将光反射回来,则曝光将看起来很暗,因为持续时间足够短以避免感测到从远处物体返回的光。第二帧504的第二曝光被延迟(例如,对应于上述t和2t之间的持续时间),传感器将能够捕获从远处物体返回的光,这就是为什么两次曝光的亮度之间的比率与距离成比例的原因。
图5B示出了具有第一曝光的第一帧506和具有第二曝光的第二帧508,其对应于由深度成像系统400生成的帧曝光的示例。例如,深度成像系统400可以通过使用不同水平的照明投影图案412来生成具有第一曝光的第一帧506和具有第二曝光的第二帧508。在此实例中,第一帧506的第一曝光具有对应于高亮度水平的第一帧曝光,且第二帧508的第二曝光具有对应于低亮度水平的第二帧曝光。在一些情况下,第一帧506和第二帧508的两次曝光具有相同持续时间,类似于上文关于图5A所描述的持续时间。例如,结构光系统402可以具有用于ToF和结构光的一个获取事件(例如,ToF传感器410基于投影图案捕获帧)。对于ToF,结构光系统402可以应用上述比率公式(例如,F1/(F1+F2)or(F1-F3)/(F1+F2-2F3)*c*t)。为了计算结构化光深度,结构化光系统402可将帧506及508的两次曝光相加在一起,因此恢复所投影图案的大部分或全部光。结构光系统402可在由ToF深度界定的搜索空间引导下对具有组合曝光的帧执行基于结构光图案匹配。
如图5B所示,第一帧506和第二帧508中所示的光点对应于图案412。举例来说,因为图案412包含多个码字(例如,由多个光点组成的唯一可识别特征),所以第一帧506和第二帧508的像素的一部分不与反射光(例如,对应于图案反射414的光)相关联。因此,在一些情况下,ToF距离测量可能不可用于与反射光不相关联的像素。图5C示出了可以基于具有第一曝光的第一帧506和具有第二曝光的第二帧508生成的示例深度图510。在该示例中,与具有较亮阴影的对象相比,具有较暗阴影的对象与较短的深度相关联。
图6A和图6B示出了使用ToF距离测量来确定和搜索图元的搜索空间的示例。举例来说,图6A展示帧618(例如,对应于图4的帧418)内的像素602。在一个示例中,深度成像系统400可以基于将图元606镶嵌并投影到空间中并在传感器处(例如,在ToF传感器410处)接收反射光来生成帧618。在这样的示例中,由像素602和帧618中的一个或多个其他像素定义的特征与图元606的光点相关联。深度成像系统400可以确定对应于像素602的ToF距离测量。深度成像系统400可以使用ToF距离测量来确定图元606内的特征(例如,特征616),该特征对应于由像素602和帧618中的一个或多个其他像素定义的特征。例如,深度成像系统400可以使用ToF距离测量来确定图元606的搜索空间608,图元606内的对应于像素602的特征616可能和/或预期位于该搜索空间608中。
在一些情况下,结构化光深度成像系统可以基于确定围绕帧像素的区域(例如,像素块)并搜索对应区域的图元来确定图元特征对应于帧像素。在一个实例中,对应区域可为包含对应于帧像素周围的像素区域的特征(或码字)的区域。因此,区域可以具有任何合适的尺寸,使得区域包括一个或多个特征(或码字)。在说明性实例中,图元的区域可包含对应于涵盖帧像素的16×16像素块的4×4点布置(构成特征或码字)。在其它实例中,所述区域可对应于4×4像素块、8×8像素块、8×16像素块等。在一些情况下,结构化光深度成像系统可以通过将图元的区域中的图元数据(例如,特征或码字)与帧的区域中的图像数据进行比较来确定图元的区域是否对应于帧的区域。举例来说,结构化光深度成像系统可基于确定区域内的数据超过相似性阈值而确定图元的区域(例如,包含4×4点布置的特征或码字)对应于帧的区域(例如,16×16像素区域)。在另一示例中,结构化光深度成像系统可以基于确定图元的区域与帧的区域最相似(例如,在整个图元内)来确定图元的区域对应于帧的区域。在说明性实例中,结构化光深度成像系统可基于卷积运算确定图元的区域的图元数据与帧的区域的图像数据之间的相似性,如下文所描述。用于确定两个区域的数据之间的相似性的其他技术包括块匹配技术、归一化互相关技术、匹配滤波器技术以及其他技术。
在一些实例中,常规结构化光深度成像系统(例如,不并入ToF技术的结构化光深度成像系统)可基于搜索图元的整体而确定图元内对应于由帧像素定义的特征的特征(或码字)。例如,给定帧的具有特定尺寸的区域,常规结构化光深度成像系统可以将帧的区域与图元内的每个不同区域(相同尺寸)进行比较。在一些情况下,可能需要搜索整个图元以获得准确的距离测量(例如,以识别正确的对应区域)。相反,所公开的混合模式深度成像系统和技术可以使用初始ToF距离测量来确定作为图元的子集的搜索空间。例如,深度成像系统400可以识别搜索空间内的图元的对应点(而不搜索搜索空间外的图元的区域)。以这种方式,深度成像系统400可以实现结合ToF技术和结构光技术两者的混合模式深度成像过程。因为确定ToF距离测量可以涉及比搜索整个图元显著更少的时间和/或处理能力,所以混合模式深度成像过程可以提高常规结构化光系统的效率(同时保持相同的准确度和/或精度)。
返回到图6B,深度成像系统400可以基于与像素602相关联的ToF距离测量来确定搜索空间608。在一些情况下,搜索空间608可以至少部分地由偏移620定义。如图所示,偏移620在搜索空间608的中心垂直轴与点614之间延伸。在一些情况下,如图6B中所展示,基于发射器(例如,结构化光源404)及传感器(例如,ToF传感器410)放置于同一水平面上(在此情况下,视差应仅引起水平位移),点614及特征616的中心在同一行上(在水平面中对准)。点614位于图元606中对应于帧618内的像素602的位置的位置处。因此,偏移620可以用于定义图元606内的搜索空间608的水平位置。在一些情况下,偏移620可表示像素602与特征616之间的位移(也称为视差)的估计(参见图3A、图3B,以及如结构化光系统中所使用的位移的进一步论述的对应描述)。在一个示例中,深度成像系统400可以基于与像素602相关联的ToF距离测量来确定偏移620的振幅。例如,偏移620的尺寸可以与ToF距离测量成反比。在结构光系统中,场景内的附近对象与比远处对象更高的位移相关联。因此,深度成像系统400可以确定与低ToF距离测量相关联的像素的相对高的偏移值,并且确定与高ToF距离测量相关联的像素的相对低的偏移值。例如,结构化光距离(SL距离)可以被确定为:位移也被称为视差,并且可以以像素单位表示。如上所述,偏移620是位移(或视差)的示例。基线的示例被示出为图3A中的基线312和图3B中的基线362。上文关于图3B描述基于位移(或视差或偏移)确定深度的实例。
如图6B所示,搜索空间608还可以至少部分地由模糊度水平610定义。在一些情况下,模糊度水平610可以对应于ToF距离测量的模糊度水平。例如,如上所述,ToF传感器可能具有降低ToF距离测量精度的固有限制。虽然ToF深度成像系统可以比结构化光深度成像系统更快和/或生成更高分辨率的深度图,但是ToF距离测量通常可能不如结构化光距离测量准确。因此,深度成像系统400可以基于与使用ToF系统408确定的ToF距离测量相关联的预期误差量来确定模糊度水平610。例如,深度成像系统400可以确定ToF系统408预期在一定范围的距离测量和/或一定范围的误差(其可以被称为误差容限)内准确地计算ToF距离测量。在一些情况下,可以使误差容限恒定(例如,基于ToF采集系统(诸如图4的ToF传感器410)的固有特性)。在说明性示例中,深度成像系统400可以确定由ToF系统408确定的距离测量预期具有0.78%的误差容限或范围(例如,正确的距离测量结果预期在所确定的距离测量的±0.78%内)。在该示例中,深度成像系统400可以基于0.78%的误差容限来确定模糊度水平610的振幅。通常,深度成像系统400可以确定与高误差容限相关联的ToF距离测量的高模糊度水平,以及与低误差容限相关联的ToF距离测量的低模糊度水平。在一些示例中,模糊度水平610可以基于自动曝光来确定。例如,光子噪声(也称为散粒噪声)是场景相关的,户外使其更糟,在这种情况下,模糊度水平610可以与自动曝光相关联。
如图所示,模糊度水平610可以用于定义搜索空间608的宽度(如图6B所示)。在一些情况下,搜索空间608的高度可对应于图元606的高度。在其它情况下,搜索空间608的高度可小于图元606的高度(例如,图元606的高度的一半、图元606的高度的三分之一等)。在说明性示例中,图元606可以具有64个点的高度和124个点的宽度,区域612可以具有16个点的高度和16个点的宽度,并且搜索空间608可以具有64个点的高度和20个点的宽度(例如,如由模糊度水平610定义的)。深度成像系统400可以基于图元606的尺寸、偏移620的尺寸和/或模糊度水平610的尺寸来确定任何合适尺寸的搜索空间。
在定义搜索空间608之后,深度成像系统400可以搜索搜索空间608以识别包括对应特征616的特征。例如,图6B解说了搜索空间608内的第一位置处的区域612。深度成像系统400可以确定(例如,基于卷积运算)与第一位置处的区域612内的点相关联的图元数据是否对应于区域604内的图像数据。在一个示例中,如果深度成像系统400确定区域612内的图元数据对应于区域604内的图像数据,则深度成像系统400可以确定区域612内的特征对应于像素602。例如,深度成像系统400可以确定对应特征(例如,特征616)在区域612内的位置处,该位置对应于区域604内的像素602的位置。然后,深度成像系统400可以基于确定点614和特征616之间的位移来确定与像素602相关联的结构化光距离测量。在其他示例中,如果深度成像系统400确定区域612内的图元数据不对应于区域604内的图像数据,则深度成像系统400可以将区域612移动到搜索空间608内的第二位置。例如,深度成像系统400可以水平地或垂直地(例如,如图6B中所示向上或向下)“滑动”区域612一个点或特征。然后,深度成像系统400可以将第二位置处的区域612内的图元数据与区域604的图像数据进行比较。在一些示例中,深度成像系统400可以继续分析搜索空间608内的各个位置处的图元数据的该过程,直到识别出对应于像素602的图元606中的特征(或者直到分析区域612的每个可能位置)。使用这样的技术,深度成像系统400可以识别对应于像素602的图元606中的特征,而不分析搜索空间608外部的图元606的数据。举例来说,当执行本文中所描述的混合模式技术时,分析搜索空间608外部的图元数据可为不必要的。
在一些情况下,深度成像系统400可以将与像素602相关联的结构化光距离测量合并到深度图416中。此外,深度成像系统400可以基于与图案412的光点相关联的帧618的附加像素的全部或一部分的初始ToF距离测量来重复确定结构化光距离测量的过程。通过使用ToF距离测量作为结构光解码的“指导”,所公开的深度成像系统可以在不牺牲准确度的情况下提高结构光解码的效率。
所公开的混合模式深度成像系统可以实现一种或多种技术和/或过程以进一步改善所生成的深度图的质量。在一个示例中,使用结构化光源来获得ToF距离测量可以提高ToF距离测量的准确度。例如,由结构化光源(诸如深度成像系统400的结构化光源404)投影的光点通常可以具有比由常规ToF系统使用的泛光灯照明更大的强度。因为图案412包括暗区域(例如,与光点不相关联的区域),所以光点可以由更聚焦和/或集中的光信号组成。因此,帧418中的光信号可以具有比由常规ToF系统捕获的光更大的信噪比(SNR)。更大的SNR可以实现更精确的ToF距离测量。
此外,在一些示例中,深度成像系统400可以减少帧418中的多径干扰(MPI)和/或环境光的影响。例如,当发射的光信号通过两个或更多个不同的路径返回到传感器时,可能发生MPI,这可能模糊在被单个对象反射之后返回到传感器的发射的光信号。环境光信号是模糊的另一来源。在一些情况下,深度成像系统400可以确定(并且然后消除或减少)帧418内的MPI信号和/或环境光信号。为了确定环境光信号,深度成像系统400可以在不投影来自结构化光源404的光的情况下捕获帧曝光。该帧曝光可以表示第三帧曝光(除了对应于低照明水平和高照明水平的帧曝光之外,如图5A和图5B所示)。在一些情况下,深度成像系统400可以在基于其他两次曝光确定ToF距离测量之前,从其他两次曝光中的光信号中减去第三帧曝光中的光信号。以这种方式,深度成像系统400可以消除或减少来自ToF距离测量内的环境光信号的噪声。
此外,在一些示例中,对应于低照明水平和高照明水平的帧曝光内的MPI信号的振幅可以不同。例如,高水平的照明可以不成比例地将MPI信号引入到帧曝光中(例如,相对于由低水平的照明引入的MPI信号)。因为深度成像系统400可以被配置为基于两个帧曝光内的光振幅的比率来确定ToF距离测量,所以消除或减少两个帧曝光内的MPI信号可以是有益的。在一个示例中,深度成像系统400可以通过确定与图案412的亮点不相关联的帧曝光的区域(被称为图案412的暗区域)内的光信号来消除或减少帧曝光内的MPI信号。然后,深度成像系统400可以从帧曝光的其他区域中减去所确定的光信号,导致减去估计的MPI。图7A图示了包括MPI信号的示例帧曝光702。在该示例中,深度成像系统400已经从帧曝光中减去环境光信号。因此,图案区域704(例如,与图案412的光点不相关联的帧曝光702的暗区域)内的光信号对应于MPI信号(而不是其他光信号)。深度成像系统400可以确定图案区域704内的光信号的振幅(例如,平均振幅),并且可以减去来自帧曝光702的其他区域的光信号的振幅。例如,深度成像系统400可以从帧曝光702的光点的全部或一部分中减去光信号。图7B图示了与在深度成像系统400通过从帧曝光702中减去MPI来消除或减少来自帧曝光702的MPI信号之后的帧曝光702相对应的帧曝光706。如图所示,帧曝光706的光点比帧曝光702内的光点更定义(例如,噪声更少)。在一些情况下,减少或消除来自帧曝光的MPI信号和/或环境光信号可以提高ToF距离测量和/或结构光距离测量的准确度。
在一些情况下,深度成像系统400可以执行一个或多个附加或替代操作以减少帧418内的噪声。例如,帧418内的光点的光振幅可以通过高斯函数(例如,高斯钟形曲线(Gaussian bell curve))或类似函数来描述和/或近似。在一些情况下,捕获的光信号内的噪声可能导致光振幅偏离理想的高斯函数。图8说明展示对应于所捕获光信号的振幅的所捕获振幅806的实例曲线图802。曲线图802还示出了基于将捕获的振幅806拟合到高斯函数而生成的理想振幅804。在一些情况下,深度成像系统400可以在确定与信号相关联的ToF距离测量之前将帧418的捕获的光信号的全部或一部分拟合到理想高斯函数。此外,在一个示例中,深度成像系统400可以确定对应于与帧418相关联的各种码字的函数。例如,深度成像系统400可以使用码字的模式作为用于去噪的信号。在一些情况下,将所捕获光信号拟合到对应于码字的函数(其可为理想函数)可进一步减少帧418内的噪声。将光信号拟合到函数(例如,理想函数)的这些过程可以改善ToF距离测量的噪声特性,这可以导致与ToF距离测量相关联的较小模糊度水平(并且因此导致用于结构光解码的较小搜索空间)。
图9A说明深度图902的实例,且图9B说明深度图904的实例。深度图902和904展示了所公开的混合模式深度成像系统的优点。举例来说,深度图902和904表示在各种环境光条件下生成的混合模式深度图、ToF深度图和结构化光深度图。环境光的条件包括理想条件(例如,没有环境光)、10,000流明的环境光、50,000流明的环境光和100,000流明的环境光。如图所示,在每种环境光条件下生成的混合模式深度图通常比ToF深度图和结构化光深度图具有更高的质量(例如,更准确)。
图10为说明使用本文中所描述的技术生成一个或多个深度图的过程1000的实例的流程图。在框1002处,过程1000包括获得包括基于由结构化光源发射的光图案(例如,由结构化光源404发射的光图案412)生成的光的反射图案的帧。光图案是基于包含唯一可识别特征(或码字)集合的图元,如本文中所描述。在一些方面中,由结构化光源发射的光图案包含多个光点(例如,对应于图元图案)。在一些方面,图元的唯一可识别特征集合内的特征包括多个光点中的两个或更多个光点。在一些情况下,图元的光点对应于帧的两个或更多个像素。例如,每个光点(或点)可以对应于帧的像素的4×4、8×8的布置或其他布置。在一些示例中,结构化光源被配置为使用衍射光学元件发射光图案,该衍射光学元件同时投影对应于图元的多个光图案(有效地重复图元,诸如图3C所示的图元)。
在框1004处,过程1000包括使用飞行时间(ToF)传感器(例如,ToF传感器410)确定与帧的像素相关联的第一距离测量。在一个说明性示例中,第一距离测量可以包括上面关于图6A描述的ToF距离测量。在一些方面中,过程1000包含获得与第一照明水平(例如,第一亮度)相关联的帧的第一曝光,以及获得与不同于第一照明水平的第二照明水平(例如,第二亮度)相关联的帧的第二曝光。如上文所描述,基于传感器针对帧中的每一者捕获多少返回光(例如,基于光从多远的对象反射),第一照明水平(或亮度)可不同于第二照明水平(或亮度)。过程1000可以包括至少部分地基于与第一曝光中的像素相关联的第一光振幅和与第二曝光中的像素相关联的第二光振幅之间的比较来确定与帧的像素相关联的第一距离测量。在一些方面中,过程1000包含在确定与帧的像素相关联的第一距离测量之前将函数拟合到对应于帧的像素的光信号。将函数拟合到光信号可以改善ToF距离测量的噪声特性,这可以导致与ToF距离测量相关联的较小模糊度水平。较小模糊度水平可以导致用于结构光解码的较小搜索空间,这可以允许图元内的更有效的特征识别。
在框1006处,过程1000包含至少部分地基于第一距离测量确定图元内的搜索空间。搜索空间包括来自图元的唯一可识别特征的集合的特征的子集。例如,搜索空间可以包括图6B中所示的搜索空间608。在一些情况下,第一距离测量包括距离测量范围。过程1000可以包括至少部分地基于距离测量的范围来确定图元内的搜索空间的尺寸。例如,大范围的距离测量可以与大尺寸的搜索空间相关联。在一些情况下,过程1000可以包括至少部分地基于与ToF传感器相关联的模糊度水平(例如,图6B中所示的模糊度水平610)来确定距离测量的范围。例如,高模糊度水平与大距离测量范围相关联。
在一些方面中,过程1000包含至少部分地基于第一距离测量确定帧的像素的第一位置与图元的特征的第二位置之间的偏移。在一个说明性示例中,偏移可以包括图6B中所示的偏移620。在一些情况下,偏移与第一距离测量成反比。过程1000可包含至少部分地基于偏移确定图元内的搜索空间。在一些情况下,过程1000包含将图元内的搜索空间的中心轴设置为图元的特征的第二位置。
过程1000可以包括搜索图元内的搜索空间。在框1008处,过程1000包含基于搜索图元内的搜索空间来确定对应于帧的像素周围的区域的图元的特征。在一个说明性示例中,每个特征包括4×4布置的点,并且每个点对应于4×4布置的像素,导致当每个点占据4×4像素时,特征在捕获的帧中占据16×16像素。在这样的示例中,帧的像素周围的区域可以包括帧的像素周围的16×16像素区域,并且可以在4×4点的基础上搜索图元(从而搜索图元中的每个特征)。
在框1010处,过程1000包含至少部分地基于从图元内的搜索空间确定图元的特征来确定与帧的像素相关联的第二距离测量。在一些情况下,第二距离测量可以包括视差值(例如,图3B中所示的视差356)。在框1012处,过程1000包含至少部分地基于第二距离测量生成深度图。例如,如上所述,深度与由视差(或第二距离测量)表示的偏移成反比。
在一些示例中,帧的像素周围的区域具有预定尺寸。在一些情况下,过程1000包括确定具有预定尺寸的帧的像素周围的区域。过程1000可以包括确定具有预定尺寸的图元内的搜索空间的第一区域。过程1000可以通过确定帧的像素周围的区域内的图像数据是否对应于搜索空间的第一区域内的图像数据(例如,图元的点)来搜索第一区域。过程1000可以包括确定帧的像素周围的区域内的图像数据对应于搜索空间的第一区域内的图像数据。在这种情况下,过程1000可以包括至少部分地基于确定帧的像素与搜索空间的第一区域的对应特征之间的距离来确定第二距离测量。在一些情况下,过程1000可以包括确定帧的像素周围的区域内的图像数据不对应于图元内的搜索空间的第一区域内的图像数据。在这种情况下,过程1000可以包括确定搜索空间的第二区域。例如,如上面关于图6B所描述的,深度成像系统400可以水平地或垂直地(例如,如图6B中所示的向上或向下)“滑动”区域612一个点或特征。搜索空间的第二区域也具有预定尺寸。过程1000可以包括确定帧的像素周围的区域内的图像数据是否对应于搜索空间的第二区域内的图像数据。
在一些方面中,过程1000可包含在结构化光源不发射基于图元的光图案时获得额外帧。过程1000可以包括至少部分地基于附加帧来确定环境光信号。过程1000可以包括在确定与帧的像素相关联的第一距离测量之前从帧中减去环境光信号。在一些情况下,过程1000可以包括在从帧中减去环境光信号之后使用帧来确定与多径干扰相对应的光信号。过程1000可以包括在确定与帧的像素相关联的第一距离测量之前从帧中减去对应于多径干扰的光信号。在一些情况下,这些方面可以用于减少一个或多个帧中的多径干扰(MPI)和/或环境光的影响,如上所述。
在一些示例中,本文描述的过程(例如,过程1000和/或本文描述的其他过程)可以由计算设备或装置执行。在一些示例中,过程1000可以由图1的深度成像系统100、图4的深度成像系统400和/或图11的计算系统1100执行。在一个示例中,过程1000可以由具有图11所示的计算系统1100的架构的计算设备或系统执行。例如,具有图11的计算系统1100的架构的计算设备可以包括图1的深度成像系统100的组件和/或图4的深度成像系统400的组件,并且可以实现图10的操作。
计算设备可以包括任何合适的设备,诸如移动设备(例如,移动电话)、台式计算设备、平板计算设备、可穿戴设备(例如,VR头戴式耳机、AR头戴式耳机、AR眼镜、网络连接手表或智能手表或其他可穿戴设备)、服务器计算机、车辆或车辆的计算组件或设备、机器人设备、电视和/或具有执行本文描述的过程(包括过程1000)的资源能力的任何其他计算设备。在一些情况下,计算设备或装置可以包括各种部件,诸如一个或多个输入设备、一个或多个输出设备、一个或多个处理器、一个或多个微处理器、一个或多个微计算机、一个或多个相机、一个或多个传感器和/或被配置为执行本文描述的过程的步骤的其他部件。在一些示例中,计算设备可以包括显示器、被配置为传送和/或接收数据的网络接口、其任何组合和/或其他部件。网络接口可以被配置为传送和/或接收基于互联网协议(IP)的数据或其他类型的数据。
计算设备的组件可以在电路中实现。例如,组件可以包括电子电路或其他电子硬件和/或可以使用电子电路或其他电子硬件来实现,电子电路或其他电子硬件可以包括一个或多个可编程电子电路(例如,微处理器、图形处理单元(GPU)数字信号处理器(DSP)中央处理单元(CPU)和/或其他合适的电子电路),和/或可以包括计算机软件、固件或其任何组合和/或使用计算机软件、固件或其任何组合来实现,以执行本文描述的各种操作。
过程1000被示出为逻辑流程图,其操作表示可以在硬件、计算机指令或其组合中实现的一系列操作。在计算机指令的上下文中,操作表示存储在一个或多个计算机可读存储介质上的计算机可执行指令,当由一个或多个处理器执行时,执行所述操作。通常,计算机可执行指令包括执行特定功能或实现特定数据类型的例程、程序、对象、组件、数据结构等。描述操作的顺序不旨在被解释为限制,并且任何数量的所描述的操作可以以任何顺序和/或并行地组合以实现过程。
另外,本文描述的过程1000和/或其他过程可以在配置有可执行指令的一个或多个计算机系统的控制下执行,并且可以实现为在一个或多个处理器上、通过硬件或其组合共同执行的代码(例如,可执行指令、一个或多个计算机程序或一个或多个应用程序)。如上所述,代码可以例如以包括可由一个或多个处理器执行的多个指令的计算机程序的形式存储在计算机可读或机器可读存储介质上。计算机可读或机器可读存储介质可以是非暂时性的。
图11是示出用于实现本技术的某些方面的系统的示例的图。特别地,图11示出了计算系统1100的示例,其可以是例如构成内部计算系统、远程计算系统、相机或其任何组件的任何计算设备,其中系统的组件使用连接1105彼此通信。连接1105可以是使用总线的物理连接,或者是到处理器1110中的直接连接,诸如在芯片组架构中。连接1105还可以是虚拟连接、联网连接或逻辑连接。
在一些实施例中,计算系统1100是分布式系统,其中本公开中描述的功能可以分布在数据中心、多个数据中心、对等网络等内。在一些实施例中,所描述的系统组件中的一个或多个表示许多这样的组件,每个组件执行针对其描述组件的功能中的一些或全部。在一些实施例中,组件可以是物理或虚拟设备。
示例系统1100包括至少一个处理单元(CPU或处理器)1110和连接1105,连接1105将包括系统存储器1115(诸如只读存储器(ROM)1120和随机存取存储器(RAM)1125)的各种系统组件耦合到处理器1110。计算系统1100可以包括与处理器1110直接连接、紧邻处理器1110或集成为处理器1110的一部分的高速存储器的高速缓存1112。
处理器1110可以包括任何通用处理器和硬件服务或软件服务,诸如存储在存储设备1130中的服务1132、1134和1136,其被配置为控制处理器1110以及专用处理器,其中软件指令被并入到实际处理器设计中。处理器1110可以基本上是完全独立的计算系统,其包含多个核或处理器、总线、存储器控制器、高速缓存等。多核处理器可以是对称的或不对称的。
为了实现用户交互,计算系统1100包括输入设备1145,其可以表示任何数量的输入机构,诸如用于语音的麦克风、用于手势或图形输入的触敏屏幕、键盘、鼠标、运动输入、语音等。计算系统1100还可以包括输出设备1135,其可以是多个输出机构中的一个或多个。在一些实例中,多模态系统可以使用户能够提供多种类型的输入/输出以与计算系统1100通信。计算系统1100可以包括通信接口1140,其通常可以支配和管理用户输入和系统输出。通信接口可以使用有线和/或无线收发器来执行或促进接收和/或传输有线或无线通信,包括利用音频插座/插头、麦克风插座/插头、通用串行总线(USB)端口/插头、端口/插头、以太网端口/插头、光纤端口/插头、专有有线端口/插头、无线信号传输、低功耗(BLE)无线信号传输、无线信号传输、射频识别(RFID)无线信号传输、近场通信(NFC)无线信号传输、专用短程通信(DSRC)无线信号传输、802.11Wi-Fi无线信号传输、无线局域网(WLAN)信号传输、可见光通信(VLC)、全球微波接入互操作性(WiMAX)、红外(IR)通信无线信号传输。公共交换电话网(PSTN)信号传送在一些实施例中,所述无线信号传输可以是例如集成服务数字网络(ISDN)信号传输、3G/4G/5G/LTE蜂窝数据网络无线信号传输、ad-hoc网络信号传输、无线电波信号传输、微波信号传输、红外信号传输、可见光信号传输、紫外光信号传输、沿电磁频谱的无线信号传输或其某种组合。通信接口1140还可以包括一个或多个全球导航卫星系统(GNSS)接收器或收发器,其用于基于从与一个或多个GNSS系统相关联的一个或多个卫星接收到一个或多个信号来确定计算系统1100的位置。GNSS系统包括但不限于基于美国的全球定位系统(GPS)、基于俄罗斯的全球导航卫星系统(GLONASS)、基于中国的北斗导航卫星系统(BDS)和基于欧洲的伽利略GNSS。对在任何特定硬件布置上操作没有限制,并且因此这里的基本特征可以容易地在改进的硬件或固件布置被开发时替换为改进的硬件或固件布置。
存储设备1130可以是设备的非易失性和/或非暂时性和/或计算机可读存储器,并且可以是硬盘或可以存储可由计算机访问的数据的其他类型的计算机可读介质,诸如磁带盒、闪存卡、固态存储器设备、数字通用盘、盒式磁带、软盘、柔性盘、硬盘、磁带、磁条/磁条、任何其他磁存储介质、闪存、忆阻器存储器、任何其他固态存储器、光盘只读存储器(CD-ROM)光盘、可重写光盘(CD)光盘、数字视频盘(DVD)光盘、蓝光盘(BDD)光盘、全息光盘、另一种光学介质、安全数字(SD)卡、微安全数字(microSD)卡、记忆棒卡、智能卡芯片、EMV芯片、订户身份模块(SIM)卡、迷你/微/纳/微微SIM卡、另一集成电路(IC)芯片/卡、随机存取存储器(RAM)、静态RAM(SRAM)、动态RAM(DRAM)、只读存储器(ROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、闪存EPROM(FLASHEPROM)、高速缓冲存储器(L1/L2/L3/L4/L5/L#)、电阻随机存取存储器(RRAM/ReRAM)、相变存储器(PCM)、自旋转移扭矩RAM(STT-RAM)、另一存储器芯片或盒、和/或其组合。
存储设备1130可以包括软件服务、服务器、服务等,当定义这种软件的代码由处理器1110执行时,其使系统执行功能。在一些实施例中,执行特定功能的硬件服务可以包括存储在计算机可读介质中的与必要的硬件组件(诸如处理器1110、连接1105、输出设备1135等)相关联的软件组件,以执行该功能。
如本文中所使用,术语“计算机可读介质”包含(但不限于)便携式或非便携式存储装置、光学存储装置及能够存储、含有或携载指令及/或数据的各种其它介质。计算机可读介质可包含其中可存储数据且不包含无线地或经由有线连接传播的载波和/或暂时性电子信号的非暂时性介质。非暂时性介质的实例可包含(但不限于)磁盘或磁带、光学存储介质(例如光盘(CD)或数字多功能光盘(DVD))、快闪存储器、存储器或存储器装置。计算机可读介质可具有存储于其上的代码及/或机器可执行指令,所述代码及/或机器可执行指令可表示程序、函数、子程序、程序、例程、子例程、模块、软件包、类别,或指令、数据结构或程序语句的任何组合。代码段可通过传递和/或接收信息、数据、自变量、参数或存储器内容而耦合到另一代码段或硬件电路。可以使用包括存储器共享、消息传递、令牌传递、网络传输等的任何合适的手段来传递、转发或传输信息、自变量、参数、数据等。
在一些实施例中,计算机可读存储设备、介质和存储器可以包括包含位流等的电缆或无线信号。然而,当提到时,非暂时性计算机可读存储介质明确地排除诸如能量、载波信号、电磁波和信号本身之类的介质。
在上面的描述中提供了具体细节以提供对本文提供的实施例和示例的透彻理解。然而,本领域普通技术人员将理解,可以在没有这些具体细节的情况下实践实施例。为了清楚说明,在一些情况下,本技术可以被呈现为包括单独的功能块,其包括包含设备、设备组件、以软件或硬件和软件的组合体现的方法中的步骤或例程的功能块。除了在附图中示出和/或在本文中描述的那些组件之外,可以使用附加组件。例如,电路、系统、网络、过程和其他组件可以以框图形式示出为组件,以免不必要的细节模糊实施例。在其他实例中,可以在没有不必要的细节的情况下示出公知的电路、过程、算法、结构和技术,以避免模糊实施例。
以上可以将各个实施例描述为被描绘为流程图、流图、数据流图、结构图或框图的过程或方法。尽管流程图可以将操作描述为顺序过程,但是许多操作可以并行或同时执行。另外,可以重新排列操作的顺序。过程在其操作完成时终止,但是可以具有未包括在图中的附加步骤。过程可以对应于方法、函数、过程、子例程、子程序等。当进程对应于函数时,其终止可以对应于函数返回到调用函数或主函数。
根据上述示例的过程和方法可以使用存储在计算机可读介质中或以其他方式可从计算机可读介质获得的计算机可执行指令来实现。这样的指令可以包括例如使得或以其他方式配置通用计算机、专用计算机或处理设备以执行特定功能或功能组的指令和数据。所使用的计算机资源的部分可以通过网络访问。计算机可执行指令可以是例如二进制文件、诸如汇编语言的中间格式指令、固件、源代码等。可以用于存储指令、所使用的信息和/或在根据所描述的示例的方法期间创建的信息的计算机可读介质的示例包括磁盘或光盘、闪存、设置有非易失性存储器的USB设备、联网存储设备等。
实现根据这些公开的过程和方法的设备可以包括硬件、软件、固件、中间件、微代码、硬件描述语言或其任何组合,并且可以采用各种形状因子中的任何一种。当在软件、固件、中间件或微代码中实现时,用于执行必要任务的程序代码或代码段(例如,计算机程序产品)可以存储在计算机可读或机器可读介质中。(一个或多个)处理器可以执行必要的任务。形状因子的典型示例包括膝上型计算机、智能电话、移动电话、平板设备或其他小形状因子个人计算机、个人数字助理、机架式设备、独立设备等。本文描述的功能还可以体现在外围设备或附加卡中。作为另一示例,这样的功能也可以在电路板上在单个设备中执行的不同芯片或不同过程之间实现。
指令、用于运送此类指令的介质、用于执行它们的计算资源以及用于支持此类计算资源的其他结构是用于提供本公开中描述的功能的示例手段。
在前面的描述中,参考其具体实施例描述了本申请的各方面,但是本领域技术人员将认识到,本申请不限于此。因此,虽然本文已经详细描述了本申请的说明性实施例,但是应当理解,本发明构思可以以其他方式不同地实施和采用,并且所附权利要求旨在被解释为包括这样的变型,除了受现有技术的限制之外。上述申请的各种特征和方面可以单独地或联合地使用。此外,在不脱离本说明书的更广泛的精神和范围的情况下,可以在本文描述的环境和应用之外的任何数量的环境和应用中利用实施例。因此,说明书和附图被认为是说明性的而不是限制性的。出于说明的目的,以特定顺序描述了方法。应当理解,在替代实施例中,可以以与所描述的顺序不同的顺序执行方法。
普通技术人员将理解,在不脱离本说明书的范围的情况下,本文使用的小于(“<”)和大于(“>”)符号或术语可以分别用小于或等于(“≤”)和大于或等于(“≥”)符号代替。
在将组件描述为“被配置为”执行某些操作的情况下,可以例如通过设计电子电路或其他硬件以执行这些操作、通过对可编程电子电路(例如,微处理器或其他合适的电子电路)进行编程以执行这些操作或其任何组合来实现此类配置。
短语“耦合到”是指任何组件直接或间接地物理连接到另一组件,和/或任何组件与另一组件直接或间接地通信(例如,通过有线或无线连接、和/或其他合适的通信接口连接到另一组件)。
叙述集合中的“至少一个”和/或集合中的“一个或多个”的权利要求语言或其他语言指示集合中的一个成员或集合中的多个成员(以任何组合)满足权利要求。例如,叙述“A和B中的至少一个”的权利要求语言意指A、B或A和B。在另一示例中,叙述“A、B和C中的至少一个”的权利要求语言意指A、B、C、或A和B、或A和C、或B和C、或A和B和C。语言集合中的“至少一个”和/或集合中的“一个或多个”不将集合限制为集合中列出的项目。例如,叙述“A和B中的至少一个”的权利要求语言可以表示A、B或A和B,并且可以另外包括未在A和B的集合中列出的项目。
结合本文中所揭示的实施例而描述的各种说明性逻辑块、模块、电路及算法步骤可实施为电子硬件、计算机软件、固件或其组合。为清楚地说明硬件与软件的此可互换性,上文已大体上就其功能性描述了各种说明性组件、块、模块、电路和步骤。这种功能是实现为硬件还是软件取决于特定应用和施加在整个系统上的设计约束。技术人员可以针对每个特定应用以不同的方式实现所描述的功能,但是这种实施方式决定不应被解释为导致脱离本申请的范围。
本文中所描述的技术还可以在电子硬件、计算机软件、固件或其任何组合中实施。此类技术可实施于多种装置中的任一者中,例如通用计算机、无线通信设备手持机或具有多种用途(包含在无线通信设备手持机及其它装置中的应用)的集成电路装置。被描述为模块或组件的任何特征可以在集成逻辑设备中一起实现,或者单独实现为分立但可互操作的逻辑设备。如果以软件实施,那么所述技术可至少部分地由包括程序代码的计算机可读数据存储介质实现,所述程序代码包含在被执行时执行上文所描述的方法中的一者或多者的指令。计算机可读数据存储介质可形成计算机程序产品的部分,所述计算机程序产品可包含封装材料。计算机可读介质可包括存储器或数据存储介质,例如随机存取存储器(RAM)(例如同步动态随机存取存储器(SDRAM))、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、电可擦除可编程只读存储器(EEPROM)、快闪存储器、磁性或光学数据存储介质等等。另外或替代地,所述技术可至少部分地由计算机可读通信介质实现,所述计算机可读通信介质携载或传达呈指令或数据结构的形式且可由计算机存取、读取及/或执行的程序代码,例如传播信号或波。
程序代码可由处理器执行,所述处理器可包含一个或多个处理器,例如一个或多个数字信号处理器(DSP)通用微处理器、专用集成电路(ASIC)现场可编程逻辑阵列(FPGA)或其它等效集成或离散逻辑电路。此处理器可经配置以执行本发明中所描述的技术中的任一者。通用处理器可以是微处理器;但在替代方案中,处理器可为任何常规处理器、控制器、微控制器或状态机。处理器还可以实现为计算设备的组合,例如,DSP和微处理器的组合、多个微处理器、一个或多个微处理器与DSP内核的结合,或者任何其它这样的配置。因此,如本文中所使用的术语“处理器”可指代前述结构中的任一者、前述结构的任何组合或适合于本文中所描述的技术中的装置的任何其它结构或实施方式。另外,在一些方面中,本文中所描述的功能性可提供于经配置以用于编码及解码的专用软件模块或硬件模块内,或并入于组合式视频编码器-解码器(CODEC)中。
本公开的说明性方面包括:
方面1:一种用于生成一个或多个深度图的装置,其包括:结构化光源,其经配置以基于图元发射光图案,所述图元包含唯一可识别特征集合;飞行时间(ToF)传感器;至少一个存储器;以及耦合到至少一个存储器的一个或多个处理器(例如,在电路中实现)。一个或多个处理器被配置为:获得包括基于由结构化光源发射的光图案生成的光的反射图案的帧;使用所述ToF传感器确定与所述帧的像素相关联的第一距离测量;至少部分地基于所述第一距离测量来确定所述图元内的搜索空间,所述搜索空间包括来自所述图元的所述唯一可识别特征集合的特征的子集;基于在所述图元内搜索所述搜索空间,确定对应于所述帧的所述像素周围的区域的所述图元的特征;至少部分地基于从所述图元内的所述搜索空间确定所述图元的所述特征来确定与所述帧的所述像素相关联的第二距离测量;以及至少部分地基于所述第二距离测量生成深度图。
方面2:根据方面1所述的装置,其中一个或多个处理器被配置为:获得与第一照明水平相关联的帧的第一曝光;获得与不同于所述第一照明水平的第二照明水平相关联的所述帧的第二曝光;以及至少部分地基于与所述第一曝光中的所述像素相关联的第一光振幅和与所述第二曝光中的所述像素相关联的第二光振幅之间的比较来确定与所述帧的所述像素相关联的所述第一距离测量。
方面3:根据方面1或2中任一项所述的装置,其中:第一距离测量包括距离测量范围;且所述一个或多个处理器经配置以至少部分地基于所述距离测量范围确定所述图元内的所述搜索空间的尺寸,其中大距离测量范围与所述搜索空间的大尺寸相关联。
方面4:根据方面3所述的装置,其中所述一个或多个处理器被配置为至少部分地基于与所述ToF传感器相关联的模糊度水平来确定所述距离测量范围,其中高模糊度水平与大距离测量范围相关联。
方面5:根据方面1至4中任一项所述的装置,其中,所述一个或多个处理器被配置为:至少部分地基于所述第一距离测量来确定所述帧的所述像素的第一位置与所述图元的所述特征的第二位置之间的偏移,其中,所述偏移与所述第一距离测量成反比;以及至少部分地基于所述偏移确定所述图元内的所述搜索空间。
方面6:根据方面5所述的装置,其中所述一个或多个处理器经配置以将所述图元内的所述搜索空间的中心轴设置为所述图元的所述特征的所述第二位置。
方面7:根据方面1至6中任一项所述的装置,其中,帧的像素周围的区域具有预定尺寸,并且其中,一个或多个处理器被配置为:确定搜索空间的第一区域,搜索空间的第一区域具有预定尺寸;以及确定所述帧的所述像素周围的所述区域内的图像数据是否对应于所述搜索空间的所述第一区域内的图像数据。
方面8:根据方面7所述的装置,其中一个或多个处理器被配置为:确定帧的像素周围的区域内的图像数据对应于搜索空间的第一区域内的图像数据;以及至少部分地基于确定帧的像素与搜索空间的第一区域的对应特征之间的距离来确定第二距离测量。
方面9:根据方面7所述的装置,其中所述一个或多个处理器被配置为:确定所述帧的所述像素周围的所述区域内的所述图像数据不对应于所述图元内的所述搜索空间的所述第一区域内的所述图像数据;确定所述搜索空间的第二区域,所述搜索空间的所述第二区域具有所述预定尺寸;以及确定所述帧的所述像素周围的所述区域内的图像数据是否对应于所述搜索空间的所述第二区域内的图像数据。
方面10:根据方面1至9中任一项所述的装置,其中:由结构化光源发射的光图案包括多个光点;并且图元的唯一可识别特征集合内的特征包括多个光点中的两个或更多个光点。
方面11:根据方面10所述的装置,其中特征的光点对应于帧的两个或更多个像素。
方面12:根据方面1至11中任一项所述的装置,其中,所述结构化光源被配置为使用衍射光学元件发射所述光图案,所述衍射光学元件同时投影对应于所述图元的多个光图案。
方面13:根据方面1至12中任一项所述的装置,其中,所述一个或多个处理器被配置为:在所述结构化光源不发射基于所述图元的所述光图案时获得附加帧;至少部分地基于所述附加帧来确定环境光信号;以及在确定与所述帧的所述像素相关联的所述第一距离测量之前,从所述帧中减去所述环境光信号。
方面14:根据方面13所述的装置,其中,一个或多个处理器被配置为:在从帧中减去环境光信号之后,使用帧来确定与多径干扰相对应的光信号;以及在确定与所述帧的所述像素相关联的所述第一距离测量之前,从所述帧中减去对应于多径干扰的所述光信号。
方面15:根据方面1至14中任一项所述的装置,其中,一个或多个处理器被配置为在确定与帧的像素相关联的第一距离测量之前,将函数拟合到与帧的像素相对应的光信号。
方面16:根据方面1至15中任一项的装置,其中装置包括移动设备。
方面17:根据方面1至16中任一项所述的装置,还包括显示器。
方面18:一种生成一个或多个深度图的方法,所述方法包括:获得包含基于由结构化光源发射的光图案生成的光的反射图案的帧,所述光图案是基于包含唯一可识别特征集合的图元;使用飞行时间(ToF)传感器确定与所述帧的像素相关联的第一距离测量;至少部分地基于所述第一距离测量来确定所述图元内的搜索空间,所述搜索空间包括来自所述图元的所述唯一可识别特征集合的特征的子集;基于在所述图元内搜索所述搜索空间,确定对应于所述帧的所述像素周围的区域的所述图元的特征;至少部分地基于从所述图元内的所述搜索空间确定所述图元的所述特征来确定与所述帧的所述像素相关联的第二距离测量;以及至少部分地基于所述第二距离测量生成深度图。
方面19:根据方面18所述的方法,还包括:获得与第一照明水平相关联的帧的第一曝光;获得与不同于所述第一照明水平的第二照明水平相关联的所述帧的第二曝光;以及至少部分地基于与所述第一曝光中的所述像素相关联的第一光振幅和与所述第二曝光中的所述像素相关联的第二光振幅之间的比较来确定与所述帧的所述像素相关联的所述第一距离测量。
方面20:根据方面18或19中任一项所述的方法,其中,所述第一距离测量包括距离测量范围,并且还包括至少部分地基于所述距离测量范围来确定所述图元内的所述搜索空间的尺寸,其中,大范围的距离测量与所述搜索空间的大尺寸相关联。
方面21:根据方面20所述的方法,还包括至少部分地基于与ToF传感器相关联的模糊度水平来确定距离测量的范围,其中高模糊度水平与大距离测量范围相关联。
方面22:根据方面18至21中任一项所述的方法,还包括:至少部分地基于所述第一距离测量来确定所述帧的所述像素的第一位置与所述图元的所述特征的第二位置之间的偏移,其中,所述偏移与所述第一距离测量成反比;以及至少部分地基于所述偏移确定所述图元内的所述搜索空间。
方面23:根据方面22所述的方法,还包括将图元内的搜索空间的中心轴设置为图元的特征的第二位置。
方面24:根据方面18至23中任一项所述的方法,其中,帧的像素周围的区域具有预定尺寸,该方法还包括:确定搜索空间的第一区域,搜索空间的第一区域具有预定尺寸;以及确定所述帧的所述像素周围的所述区域内的图像数据是否对应于所述搜索空间的所述第一区域内的图像数据。
方面25:根据方面24所述的方法,还包括:确定帧的像素周围的区域内的图像数据对应于搜索空间的第一区域内的图像数据;以及至少部分地基于确定帧的像素与搜索空间的第一区域的对应特征之间的距离来确定第二距离测量。
方面26:根据方面24所述的方法,还包括:确定所述帧的所述像素周围的所述区域内的所述图像数据不对应于所述图元内的所述搜索空间的所述第一区域内的所述图像数据;确定所述搜索空间的第二区域,所述搜索空间的所述第二区域具有所述预定尺寸;以及确定所述帧的所述像素周围的所述区域内的图像数据是否对应于所述搜索空间的所述第二区域内的图像数据。
方面27:根据方面18至26中任一项所述的方法,其中:由结构化光源发射的光图案包括多个光点;并且图元的唯一可识别特征集合内的特征包括多个光点中的两个或更多个光点。
方面28:根据方面27所述的方法,其中所述特征的光点对应于所述帧的两个或更多个像素。
方面29:根据方面18至28中任一项所述的方法,还包括:使用所述结构化光源,使用衍射光学元件发射所述光图案,所述衍射光学元件同时投影对应于所述图元的多个光图案。
方面30:根据方面18至29中任一项所述的方法,还包括:在结构化光源不发射基于图元的光图案时获得附加帧;至少部分地基于所述附加帧来确定环境光信号;以及在确定与所述帧的所述像素相关联的所述第一距离测量之前,从所述帧中减去所述环境光信号。
方面31:根据方面30所述的方法,还包括:在从帧中减去环境光信号之后,使用帧来确定与多径干扰相对应的光信号;以及在确定与所述帧的所述像素相关联的所述第一距离测量之前,从所述帧中减去对应于多径干扰的所述光信号。
方面32:根据方面30所述的方法,还包括:在确定与所述帧的所述像素相关联的所述第一距离测量之前,将函数拟合到与所述帧的所述像素相对应的光信号。
方面33:一种存储指令的计算机可读存储介质,所述指令在被执行时使得一个或多个处理器执行根据方面1至32所述的操作中的任何操作。
方面34:一种装置,包括用于执行方面1至32的任何操作的装置。

Claims (32)

1.一种用于生成一个或多个深度图的装置,其包括:
结构化光源,所述结构化光源被配置成基于图元发射光图案,所述图元包括唯一可识别特征集合;
飞行时间(ToF)传感器;
至少一个存储器;以及
耦合到所述至少一个存储器的一个或多个处理器,所述一个或多个处理器被配置为:
获得包括基于由所述结构化光源发射的光图案生成的光的反射图案的帧;
使用所述ToF传感器确定与所述帧的像素相关联的第一距离测量;
至少部分地基于所述第一距离测量来确定所述图元内的搜索空间,所述搜索空间包括来自所述图元的所述唯一可识别特征集合的特征的子集;
基于在所述图元内搜索所述搜索空间,确定对应于所述帧的所述像素周围的区域的所述图元的特征;
至少部分地基于从所述图元内的所述搜索空间确定所述图元的所述特征来确定与所述帧的所述像素相关联的第二距离测量;以及
至少部分地基于所述第二距离测量生成深度图。
2.根据权利要求1所述的装置,其中所述一个或多个处理器经配置以:
获得与第一照明水平相关联的所述帧的第一曝光;
获得与不同于所述第一照明水平的第二照明水平相关联的所述帧的第二曝光;以及
至少部分地基于与所述第一曝光中的所述像素相关联的第一光振幅和与所述第二曝光中的所述像素相关联的第二光振幅之间的比较来确定与所述帧的所述像素相关联的所述第一距离测量。
3.根据权利要求1所述的装置,其中:
所述第一距离测量包括距离测量的范围;以及
所述一个或多个处理器经配置以至少部分地基于所述距离测量范围确定所述图元内的所述搜索空间的尺寸,其中大距离测量范围与所述搜索空间的大尺寸相关联。
4.根据权利要求3所述的装置,其中所述一个或更多个处理器被配置为至少部分地基于与所述ToF传感器相关联的模糊度水平来确定所述距离测量范围,其中高模糊度水平与大距离测量范围相关联。
5.根据权利要求1所述的装置,其中所述一个或多个处理器经配置以:
至少部分地基于所述第一距离测量,确定所述帧的所述像素的第一位置与所述图元的所述特征的第二位置之间的偏移,其中所述偏移与所述第一距离测量成反比;以及
至少部分地基于所述偏移确定所述图元内的所述搜索空间。
6.根据权利要求5所述的装置,其中所述一个或多个处理器经配置以将所述图元内的所述搜索空间的中心轴设定为所述图元的所述特征的所述第二位置。
7.根据权利要求1所述的装置,其中所述帧的所述像素周围的所述区域具有预定尺寸,且其中所述一个或多个处理器经配置以:
确定所述搜索空间的第一区域,所述搜索空间的所述第一区域具有所述预定尺寸;以及
确定所述帧的所述像素周围的所述区域内的图像数据是否对应于所述搜索空间的所述第一区域内的图像数据。
8.根据权利要求7所述的装置,其中所述一个或多个处理器经配置以:
确定所述帧的所述像素周围的所述区域内的所述图像数据对应于所述搜索空间的所述第一区域内的所述图像数据;以及
至少部分地基于确定所述帧的所述像素与所述搜索空间的所述第一区域的对应特征之间的距离来确定所述第二距离测量。
9.根据权利要求7所述的装置,其中所述一个或多个处理器经配置以:
确定所述帧的所述像素周围的所述区域内的所述图像数据不对应于所述图元内的所述搜索空间的所述第一区域内的所述图像数据;
确定所述搜索空间的第二区域,所述搜索空间的所述第二区域具有所述预定尺寸;以及
确定所述帧的所述像素周围的所述区域内的图像数据是否对应于所述搜索空间的所述第二区域内的图像数据。
10.根据权利要求1所述的装置,其中:
由所述结构化光源发射的所述光图案包括多个光点;以及
所述图元的所述唯一可识别特征集合内的特征包括多个光点中的两个或更多个光点。
11.根据权利要求10所述的装置,其中所述特征的光点对应于所述帧的两个或更多个像素。
12.根据权利要求1所述的装置,其中,所述结构化光源被配置为使用衍射光学元件发射所述光图案,所述衍射光学元件同时投影对应于所述图元的多个光图案。
13.根据权利要求1所述的装置,其中所述一个或多个处理器经配置以:
在所述结构化光源不发射基于所述图元的所述光图案时获得附加帧;
至少部分地基于所述附加帧来确定环境光信号;以及
在确定与所述帧的所述像素相关联的所述第一距离测量之前,从所述帧中减去所述环境光信号。
14.根据权利要求13所述的装置,其中所述一个或多个处理器经配置以:
在从所述帧中减去所述环境光信号之后,使用所述帧来确定与多径干扰相对应的光信号;以及
在确定与所述帧的所述像素相关联的所述第一距离测量之前,从所述帧中减去对应于多径干扰的所述光信号。
15.根据权利要求1所述的装置,其中所述一个或多个处理器经配置以在确定与所述帧的所述像素相关联的所述第一距离测量之前,将函数拟合到对应于所述帧的所述像素的光信号。
16.根据权利要求1所述的装置,其中,所述装置包括移动设备。
17.根据权利要求1所述的装置,还包括显示器。
18.一种生成一个或多个深度图的方法,所述方法包括:
获得包括基于由结构化光源发射的光图案生成的光的反射图案的帧,所述光图案基于包括唯一可识别特征的集合的图元;
使用飞行时间(ToF)传感器确定与所述帧的像素相关联的第一距离测量;
至少部分地基于所述第一距离测量来确定所述图元内的搜索空间,所述搜索空间包括来自所述图元的所述唯一可识别特征集合的特征的子集;
基于在所述图元内搜索所述搜索空间,确定对应于所述帧的所述像素周围的区域的所述图元的特征;
至少部分地基于从所述图元内的所述搜索空间确定所述图元的所述特征来确定与所述帧的所述像素相关联的第二距离测量;以及
至少部分地基于所述第二距离测量生成深度图。
19.根据权利要求18所述的方法,还包括:
获得与第一照明水平相关联的所述帧的第一曝光;
获得与不同于所述第一照明水平的第二照明水平相关联的所述帧的第二曝光;以及
至少部分地基于与所述第一曝光中的所述像素相关联的第一光振幅和与所述第二曝光中的所述像素相关联的第二光振幅之间的比较来确定与所述帧的所述像素相关联的所述第一距离测量。
20.根据权利要求18所述的方法,其中,所述第一距离测量包括距离测量范围,并且所述方法还包括:
至少部分地基于所述距离测量范围确定所述图元内的所述搜索空间的尺寸,其中大距离测量范围与所述搜索空间的大尺寸相关联。
21.根据权利要求20所述的方法,还包括至少部分地基于与所述ToF传感器相关联的模糊度水平来确定所述距离测量范围,其中高模糊度水平与大距离测量范围相关联。
22.根据权利要求18所述的方法,还包括:
至少部分地基于所述第一距离测量,确定所述帧的所述像素的第一位置与所述图元的所述特征的第二位置之间的偏移,其中所述偏移与所述第一距离测量成反比;以及
至少部分地基于所述偏移确定所述图元内的所述搜索空间。
23.根据权利要求22所述的方法,其进一步包括将所述图元内的所述搜索空间的中心轴设定为所述图元的所述特征的所述第二位置。
24.根据权利要求18所述的方法,其中所述帧的所述像素周围的所述区域具有预定尺寸,所述方法进一步包括:
确定所述搜索空间的第一区域,所述搜索空间的所述第一区域具有所述预定尺寸;以及
确定所述帧的所述像素周围的所述区域内的图像数据是否对应于所述搜索空间的所述第一区域内的图像数据。
25.根据权利要求24所述的方法,还包括:
确定所述帧的所述像素周围的所述区域内的所述图像数据对应于所述搜索空间的所述第一区域内的所述图像数据;以及
至少部分地基于确定所述帧的所述像素与所述搜索空间的所述第一区域的对应特征之间的距离来确定所述第二距离测量。
26.根据权利要求24所述的方法,还包括:
确定所述帧的所述像素周围的所述区域内的所述图像数据不对应于所述图元内的所述搜索空间的所述第一区域内的所述图像数据;
确定所述搜索空间的第二区域,所述搜索空间的所述第二区域具有所述预定尺寸;以及
确定所述帧的所述像素周围的所述区域内的图像数据是否对应于所述搜索空间的所述第二区域内的图像数据。
27.根据权利要求18所述的方法,其中:
由所述结构化光源发射的所述光图案包括多个光点;以及
所述图元的所述唯一可识别特征集合内的特征包括多个光点中的两个或更多个光点。
28.根据权利要求27所述的方法,其中,所述特征的光点对应于所述帧的两个或更多个像素。
29.根据权利要求18所述的方法,还包括:
使用所述结构化光源,使用衍射光学元件发射所述光图案,所述衍射光学元件同时投影对应于所述图元的多个光图案。
30.根据权利要求18所述的方法,还包括:
在所述结构化光源不发射基于所述图元的所述光图案时获得附加帧;
至少部分地基于所述附加帧来确定环境光信号;以及
在确定与所述帧的所述像素相关联的所述第一距离测量之前,从所述帧中减去所述环境光信号。
31.根据权利要求30所述的方法,还包括:
在从所述帧中减去所述环境光信号之后,使用所述帧来确定与多径干扰相对应的光信号;以及
在确定与所述帧的所述像素相关联的所述第一距离测量之前,从所述帧中减去对应于多径干扰的所述光信号。
32.根据权利要求18所述的方法,还包括:在确定与所述帧的所述像素相关联的所述第一距离测量之前,将函数拟合到与所述帧的所述像素相对应的光信号。
CN202180095998.6A 2021-03-26 2021-09-24 混合模式深度成像 Pending CN117043547A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GR20210100191 2021-03-26
GR20210100191 2021-03-26
PCT/US2021/051977 WO2022203717A1 (en) 2021-03-26 2021-09-24 Mixed-mode depth imaging

Publications (1)

Publication Number Publication Date
CN117043547A true CN117043547A (zh) 2023-11-10

Family

ID=78414746

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180095998.6A Pending CN117043547A (zh) 2021-03-26 2021-09-24 混合模式深度成像

Country Status (5)

Country Link
US (1) US20240070886A1 (zh)
EP (1) EP4314703A1 (zh)
KR (1) KR20230161951A (zh)
CN (1) CN117043547A (zh)
WO (1) WO2022203717A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024157141A1 (en) * 2023-01-25 2024-08-02 Ricoh Company, Ltd. Image-capturing apparatus, distance-measuring apparatus, distance-measuring system, and distance-measuring method

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2955544B1 (en) * 2014-06-11 2020-06-17 Sony Depthsensing Solutions N.V. A TOF camera system and a method for measuring a distance with the system
US20160205378A1 (en) * 2015-01-08 2016-07-14 Amir Nevet Multimode depth imaging
US10613228B2 (en) * 2017-09-08 2020-04-07 Microsoft Techology Licensing, Llc Time-of-flight augmented structured light range-sensor
US10916023B2 (en) * 2018-09-14 2021-02-09 Facebook Technologies, Llc Depth measurement assembly with a structured light source and a time of flight camera
US11561085B2 (en) * 2019-06-05 2023-01-24 Qualcomm Incorporated Resolving multipath interference using a mixed active depth system

Also Published As

Publication number Publication date
EP4314703A1 (en) 2024-02-07
KR20230161951A (ko) 2023-11-28
WO2022203717A9 (en) 2023-01-26
WO2022203717A1 (en) 2022-09-29
US20240070886A1 (en) 2024-02-29

Similar Documents

Publication Publication Date Title
US20220158498A1 (en) Three-dimensional imager and projection device
EP3673460B1 (en) Depth map with structured and flood light
US11763425B2 (en) High resolution time-of-flight depth imaging
US20170059305A1 (en) Active illumination for enhanced depth map generation
US20190068853A1 (en) Structured light and flood fill light illuminator
CN112189147B (zh) 一种飞行时间ToF相机和一种ToF方法
JP2018508013A (ja) マルチモード深度イメージング
US10055881B2 (en) Video imaging to assess specularity
CN112823291A (zh) 飞行时间rgb-ir图像传感器
CN113344839B (zh) 深度图像采集装置、融合方法和终端设备
TW202303522A (zh) 使用多點深度感測系統資訊處理圖像資料
US20240070886A1 (en) Mixed-mode depth imaging
EP4443379A1 (en) Three-dimensional recognition apparatus, terminal, image enhancement method and storage medium
US11080874B1 (en) Apparatuses, systems, and methods for high-sensitivity active illumination imaging
US11676293B2 (en) Methods for depth sensing using candidate images selected based on an epipolar line
US20240127401A1 (en) Active depth sensing
CN112752088A (zh) 深度图像生成方法及装置、参考图像生成方法、电子设备
US20240362805A1 (en) Stereo vision with census transform
US20240267632A1 (en) Adaptive algorithm for power efficient eye tracking
WO2024081491A1 (en) Active depth sensing
US20240265570A1 (en) Method and apparatus for optimum overlap ratio estimation for three dimensional (3d) reconstructions
CN118339824A (zh) 用于确定图像捕获设置的系统和方法
Schechner Scattered and Stray Light as Scene Encoding

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination