执行对象的深度估计的方法和装置
阅读说明:本技术 执行对象的深度估计的方法和装置 (Method and apparatus for performing depth estimation of an object ) 是由 K.斯里尼瓦桑 P.K.S.克里什纳帕 P.P.德什潘德 R.萨卡尔 于 2019-03-11 设计创作,主要内容包括:提供了一种用于执行场景的图像中的对象的深度估计的方法和装置。该方法包括:捕获场景的图像;由传感器从图像获得像素强度数据和事件数据;使用事件数据来生成事件深度图,其中,事件数据包括图像的事件图数据和图像的事件速度数据;以及使用事件深度图和像素强度数据来生成图像中的对象的深度图。(A method and apparatus for performing depth estimation of objects in an image of a scene is provided. The method comprises the following steps: capturing an image of a scene; obtaining, by a sensor, pixel intensity data and event data from an image; generating an event depth map using the event data, wherein the event data includes event map data for the image and event velocity data for the image; and generating a depth map of the object in the image using the event depth map and the pixel intensity data.)
技术领域
本公开总体上涉及图像处理,并且更具体地,涉及一种用于执行场景中的对象的深度估计的方法和装置。
背景技术
诸如相机、移动电话和其他多媒体设备的各种电子设备用于捕获场景的图像。所捕获的场景的深度图可以用于不同的应用(诸如机器人学、汽车感测、医学成像和三维(3D)应用)中。深度图是包括关于从视点到被包括在场景中的表面的距离的信息的图像。
传统的相机系统在深度估计和有源深度传感器(例如,过饱和区域中的深度估计、变化的照明条件下的深度估计、以及反射和透明对象的深度估计)方面具有许多处理瓶颈。
例如,在用于深度估计的常规的互补金属氧化物半导体(CMOS)传感器和立体设置(stereo setup)中,不能在饱和图像区域中估计准确的深度。此外,常规的CMOS传感器不能以高帧速率和低功率捕获场景的图像,这不适合提供快速的视觉反馈。
在高级驾驶员辅助系统(ADAS)中,场景的准确的深度图对于障碍物检测是必要的。此外,ADAS系统应该能够在各种照明条件下进行操作,并向用户提供快速的视觉反馈以用于正确的导航。然而,常规的CMOS传感器在各种照明条件下不能很好地操作,并且不能向用户提供快速的视觉反馈,这导致深度图的不良成像特性。此外,常规的CMOS传感器需要更高的带宽。例如,常规的CMOS传感器可以以奈奎斯特率进行采样,这需要超过20GBPS。
因此,需要一种用于在各种照明条件下执行场景中的对象的准确的深度估计的方法和装置。
发明内容
技术解决方案
根据本公开的一方面,提供了一种用于由电子设备执行图像中的对象的深度估计的方法。该方法包括:由电子设备捕获场景的图像;由电子设备的传感器从图像获得像素强度(pixel intensity)数据和事件数据;使用事件数据来生成事件深度图,其中,事件数据包括图像的事件图数据和图像的事件速度数据;以及使用事件深度图和像素强度数据来生成图像中的对象的深度图。
有益效果
本公开提供了一种用于在各种照明条件下执行场景的图像中的对象的准确的深度估计的方法和装置。
附图说明
从结合附图的以下描述中,本公开的某些实施例的以上以及其他方面、特征和优点将更加显而易见,其中:
图1A示出了根据实施例的用于执行场景中的对象的深度估计的电子设备;
图1B示出了根据实施例的稀疏深度图(sparse depth map)和稠密深度图(densedepth map);
图1C是示出根据实施例的获得事件强度图像的方法的流程图;
图1D示出了根据实施例的获得场景数据的方法;
图2示出了根据实施例的用于执行场景中的对象的深度估计的电子设备的深度估计引擎;
图3A是示出根据实施例的用于执行场景中的对象的深度估计的设备方法的流程图;
图3B是示出根据实施例的用于生成稀疏事件深度图的方法的流程图;
图3C是示出根据实施例的用于创建稠密深度图的方法的流程图;
图4是示出根据实施例的电子设备执行场景中的对象的深度估计的过程流程图;
图5是示出根据实施例的电子设备执行场景中的对象的深度估计的过程流程图;
图6是示出根据实施例的电子设备执行场景中的对象的深度估计的过程流程图;
图7是示出根据实施例的用于执行场景中的对象的深度估计的方法的流程图;
图8A是示出根据实施例的电子设备执行事件数据的定时同步的过程流程图;
图8B示出了根据实施例的事件数据的定时同步;
图9是示出根据实施例的电子设备执行频率缩放的过程流程图;
图10是示出根据实施例的电子设备通过使用深度图来执行自动驾驶车辆的障碍物检测和导航的过程流程图;
图11是示出根据实施例的电子设备创建要用于增强现实(AR)购物中的深度图的过程流程图;
图12是根据实施例的用于重建三维(3D)图像的3D场景的过程流程图;并且
图13是根据实施例的用于使用深度图来创建散景效果(Bokeh effect)的过程流程图。
具体实施方式
提供本公开以至少解决上述问题和/或缺点,并至少提供下述优点。
根据本公开的一方面,提供了一种用于由电子设备执行图像中的对象的深度估计的方法。该方法包括:由电子设备捕获场景的图像;由电子设备的传感器从图像获得像素强度数据和事件数据;使用事件数据来生成事件深度图,其中,事件数据包括图像的事件图数据和图像的事件速度数据;以及使用事件深度图和像素强度数据来生成图像中的对象的深度图。
根据本公开的一方面,提供了一种用于执行图像中的对象的深度估计的装置。该装置包括:相机,被配置为捕获场景的图像;传感器,被配置为从图像获得像素强度数据和事件数据;以及处理器,被配置为使用事件数据来生成事件深度图,其中该事件数据包括图像的事件图数据和图像的事件速度数据,以及使用事件深度图和像素强度数据来生成对象的深度图。
根据本公开的一方面,提供了一种用于在其上存储指令的非暂时性计算机可读介质,其中该指令在被执行时指示至少一个处理器执行一种方法。该方法包括:由电子设备捕获场景的图像;由电子设备的传感器从图像获得像素强度数据和事件数据;使用事件数据来生成事件深度图,其中,事件数据包括图像的事件图数据和图像的事件速度数据;以及使用事件深度图和像素强度数据来生成图像中的对象的深度图。
提供参考附图的以下描述以帮助全面理解如由权利要求及其等同物所限定的本公开的各种实施例。它包括各种具体细节以帮助该理解,尽管这些具体细节将被视为仅仅是示例性的。因此,本领域普通技术人员将认识到,在不脱离本公开的范围和精神的情况下,可以对在本文中描述的各种实施例进行各种改变和修改。此外,为了清楚和简洁,省略了对公知功能和构造的描述。
在以下描述和权利要求中使用的术语和词语不限于书面含义,而由发明人用于传达对本公开的清楚和一致的理解。因此,本领域技术人员将理解,提供本公开的各种实施例的以下描述仅出于说明目的,而不是出于限制如由所附权利要求及其等同物所限定的本公开的目的。
在本文中,除非上下文另外明确指出,否则单数形式(诸如“一”和“该”)包括复数指示物。因此,例如,对“组件表面”的引用包括对这样的表面中的一个或多个的引用。
在本文中描述的各种实施例不必互相排斥,因为可以将一些实施例与一个或多个其他实施例进行组合以形成新的实施例。
在本文中,除非另外指示,否则术语“或”指代非排他性的或。
在本文中使用的示例仅仅旨在促进对可以实践本文中的实施例的方式的理解,并进一步使得本领域技术人员能够实践本文中的实施例。因此,示例不应该被解释为限制本文中的实施例的范围。
如本公开的领域中习惯的,可以按照执行所描述的一个或多个功能的块来描述和示出实施例。在本文中可以被称为管理器、引擎、控制器、单元、模块等的这些块由模拟和/或数字电路(诸如逻辑门、集成电路、微处理器、微控制器、存储器电路、无源电子组件、有源电子组件、光学组件、硬连线电路等)物理实施,并且可以可选地由固件和软件驱动。电路可以被体现在一个或多个半导体芯片中,或者被体现在诸如印刷电路板等的基板支撑件上。构成块的电路可以由专用硬件、或者由处理器(例如,一个或多个编程的微处理器和相关联的电路)、或者由用以执行块的一些功能的专用硬件和用以执行块的其他功能的处理器的组合实施。
在不脱离本公开的范围的情况下,实施例的每个块可以被物理地分离为两个或更多个相互作用且离散的块。同样地,在不脱离本公开的范围的情况下,实施例的块可以被物理地组合为更复杂的块。
根据一个实施例,提供了一种用于执行场景中的对象的深度估计的方法和装置。
可以通过处理场景的事件数据来生成稀疏事件深度图。
可以通过将稀疏事件深度图与场景的像素强度数据流进行组合来创建场景中的对象的稠密深度图。
可以通过处理场景的图像的事件图数据来生成时空二维(2D)事件图和事件强度图像。
可以通过处理时空2D事件图、事件速度数据、和/或电子设备的捕获设备的旋转度以及传感器的平移估计数据来生成稀疏事件深度图。传感器可以是电子设备的基于单目(monocular)事件的传感器。
可以与事件数据一起处理场景的像素强度数据流,以获得场景的高质量红色、绿色和蓝色(RGB)图像。
可以通过使用所生成的稀疏深度以及场景的事件强度图像来生成中间深度图。
可以通过将中间深度图与场景的高质量RGB图像进行组合来创建稠密深度图。
针对场景的像素强度数据流执行事件数据的定时同步和定时校正。
根据实施例,提供了一种用于通过使用电子设备来执行场景中的对象的深度估计的方法。该方法包括:由电子设备捕获场景的图像;以及由电子设备从传感器获得场景数据,即场景的输入数据,其中输入数据包括场景的像素强度数据流和场景的事件数据。传感器可以是基于单目事件的传感器。该方法还包括:由电子设备通过处理场景的事件数据来生成稀疏事件深度图,其中场景的事件数据包括事件图数据和事件速度数据;以及由电子设备通过将稀疏事件深度图与场景的像素强度数据流进行融合来生成场景中的对象的稠密深度图。
与常规方法和系统不同,根据实施例的方法可以用于在各种照明条件下并且与反射表面相关地执行深度估计。例如,本公开的方法也可以用于通过使用单个传感器(诸如基于单目事件的传感器)将CMOS图像传感器数据与事件传感器数据进行组合来执行场景的更加准确的3D重建。
由于基于单目事件的传感器的优越的动态范围,本公开的方法可以用于捕获关于场景的更多信息,从而提供场景的饱和区域中的更多信息。
与常规方法和系统不同,本公开的方法可以用于使用CMOS图像传感器数据和事件数据的定时同步来执行准确的深度估计。例如,低功率可穿戴视觉设备(诸如增强现实(AR)智能眼镜、人机交互(HRI)设备等)可以使用CMOS图像传感器数据与事件数据的定时同步来执行场景的准确的深度估计。
与常规方法和系统不同,本公开的方法可以用于通过使用基于频率缩放的动态时间事件上下文速率来减小基于单目事件的传感器的动态随机存取存储器(DRAM)带宽。因此,可以获得基于减小的带宽的低延迟处理。
本公开的方法可以用于使用诸如基于单目事件的传感器的单个传感器来生成具有高精度的深度图。此外,可以使用该方法在不妥协电子设备的功耗和性能的情况下生成准确的深度图。
图1A示出根据实施例的用于执行场景中的对象的深度估计的电子设备。
参考图1A,电子设备100可以是但不限于智能电话、无人机、移动机器人、自动驾驶车辆、智能手表、笔记本电脑、移动电话、头戴式显示器、个人数字助理(PDA)、平板电脑、平板电话、或包括图像捕获设备的任何其他电子设备。电子设备100包括基于单目事件的传感器110、深度估计器120、图像信号处理器(ISP)130、事件信号处理器(ESP)140、通信器150、处理器160、存储器170和显示器180。深度估计器120、ISP 130、ESP 140、通信器150和处理器160可以被实施为至少一个硬件处理器。
基于单目事件的传感器110可以被配置为捕获场景的图像。场景可以是但不限于2D场景或3D场景。
基于单目事件的传感器110可以是但不限于相机、RGB相机、电荷耦合器件(CCD)或CMOS传感器等。
基于单目事件的传感器110包括有源像素传感器(APS)111和动态视觉传感器(DVS)112。APS 111可以被配置为获得场景的像素强度数据流。DVS112可以被配置为获得图像的事件数据。基于单目事件的传感器110可以被配置为跟踪场景的图像中的运动变化,即场景的图像中的像素的强度的改变。
基于单目事件的传感器110可以被配置为执行能够获得场景的3D图像中的对象的深度信息的深度传感器的功能、以及能够通过检测场景的3D图像中的对象的运动来获取运动信息的运动传感器的功能。
基于单目事件的传感器110可以在使用诸如电子设备100的相机的捕获设备来捕获场景的图像的同时获得场景数据。场景数据可以包括场景的像素强度数据流和场景的事件数据。
图1B示出了根据实施例的稀疏事件深度图和稠密深度图。
在整个说明书中,术语“稀疏事件深度图”可以与事件深度图、稀疏稠密深度图或稀疏深度图互换使用。同样地,术语“稠密深度图”在整个说明书中可以与深度图或稠密图互换使用。
参考图1B,事件信号处理引擎140可以通过处理图像的事件数据来生成稀疏事件深度图。通常,深度估计涉及两种深度。一种是稀疏深度,其是仅已知为2D图像的子集的深度。可以用从场景的图像1001获得的多个点来描绘稀疏事件深度图1003。另一方面,可以用对于整个2D图像已知的各种深度来描绘稠密深度图1007。稠密深度图的相同颜色指示与作为2D图像的场景的图像1001相同或基本相同的深度。
可以使用稀疏事件深度图1003和像素强度来获得中间稠密深度图1005。在整个说明书中,术语“中间稠密深度图”可以与中间图、半稠密深度图或中间深度图互换使用。
图像的事件数据可以包括场景的图像的事件图数据和事件速度数据。事件图数据是通过在某个时间段内以地址事件表示(AER)格式累积事件数据并由此生成事件数据的时空2D事件图而生成的数据。事件速度数据指代使用光流的每个事件的预测速度。
事件信号处理引擎140可以使用图像的事件图数据来生成时空2D事件图和事件强度图像。
图1C是示出根据实施例的获得事件强度图像的方法的流程图。
参考图1C,在步骤S101中,在某个时间段(例如,30ms)内累积事件数据。
在步骤S103中,将事件去噪过程应用于累积的事件数据。
在步骤S105中,生成活动事件的表面(Surface of Active Events,SAE)。SAE是包括二维传感器框架和表示时间的附加维度的3D域。
在步骤S107中,通过将平滑函数应用于SAE,使用强度图像平滑来细化初始重建的事件强度图像。
在步骤S109中,在应用平滑函数之后获得最终事件强度图像。
事件信号处理引擎140可以使用时空2D事件图、事件速度数据、以及相机旋转度和基于单目事件的传感器110的平移估计数据来生成稀疏事件深度图。例如,可以沿着图像的边缘分布稀疏事件深度图。深度可以指示被包括在场景中的对象和诸如相机的捕获设备之间的相对距离。
当事件数据被处理时,事件信号处理引擎140可以处理场景的图像的像素强度数据流,并由此从所捕获的场景的图像获得高质量RGB图像。事件信号处理引擎140可以使用所生成的稀疏深度以及像素强度数据来生成中间深度图。通常,可以通过对累积的事件数据进行插值来获得像素强度数据。
使用所估计的像素强度,稀疏事件深度图可以被繁殖(propagated)到相邻区域。也就是说,不具有深度信息的区域可以被填充有所估计的像素强度,以便生成中间深度图。中间深度图也可以被称为半稠密(事件)深度图。
深度估计器120可以通过将中间深度图与高质量RGB图像进行组合来生成稠密深度图。可以通过对中间深度图进行后处理来生成稠密深度图。
深度估计器120可以通过使用引导的(guided)表面拟合(surface fitting)过程将中间深度图与场景的高质量RGB图像进行组合来生成图像中的对象的稠密深度图。由于根据所估计的事件强度,关于场景中的对象的颜色、纹理和结构信息不完整,所以来自场景的高质量RGB图像的对象信息可以用于细化中间事件深度图。
ISP 130可以被配置为使用用于创建稠密深度图的引导的表面拟合技术来执行图像信号处理。
ISP 130可以针对场景的像素强度数据流执行事件数据的定时同步和定时校正。
ESP 140可以被配置为对电子设备100的深度估计电路执行频率缩放,以便确定用于维持电子设备100的功率和性能之间的平衡的操作频率,其中,频率缩放是基于场景数据速率和电子设备的最大吞吐量而执行的。最大吞吐量指示电子设备100在给定的时间量期间可以处理的最大信息量。操作频率指代数字硬件块或数字硬件电路工作的时钟频率。频率缩放用于控制时钟频率,以匹配所需的性能和消耗的功率。
通信器150可以被配置为与电子设备100中的硬件组件进行内部通信。处理器160可以被耦合到存储器170,以用于处理存储在存储器170中的各种指令,以使用电子设备100执行场景的图像中的对象的深度估计。
存储器170可以被配置为存储要由处理器160执行的指令。此外,存储器170可以被配置为存储3D场景的图像帧。存储器170可以包括非易失性存储元件,诸如磁性硬盘、光盘、软盘、闪存、或者电可编程存储器(EPROM)或电可擦除可编程(EEPROM)存储器的形式。
此外,存储器170可以是非暂时性存储介质。术语“非暂时性”可以指示存储介质不被体现在载波或传播的信号中。然而,术语“非暂时性”不应该以存储器170不可移动的意义被解释。非暂时性存储介质可以存储可以随时间改变的数据(例如,随机存取存储器(RAM)或高速缓存)。
存储器170可以被配置为存储更大量的信息。
显示器180可以被配置为显示所捕获的3D场景的图像。显示器180可以包括触摸屏显示器、AR显示器、虚拟现实(VR)显示器等。
尽管在图1A中示出了电子设备100的各种硬件组件,但是本公开的实施例不限于此。例如,电子设备100可以包括比图1A中示出的更少或更多的组件。可以将两个或更多个组件组合在一起以执行用以执行场景中的对象的深度估计的相同或基本类似的功能。
此外,在图1A中示出的组件的标签或名称仅用于仅说明目的,并且不限制本公开的范围。
图1D示出了根据实施例的用于获得场景数据的方法。
参考图1D,当相机捕获场景时,在步骤S151中,从场景反射多个光子,并且在步骤S153中,反射的多个光子落在多个像素阵列上。
在步骤S155中,每个像素可以根据光子的波长释放几个电子空穴对。在步骤S157中,可以使用诸如电容器的电气组件将以电子空穴对形成的电荷转变为电压。
在步骤S159中,使用第一比较器191将电压与先前存储的电压进行比较。
在步骤S161中,由第二比较器193将指示可以转化为强度差的电压差的、比较器191的输出与预定阈值进行比较。
在步骤S163中,第二比较器193的输出可以是开启/关闭(on/off)信号,其可以是事件数据。
在步骤S165中,将时间戳附到事件数据,并且可以将事件数据转换为AER格式的AER数据。事件数据可以表示场景的图像中的像素强度的改变。也就是说,表示场景的图像可以被划分为多个单元,其被称为“像素”。图像中的多个像素中的每一个可以表示离散区域并且具有相关联的强度值。像素在低的灰度强度的情况下可能显得很暗,而在高强度的情况下可能显得很亮。
在步骤S167中,可以使用放大器195来放大与步骤S157相关联的电压输出。可以在步骤S169中将放大的电压输入到模数转换器(ADC)197中,以便生成表示场景的像素强度的数字值。
事件数据可以具有来自基于单目事件的传感器110的事件e(n)的时间序列的格式,如下面的等式(1)所示。
e(n)={xn,yn,θn,tn}(1)
在等式(1)中,x和y指代像素的坐标,θ指代事件的极性,即正或负,并且t指代事件触发的时间戳。正θ指示在对应的像素处,强度已经在对数强度空间中增加了某个阈值△+>0。负θ指示强度在对数强度空间中下降第二阈值△->0。
图2示出了根据实施例的用于执行场景的图像中的对象的深度估计的电子设备的深度估计器。
参考图2,深度估计器120包括事件流引导的强度生成器121、稀疏深度图生成器122、中间深度图生成器123、图像引导的表面拟合引擎124、后处理器125和稠密深度图生成器126。深度估计器120可以被实施为至少一个硬件处理器。
事件流引导的强度生成器121可以从基于单目事件的传感器110的事件数据生成强度数据。稀疏深度图生成器122可以使用场景的图像的事件数据来生成稀疏事件深度图。稀疏深度图生成器122可以通过处理场景的图像的事件图数据来生成时空2D事件图和事件强度图像。此外,稀疏深度图生成器122可以通过处理时空2D事件图、事件速度数据、以及相机旋转度和基于单目事件的传感器110的平移估计数据来生成稀疏事件深度图。可以沿着场景的图像的边缘分布稀疏事件深度图。
当事件数据被处理时,中间深度图生成器123可以同时处理图像的像素强度数据流以获得场景的高质量RGB图像。中间深度图生成器123可以通过使用所生成的稀疏深度以及场景的事件强度图像来生成中间深度图。
通过使用引导的表面拟合过程将中间深度图与来自场景的高质量RGB图像进行融合或组合,图像引导的表面拟合引擎124可以创建图像中的对象的稠密深度图。
后处理器125可以执行后处理/深度平滑,以用于对中间深度图进行后处理以生成稠密深度图。
稠密深度图生成器126可以通过将中间深度图与高质量RGB图像进行融合或组合来创建稠密深度图。可以通过对中间深度图进行后处理来创建稠密深度图。
通过使用引导的表面拟合过程将中间深度图与高质量RGB图像进行融合或组合,稠密深度图生成器126可以生成图像中的对象的稠密深度图。引导的表面拟合过程可以用于使用高质量RGB图像和事件数据来找到一系列数据点的最佳拟合线或表面。
图3A是示出根据实施例的用于执行场景中的对象的深度估计的设备方法的流程图。
参考图3A,其中的操作(即,步骤310-340)可以由处理器或者具体地由电子设备100的深度估计器120执行。
在步骤310中,电子设备100捕获场景的图像。该捕获可以由电子设备100的相机或捕获设备执行。
在步骤320中,电子设备通过传感器(例如,电子设备100的基于单目事件的传感器110)获得图像的场景数据。
在步骤330中,电子设备100通过使用图像的事件数据来生成稀疏事件深度图。事件数据可以包括场景的图像的事件图数据和事件速度数据。
为了生成稀疏事件深度图,可以与所捕获的图像的事件数据一起使用诸如相机取向的其他信息。相机或捕获设备在捕获场景的图像时的相对位置以及由相机或捕获设备捕获的累积的图像帧之间的事件流可以帮助估计场景的深度。由于事件在某些像素上可用,具体地沿着场景的图像的边缘可用,因此所生成的事件图是稀疏的。
在步骤340中,电子设备100使用稀疏事件深度图和像素强度数据流来生成图像中的对象的稠密深度图。可以通过将稀疏事件深度图和场景的图像的像素强度数据流进行融合或组合来生成稠密深度图。
尽管图3A的流程图中的各种步骤、动作、行为、块等以特定顺序被示出,但是可以以不同顺序或同时被执行。此外,在不脱离本公开的范围的情况下,可以省略、添加、修改或跳过该步骤、动作、行为、块等中的一些。
图3B是示出根据实施例的用于生成稀疏事件深度图的方法的流程图。
参考图3B,在步骤321中,电子设备100通过处理场景的图像的事件图数据来生成时空2D事件图和/或事件强度图像。稀疏深度图生成器122可以使用图像的事件图数据来生成时空2D事件图和/或事件强度图像。
在步骤323中,电子设备100可以通过处理时空2D事件图和事件速度数据来生成稀疏事件深度图。可以使用时空2D事件图、事件速度数据来生成稀疏事件深度图。电子设备100的捕获设备(例如,相机)的旋转度和基于单目事件的传感器110的平移估计数据也可以用于生成稀疏事件深度图。可以沿着图像的边缘分布稀疏事件深度图。稀疏深度图生成引擎122可以使用前述处理来生成稀疏事件深度图。
尽管图3B的流程图中的各种步骤、动作、行为、块等以特定顺序被示出,但是它们可以以不同顺序或同时被执行。此外,在不脱离本公开的范围的情况下,可以省略、添加、修改或跳过该步骤、动作、行为、块等中的一些。
图3C是示出根据实施例的用于创建稠密深度图的方法的流程图。
参考图3C,在步骤331中,当事件数据被处理时,电子设备100通过同时处理图像的像素强度数据流来从场景的图像获得高质量RGB图像。当事件数据被处理时,ISP 130同时处理图像的像素强度数据流以从场景的图像获得高质量RGB图像。
在步骤333中,电子设备100基于稀疏事件深度图与事件强度图像来生成中间深度图。中间深度图生成器123可以使用所生成的稀疏事件深度图以及场景的事件强度图像来生成中间深度图。
在步骤335中,电子设备100通过将中间深度图与场景的高质量RGB图像进行组合或融合来生成稠密深度图。稠密深度图生成器143可以通过将中间深度图与高质量RGB图像进行组合或融合来生成稠密深度图。
尽管图3C的流程图中的各种步骤、动作、行为、块等以特定顺序被示出,但是可以以不同顺序或同时被执行。此外,在不脱离本公开的范围的情况下,可以省略、添加、修改或跳过该步骤、动作、行为、块等中的一些。
图4是示出根据实施例的电子设备执行场景中的对象的深度估计的过程流程图。
参考图4,APS 111可以是但不限于可以接收光并将所接收的光转换为取决于光强度的数字像素值的CMOS图像传感器。传感器控制电路110A可以是但不限于可以用于修改传感器参数设置(诸如曝光时间、帧速率等)的控制器电路。
系统锁相环(PLL)135可以是生成输出信号的控制系统,该输出信号的相位与输入信号的相位有关。系统PLL 135可以是应用处理器片上硅(AP SoC)。
AP SoC上的CSI接收器(CSI Rx)136可以经由CSI D-Phy接收APS数据。此外,ISP130可以用于增强APS数据的质量。
DVS和APS特征相关性(feature correlation)引擎131可以被配置为执行DVS数据和APS数据之间的特征相关性。校正事件定时引擎132可以被配置为针对场景的像素强度数据流执行事件数据的定时同步和定时校正。
基于事件速度的频率缩放引擎134可以被配置为对电子设备100的深度估计电路执行频率缩放,并确定电子设备100的操作频率以用于维持功率和性能之间的平衡,其中,频率缩放是基于输入数据速率和电子设备的最大吞吐量而执行的。
事件传感器定时同步引擎133可以被配置为执行事件数据的定时同步。
ESP 140可以包括AER总线解码器141、事件相机应用层142、事件稳定器143、事件时间上下文(event temporal context)检测器144、事件信号控制器149、事件缓冲器控制器145、事件图生成器146、基于事件的特征检测器147和事件速度估计器148。
AER解码器141可从DVS接收事件数据,并将事件数据从一个时钟域(AER解码器141)改变为另一个域(事件信号控制器149)。事件相机应用层142可以从AER解码器141接收数据,并与事件信号控制器149接口。事件相机应用层142也可以用于从事件数据滤出噪声。
事件稳定器143可以融合从传感器集线器(例如,惯性测量单元(IMU)或其他方向性传感器)接收的姿态(或取向),并相对于传感器运动稳定事件数据。事件时间上下文检测器144可以确定时间片上的事件的有效性,并确定事件数据的平均累积时间。
事件信号控制器149可以控制事件数据的事件定时和事件信号处理器140的数字知识产权(IP)频率控制250。在本文中,数字IP可以被称为“IP”。
事件缓冲器控制器145可以管理累积的事件帧的队列,并处理内部内存请求。
事件图生成器146可以从单个像素事件数据创建空间2D事件图。事件速度估计器148可以经由粒子跟踪或其他技术测量事件的速度。基于事件的特征检测器147可以从事件图提取二元(binary)特征。
深度估计器120可以从ISP 130、校正事件定时引擎132和事件速度估计器148接收数据。通过组合从ISP 130、校正事件定时引擎132和事件速度估计器148接收的数据,深度估计器120可以创建场景的图像中的对象的深度图。
图5是示出根据实施例的电子设备执行场景的图像中的对象的深度估计的过程流程图。
参考图5,在步骤S510中,事件传感器定时同步引擎133接收如下输入并且发送如下输出。
输入:事件速度信息、DVS事件图、最近的时间片RGB图像、系统PLL时钟信息、RGB图像V-Sync信息、先前校正的事件定时(从第2帧开始,对于第一帧,假设常数)。
输出:校正的事件定时(相对于事件信号控制器)。
在步骤S520中,深度估计器120接收如下输入并且发送如下输出。
输入:事件图、所估计的相机姿态、事件速度
输出:事件强度图像
在步骤S530中,深度估计器120接收如下输入并且发送如下输出。
输入:使用引导的事件强度生成引擎的事件强度图像
输出:基于稀疏3D边缘的深度数据
在步骤S540中,深度估计器120接收如下输入并且发送如下输出。
输入:来自步骤530的基于稀疏3D边缘的深度数据
输出:使用事件传感器数据的中间稠密深度图
在步骤S550中,深度估计器120接收如下输入并且发送如下输出。
输入:来自ISP 130的RGB图像、来自步骤S540的中间稠密深度图
输出:来自组合的RGB和基于事件的数据的稠密深度图
在步骤S560中,深度估计器120接收如下输入并且发送如下输出。
输入:来自步骤S550的深度图
输出:经后处理的平滑稠密深度图
在步骤S570中,基于事件速度的频率缩放引擎134对电子设备100的深度估计电路执行频率缩放,以确定电子设备100的操作频率以用于维持功率和性能之间的平衡。频率缩放是基于输入数据速率和电子设备100的最大吞吐量而执行的。
图6是示出根据实施例的电子设备执行场景中的对象的深度估计的过程流程图。
参考图6,深度估计器120可以针对场景的饱和区域或者在场景的各种照明条件下执行场景的图像的深度估计。在图像捕获期间,对于每个场景,基于单目事件的传感器110可以输出像素强度数据和事件数据(其表示像素强度的正改变或负改变)。事件数据被处理以便生成稀疏深度图。稀疏深度图被处理以形成中间深度图。像素强度数据由ISP 130并行处理,以便获得高质量RGB图像。
引导的表面拟合被应用于中间深度图和RGB图像,以便获得表示比中间深度图更准确的对象深度的稠密深度图。此后,应用后处理,诸如深度平滑,和孔洞填充。输出将是具有电子设备100的最高可能的视频分辨率的稠密、准确的深度图。
与传统的立体或主动深度估计方法不同,本公开的基于事件的深度估计取决于相机/对象运动。此外,低数据速率使得深度估计类似于实时深度测量,这对于可穿戴设备的视觉应用是有效的。在常规方法中,一对事件传感器相机用于捕获场景的深度。与常规方法不同,该方法可以使用单个基于单目事件的传感器110来捕获场景的深度信息。
此外,基于单目事件的传感器110进行深度测量不需要校准或纠正。CMOS和DVS传感器输出由本公开的事件传感器定时同步引擎133进行同步。在本文中公开的基于事件传感器的深度估计产生稀疏深度图,其中,主要沿着对象边缘分布信息。因此,表面反射率不会如立体或主动深度估计的情况那样影响深度测量精度。来自APS 111的图像数据用于获得场景的稠密深度图。
图7是示出根据实施例的电子设备执行场景的图像中的对象的深度估计的流程图。
参考图7,在步骤701中,基于单目事件的传感器110开始捕获基于事件的相机序列。此外,基于单目事件的传感器110针对DVS传感器数据处理路径和CMOS传感器数据处理路径执行处理。
在步骤702中,ESP 140开始使用减少与相机或其他图像捕获设备在曝光期间的运动相关联的模糊的技术来执行相机事件稳定,即图像稳定。基本上,惯性测量设备可以用于测量身体的比力和/或角速率,以便从输入帧移除不必要的相机运动的影响,并获得稳定的图像帧。惯性测量器可以从所捕获的图像移除偏差和/或温度误差,以生成惯性测量(IM)数据。可以将IM数据与可以从不稳定的图像获得的事件数据进行融合。
在步骤703中,ESP 140检测跨时间片的每个事件的有效性。
在步骤704中,ESP 140识别用于事件图生成的平均累积时间。
在步骤705中,ESP 140基于所识别的平均累积时间来生成事件图,并且在步骤706中,ESP 140从事件图生成强度图像。
在步骤707中,ESP 140从所生成的事件图执行基于事件的二元特征提取。在步骤708中,ESP 140使用粒子跟踪来测量事件速度,并且在步骤709中,将基于事件的二元特征提取的输出以及事件速度输入到DVS和APS特征相关性引擎131。
在步骤711中,处理来自CMOS图像传感器的RGB图像数据。步骤712-714可以由深度估计器120并行执行,以用于创建深度图。
在步骤709中,DVS和APS特征相关性引擎131可以接收来自基于事件的二元特征提取的执行的输入、事件速度、以及CMOS图像数据。
在步骤718中,事件传感器定时同步引擎133执行定时同步,并且将定时同步的结果传送给校正事件定时引擎132。
在步骤719中,校正事件定时引擎132对校正的事件数据定时事件传感器数据进行深度处理,并且执行校正的事件数据定时事件传感器数据的事件相机稳定。
图8A是示出根据实施例的电子设备执行事件数据的定时同步的过程流程图。
通常,基于单目事件的传感器110本质上是异步的。以AER格式表示图像数据,其中该AER格式包含像素坐标、事件生成的时间戳、以及事件类型。
在包括动态像素和有源像素的传感器的情况下,存在经由CSI D-PHY发送CMOS数据并经由AER总线接口发送事件数据的两个单独的接口。存在正在演进以利用事件数据和CMOS数据的许多技术。但是,由于它们是经由两个单独的接口生成和发送的,因此需要针对包括动态像素和有源像素的传感器的CMOS数据的、事件数据的定时同步和校正。
参考图8A,定时同步可以主要由相关性引擎1300执行,其中该相关性引擎1300包括DVS和APS特征相关性引擎131、事件传感器定时同步引擎133和校正事件定时引擎132。
定时同步引擎144执行从包括动态像素和有源像素的基于单目事件的传感器110接收的事件数据的定时同步和校正。
对于定时同步,来自ISP 130的RGB数据被处理以提取其图像特征。ISP 130还可以生成V-sync,以指示RGB帧完成的结束。V-sync可以被发送到基于V-Sync的帧定时生成器137。
在步骤S801中,可以处理来自事件图生成器146的事件图,以使用事件速度估计器148来估计事件速度并且使用基于事件的特征检测器147来检测事件特征。此外,可以获得经由系统PLL 135的定时信息。经由基于V-sync的帧定时生成器137和基于事件的特征检测器147的、ISP 130的输出可以由DVS和APS特征相关性引擎131进行组合和融合,以便生成DVS数据。
基于前述特征相关性,在步骤S803中,确定特征相关性是否超过预定阈值。基于该确定,可以在DVS数据上确定要被应用的定时校正量。
图8B示出了根据实施例的事件数据的定时同步。
参考图8B,相关性引擎1300可以对从有源像素帧获得的RGB数据810和从事件数据帧获得的事件数据820进行组合和/或融合,以校正和同步有源像素帧和事件数据帧之间的时间差。
图9是示出根据实施例的电子设备执行频率缩放的过程流程图。
参考图9,在基于相机的系统的数字IP设计期间,使用通过考虑输入数据速率和最大吞吐量的最大频率的合成和定时收敛。与其中输入速率是确定性的传统的基于CMOS的传感器不同,基于单目事件的传感器110本质上是异步的。因此,数据到达的速率和所需的IP吞吐量会变化。
然而,在实际操作中,应该根据用于维持电子设备的功率和性能之间的最优平衡的标准来对深度估计IP进行计时。本公开的系统包括用于深度估计IP的基于事件速度的频率缩放引擎134,其可以考虑输入数据速率和当前吞吐量,并决定可以最优地平衡功率和性能的IP操作频率。
基于事件速度的频率缩放引擎134从事件速度估计引擎148和事件缓冲器控制器145接收输出,并且处理吞吐量以估计IP频率。
图10是示出根据实施例的通过使用深度图来进行经由自动驾驶车辆的障碍物检测和导航的过程流程图。
参考图10,由元件1000-1010执行的操作可以由自动驾驶车辆用于障碍物检测或行人跟踪,尤其是在低亮度条件下。
更具体地,车载IMU 1001与车轮里程表1003协同操作,以建立全局相机参考系及其相对于时间的轨迹。由基于事件的相机传感器1002创建的伪图像流用于提取基于事件的特征(诸如拐角和线段),其然后与由外部***1006获得的IMU稳定和定位数据进行比较。此后,准确的相机姿态由相机姿态估计器1007进行估计。
外部传感器校准器1004、外部位置映射单元1005和外部***1006被配置为从关于障碍物的实时深度信息确定障碍物的确切位置。此外,导航器1010和外部障碍物检测器1009从实时深度信息确定障碍物的存在。
基于单目事件的深度估计器1008被配置为以低功耗进行操作,并甚至在低亮度环境下提供准确深度信息。由基于事件的相机传感器1002创建的伪帧给出了被进一步细化的深度图的稀疏估计,并且用与时间相关的APS(RGB)帧实时填充和平滑深度图中的孔洞。
在包括图10的元件的高级驾驶员辅助系统(ADAS)中,场景的图像的准确深度图对于障碍物检测是必要的。此外,ADAS系统应该在各种照明条件下工作,并向用户提供快速的视觉反馈以用于正确的导航。基于单目事件的传感器110在极端照明条件下提供更高的帧速率、更高的动态范围(~120dB)。
图11是根据实施例的在AR购物中使用深度图的过程流程图。
参考图11,该方法可以用于确定包括透明和反射表面以及多个对象的场景的图像的准确的深度图。流程图1100中由元件执行的操作可以用于AR购物,并允许用户基于深度图估计来执行虚拟对象放置。图11的方法也可以用于AR购物用例中,以采用从虚拟现实对象放置/实现中的方法获得的实时深度。
来自基于单目事件的深度估计器1104的细化的准确深度信息由平面区域检测器1105用于平面估计。基于单目事件的深度估计器1104通过对有源像素和基于事件的数据进行融合来估计场景的图像中的对象的深度。因此,可以定义3D表面以在其上投影虚拟对象。
平面区域检测器1105用于检测场景中的平面区域,由此识别用于虚拟对象放置的合适的预留位置。覆盖呈现和无缝混合器1106用于覆盖由平面区域检测器1105识别的合适区域中的虚拟对象。
从基于事件的相机传感器1101提取的虚拟组件1103关于从深度和平面信息计算的期望估计而被变形(warped)。该数据被融合,而且对应的虚拟组件在呈现表面上被覆盖和无缝混合器1106覆盖。如在用户的取景器/预览上看到的那样,与其他图像数据一起呈现产生的图像,从而经由在显示器1109上显示的增强图像1108提供AR体验。
图12是根据实施例的用于重建3D图像的3D场景的过程流程图。
参考图12,与流程图1200中的元件1201-1208相对应的操作可以用于重建3D图像的3D场景。
深度图对于3D成像和显示是重要的,并且可以用于不同的应用领域中,诸如数字全息图像处理、整体成像中的对象重建、3D对象检索和场景理解、以及3D打印。此外,3D深度图用于基于视觉的应用中,诸如用于机器人学、游戏、AR眼镜等中。
通过使用基于单目事件的传感器110而获得的场景中的对象的准确的深度图用于虚拟对象放置。准确的深度图可以用于产品预览中,以可视化或了解不同的产品和功能。
图13是根据实施例的用于通过使用电子设备使用深度图来创建散景效果的过程流程图。
参考图13,步骤1301和1303可以用于使用深度图来创建散景效果。电子设备100可以捕获场景的图像,并且基于经由散景引擎1301和使用基于单目事件的传感器的深度估计器1302的处理,可以创建场景的图像的准确的深度图。
该过程可以用于创建散景效果。因此,根据本公开获得的实时深度图可以用于将高质量的散景效果应用于静止图像。设备(例如,智能相机平台)可以捕获呈现到用户的预览/取景器上的一系列图像。处理来自事件流水线的事件数据,以经由使用基于单目事件的传感器的深度估计器1302得到细粒度的准确且实时的深度图。深度图可以用于获得解决方案(诸如散景效果),以便将场景分解为多个深度区域,并基于感兴趣区域将多个区域分类为背景或前景的层。此外,这样的解决方案可以用于应用各种图像处理内核以实现期望的结果。
可以通过在至少一个硬件设备上运行并执行网络管理功能以控制各种元件的至少一个软件程序来实施在本文中公开的实施例。
在图1至图13中示出的元件包括块,其可以是硬件设备、软件模块、或者硬件设备和软件模块的组合中的至少一个。
尽管已经参考本公开的某些实施例具体地示出和描述了本公开,但是本领域普通技术人员将理解,在不脱离如所附权利要求及其等同物所限定的本公开的精神和范围的情况下,可以在形式和细节上进行各种改变。
- 上一篇:一种医用注射器针头装配设备
- 下一篇:用于图像的自动故障阈值检测的设备和方法