掌桥专利:专业的专利平台
掌桥专利
首页

透明智能手机

文献发布时间:2023-06-19 12:16:29


透明智能手机

相关申请的交叉引用

本申请根据35USC 119(e)要求2019年1月21日提交的美国临时申请号62/794,765的权益,所述申请通过引用整体并入本文。

背景技术

新一代手持移动计算装置,诸如智能手机和平板电脑,都具有宽大的触摸屏显示器。它们的区域几乎覆盖了装置的整个正面。事实上,在一些示例中,显示器围绕装置的侧面缠绕。

与此同时,在移动计算装置上执行的增强现实(AR)应用程序(应用)已经变得无处不在。这些在移动计算装置上执行的应用将虚拟内容与通常由装置的后置相机捕获的图像叠加在一起。

发明内容

通常,捕获的图像和虚拟内容的渲染是从后置相机的角度来执行的。从用户的视角来看,这具有创建在装置显示器外围显示的图像和周围环境之间的不连续性的效果,即,从用户的视点来看,AR场景与周围的现实世界场景并不混合。这损害了AR错觉,因为捕获的图像和AR内容相对于周围环境不对准,并且同一对象可能被看到两次,一次在装置的显示器上,并且一次在用户的视觉视角内。

有些人建议跟踪用户的视点并且实现AR场景和现实世界场景之间的更好混合。如果装置可以显示基于用户视角(按照放大倍数和位置两者)校准的图像,那么装置的显示器可以融入周围环境,产生装置透明的错觉。

成功的混合需要移动计算装置对用户的视点和现实世界场景的高速跟踪。机器视觉系统的关键指标是延迟,即从接收到光线到更新渲染的AR场景之间经过的时间。

基于事件的视觉传感器提供许多优势,主要是通过本质上压缩数据流,从而减小处理单元需要分析的数据量。此外,基于事件的视觉传感器的像素持续感测场景中的视觉变化并且以非常低的延迟报告它们。这使得基于事件的视觉传感器成为始终在线任务的理想传感器,诸如视觉跟踪和智能传感器控制或辅助传感模式的数据增强。

通常,根据一个方面,本发明的特征在于用于在移动计算装置上渲染增强现实场景的方法。它包括利用一个或多个基于事件的视觉传感器来跟踪现实世界场景和/或用户的视点,并且基于用户的视点和现实世界场景的场景映射图以及基于对一个或多个基于事件的视觉传感器的跟踪来混合在移动计算装置上显示的增强现实场景。

在实施例中,对现实世界场景的跟踪和/或对用户的视点的跟踪包括基于一个或多个基于事件的视觉传感器中的前基于事件的视觉传感器来确定用户的视点是否已经被移位,并且如果认为有必要,则从前深度传感器和/或前相机获取另外的信息来更新视点。

此外,对现实世界场景的跟踪和/或对用户的视点的跟踪还可以包括基于一个或多个基于事件的视觉传感器中的后基于事件的视觉传感器来确定场景中的对象是否已经移动,并且如果认为有必要,则从后深度传感器和/或后相机获取其他的信息来更新场景映射图。

此外,对现实世界场景的跟踪和/或对用户的视点的跟踪还可以包括基于来自惯性测量单元和/或基于事件的视觉传感器的信息来确定移动计算装置的姿态是否已经改变,并且如果认为有必要,则从后深度传感器和/或后相机和/或基于事件的视觉传感器获取其他的信息来更新场景映射图。

通常,根据一个方面,本发明的特征在于移动计算装置。该装置包括前传感器组件、后传感器组件、显示器(诸如触摸屏显示器)和监测前传感器组件和后传感器组件的处理器组件。处理器组件还执行增强现实应用以在显示器上渲染增强现实场景。在操作中,处理器组件利用前传感器组件和/或后传感器组件的一个或多个基于事件的视觉传感器来跟踪现实世界场景和/或用户的视点,并且基于用户的视点和现实世界场景的场景映射图以及基于对一个或多个基于事件的视觉传感器的跟踪来混合显示器上显示的AR场景。

现在将参考附图更具体地描述并且在权利要求中指出本发明的上述和其他特征,包括各种新颖的配置细节和部分的组合以及其他优点。应理解,体现本发明的特定方法和装置是通过说明的方式中示出的,而不是作为对本发明的限制。在不脱离本发明的范围的情况下,本发明的原理和特征可以用于各种各样的实施例中。

附图说明

在附图中,在不同的视图中,附图标记指代相同的部分。附图不一定按比例;相反,重点放在说明本发明的原理上。在附图中:

图1是示出用户手持正在执行增强现实(AR)应用的移动用户计算装置的示意性侧视图;

图2是根据本发明显示来自增强现实应用的AR场景的移动计算装置的示意图,示出了AR场景与用户视野和视点内的现实世界场景的混合;

图3是示出与本发明相关的包括装置的传感器组件中的基于事件的视觉传感器的移动计算装置的部件的框图;

图4是示出AR应用的操作及其使用来自前传感器组件和后传感器组件的信息的流程图;

图5是示出使用前基于事件的视觉传感器来执行对用户的视点的跟踪的流程图;

图6是示出使用后基于事件的视觉传感器来执行场景映射的流程图;

图7是示出使用后基于事件的视觉传感器来执行装置姿态估计的流程图;

图8是示出用于基于事件的视觉传感器的像素电路的部件和连接的电路图;以及

图9是示出了基于事件的视觉传感器的布局的示意图,其中像素以行和列的二维事件像素阵列布置。

具体实施方式

现在将在下文中参考附图更全面地描述本发明,在附图中示出了本发明的说明性实施例。然而,本公开可以以许多不同的形式实施,并且不应被解释为局限于本文阐述的实施例;相反,提供这些实施例是为了使本公开彻底和完整,并且将本公开的范围完全传达给本领域技术人员。

如本文所使用的,术语“和/或”包括一个或多个相关联的列出项目的任何和所有组合。此外,除非另有明确说明,单数形式和冠词“一”、“一个”和“所述”也意图包括复数形式。还将理解的是,当在本说明书中使用时,术语包括、包含、含有和/或具有指定了所陈述的特征、整数、步骤、操作、元件和/或部件的存在,但是不排除一个或多个其他特征、整数、步骤、操作、元件、部件和/或其组的存在或添加。此外,应理解,当包括部件或子系统的部件被称为和/或被示出为连接或联接到另一个部件时,它可以直接连接或联接到另一个部件,或者可以存在中间元件。

除非另有限定,本文使用的所有术语(包括技术和科学术语)具有与本发明所属领域的普通技术人员通常理解的含义相同的含义。还应理解,术语,诸如那些在常用词典中限定的术语,应被解释为具有与它们在相关领域的上下文中的含义一致的含义,并且除非本文明确限定,否则不会以理想化或过于正式的意义来解释。

图1描绘了典型的场景。用户1观察由用户的视野12表征的周围环境。在所示示例中,在用户的视野12内是用户装置10。

在典型示例中,用户装置10是移动计算装置,诸如智能手机或平板计算装置。其他装置包括电视、透明显示器(透视显示器)、光场显示器、全息显示器、基于投影仪的系统、3d显示器、立体显示器和汽车平视显示系统。

通常,移动计算装置10通常具有触摸屏显示器110。并且,对于此类装置来说也是常见的,用户装置10包括前传感器组件120和后传感器组件130。

前传感器组件120和后传感器组件130具有相应的视野128、138。这些视野128、138的特征在于在这些传感器组件120、130的每一个中包括的各种传感器的视野。在许多情况下,这些组件的各个传感器可以具有相应更宽或更窄的视野。然而,出于以下描述的目的,视野被共同对待,并且大体上彼此同延。

在所示示例中,用户装置10与用户1的视野12的一部分相交。因此,某些现实世界对象(诸如现实世界立方体116)将在其遮挡用户视野12的一部分时被用户装置10的主体完全或部分遮挡。然而,该现实世界对象116的一部分116-1仍然可由用户在装置10的边缘周围直接观察到。

典型示例中的用户装置10执行增强现实应用。因此,另外的虚拟对象114将由在用户装置10上执行AR应用生成,并且显示在显示器110上。

在大多数AR应用中,渲染在计算装置10的显示器110上的AR场景112将是由后传感器组件130的相机捕获的现实世界对象116与由AR应用生成并且渲染在AR场景112中的虚拟对象114的组合。

与显示器110从后传感器组件130的视角显示AR场景112的装置视角渲染相反,透明智能手机AR应用采用用户视角渲染,这使得当从用户1的视点14观察时,显示器110上的AR场景112与现实世界场景16混合。因此,AR场景112的内容由用户视角渲染视野111限定,用户视角渲染视野111被限定为当从用户视点14观察时被显示器110遮挡的场景部分。

通常,用户的视点是故意不特定于眼睛的,因为它可以是右边、左边或者甚至在用户的眼睛之间。视点也可在运行时间期间改变,例如,根据用户到显示器110的距离。如果关闭,则在装置10上执行的应用可以选择特定的眼睛(优势眼)。此外,一些显示器,例如3D显示器,可能需要两个视点(左眼和右眼)。

图2从用户1的角度示出了用户装置110。渲染在显示器110上的AR场景112包括由后传感器组件130捕获的背景AR场景。同时,AR场景112包含已经与现实对象116一起渲染的虚拟对象114。

在该用户视角显示中,现实世界对象116可能在用户的视野内是部分可观察的116-1。这些现实世界对象以混合方式显示,使得从用户1的角度来看,现实世界对象将显示在AR场景112内,使得它们与那些可直接观察到的对象的其他部分混合。此外,场景118的其他特征将与在AR场景112中显示的场景的那些相同部分形成连续场景的一部分,以产生装置10透明的错觉。

图3示出了用户装置10的基本框图。

它包括处理器组件150。这通常包括中央处理单元和可能的图形处理单元。此外,处理器组件将包括随机存取存储器和程序存储器。通常,AR应用115将被加载到处理器组件150的程序存储器中以供中央处理单元执行。

此外,装置10还通常包括惯性测量单元(IMU)152。通常,这些IMU包括磁力计、加速度计和陀螺仪。这些用于通过确定用户装置10在地球重力场中的取向以及旋转和平移移动来确定用户装置10的姿态。

还示出了示例性前传感器组件120和后传感器组件130。在典型示例中,前传感器组件包括前基于事件的视觉传感器122、前图像传感器(诸如CMOS图像传感器124)和前深度传感器126。类似地,后传感器组件130包括后基于事件的视觉传感器132、后图像传感器134和后深度传感器136。

更通常地,用于前传感器组件120的可能的深度传感器技术的列表包括但不限于结构化光源和图像传感器、飞行时间(ToF)深度传感器、激光雷达、雷达、立体相机系统、基于立体事件的视觉传感器系统以及后者的所有可能组合。

后传感器组件130中可能的传感器列表可能包括(不限于)结构化光源和图像传感器系统、ToF传感器、激光雷达、雷达、立体相机系统和基于立体事件的视觉传感器系统。

处理器组件150通常经由集成的图形处理单元驱动显示器110专门渲染由AR应用115生成的AR场景112。

图4是示出AR应用115的操作以生成与现实世界场景16混合的AR场景112的流程图。通常,AR应用115必须解析由前传感器组件120捕获的用户视点、装置10的姿态,并且映射由后传感器组件130捕获的现实世界场景16。

子方法(虚线框)通常在单独的线程中运行并且以不同的更新频率运行,但它们也可以按顺序运行。可以使用现有技术的计算机图形理论和方法来执行用于场景的用户视角渲染的渲染和显示方法。

渲染和显示方法可以采用机器学习方法来更无缝地将显示与场景混合。该方法可以使用例如像CNN这种深度神经网络来调整显示像素亮度、对比度或其他特性。场景映射图图像的渲染也可以使用机器学习(例如CNN)来改善或完全执行。一种可能的训练方法可以是在用户的眼睛之间安装相机(例如使用眼镜),然后优化从屏幕图像到背景图像的过渡的平滑度。

更详细地,在步骤410中,AR应用115使用前传感器组件120跟踪用户相对于显示器110的视点位置。

通常同时,在步骤420中,AR应用115基于来自惯性测量单元(IMU)152和/或来自后传感器组件130的数据,更新装置10相对于现实世界场景16的解析姿态。

此外,通常并行地,在步骤424中,AR应用115还从后传感器组件120接收诸如图像的信息,并且更新场景映射图。

在步骤430中,在步骤430中从用户视角解析AR场景112,然后在步骤440中将所述AR场景112提供给显示器110。

图5分解了图4的视点跟踪步骤410。

更详细地,基于事件的视觉传感器数据是从前传感器组件120的基于事件的视觉传感器122接收的。然后,在步骤512中,分析该数据以确定用户视点是否已经移位。例如,处理器组件150分析数据,以通过确定眼睛移动来确定用户的视线是否已经移动。如果在步骤512中对来自前基于事件的视觉传感器122的信息的分析表明没有视点改变,则不需要对用户的视点进行更新。

例如,这些步骤基于对特定感兴趣区域中的事件计数或事件率的观察,以决定是否有必要进行跟踪更新。这有助于节省电力,因为更昂贵的跟踪算法和来自其他传感器的潜在读数仅在必要时执行。

整个方法可以以固定的频率执行,或者对于每个事件或每第N个事件(其中N可以随着方法的不同执行而变化)或每个事件包或利用任何其他合适的策略异步执行。

另一个方面,如果在步骤512中确定视点已经移位,则在步骤514中,在步骤516中从前传感器组件120获取另外的数据。具体地,深度传感器124通常被激活,以确定用户是否已经移动他们的头部来改变他们的注视方向和视点。此外,用户的图像通常由前图像传感器124捕获。分析这些图像以确定用户1的视点是否已经改变并且确定用户的新视点是什么。然后,在步骤518中,使用来自前传感器组件122的数据相对于显示器更新和跟踪用户的视点位置。在步骤520中,向AR应用115提供新的视点位置,使得AR场景112可以更新,使得它与现实世界场景16混合。

通常,跟踪可以仅基于事件或者基于事件数据和其他传感器数据。在一个实施例中,在跟踪开始时和/或周期性地,人们将获取另外的前图像传感器和前深度传感器数据,用于视点的检测和/或增强跟踪过程。在这两者之间,视点跟踪仅基于采用最先进的跟踪算法的基于事件的视觉传感器数据而发生,由于基于事件的视觉传感器的低延迟和高频率数据读出,这允许非常高的更新速率和低更新延迟。

图6示出了图4的场景映射步骤424的细节。

更详细地,在步骤610中,在处理器组件150上执行AR应用接收来自后基于事件的视觉传感器132的后传感器组件数据。

优选地,代替以后传感器组件130的恒定读出速率映射场景,该方法仅在后传感器组件130观察到的现实世界场景12由于场景中的对象或设备本身的运动而改变时触发昂贵的传感器读数和软件更新。基于事件的视觉传感器数据用于以高频率和低延迟感测对象运动。

整个方法可以以固定的频率执行,或者对于每个事件或每第N个事件(其中N可以随着方法的不同执行而变化)或每个事件包或利用任何其他合适的策略异步执行。

在步骤616处,处理器组件处理设备运动和姿态估计信息。

在步骤612中,AR应用112识别现实世界场景16内的各种对象,并且使用来自后基于事件的视觉传感器132的数据和在步骤616中获得的估计的设备运动以及当前AR场景映射图来估计它们的运动。

在步骤614中,AR应用评估现实世界场景16中的对象126是否已经移动。同时,在步骤618中,基于设备运动确定是否需要映射图更新。

在这两种情况中的任一种情况下,在步骤620和步骤622中,确定是否需要另外的数据,并且从后传感器组件获取所述数据。根据该信息,在步骤624中,AR场景映射图被更新,并且在步骤626中,它被提供给AR应用115,使得AR场景112可以更新,使得它与现实世界场景16混合。

图7示出了图4的步骤420的装置姿态估计方法的细节。

通常,最先进的SLAM(同步定位和映射)方法用于估计设备在空间中的位置。SLAM方法根据IMU读数不断估计设备运动。为了减小由集成易受噪声影响的IMU测量读数而导致的姿态估计漂移,SLAM方法周期性地需要来自传感器的另外的测量以允许绝对位置的测量。基于事件的视觉传感器数据可以用于此目的,例如,通过使用允许在空间中对相机的位置进行估计的现有技术的算法(强度图像和/或梯度图像和/或边缘图像和/或事件累积图像)来创建图像帧。基于事件的视觉传感器的高更新速率特性允许非常高的姿态更新速率,这在设备的快速运动期间是有益的。此外,通过采用该事件来消除CMOS传感器图像上的运动模糊,该事件可以用于增强来自其他传感器(例如CMOS图像传感器)的传感器数据。此外,在没有IMU数据可用的情况下,事件可以用于给SLAM方法提供关于装置自我运动的队列。此外,事件数据揭示了场景中移动对象的SLAM管线信息,这可以使SLAM方法更加稳健。

整个方法可以以固定的频率或每第N个IMU读数执行,或者对于每个事件或每第N个事件(其中N可以随方法的不同执行而变化)或每个事件包或任何其他合适的策略异步执行。

更详细地,在步骤710中,AR应用115从IMU 152和/或从后基于事件的视觉传感器132接收信息。然后在步骤712中,确定是否需要更新装置10的姿态。

如果需要更新,则在步骤720和722中获取来自包括后基于事件的视觉传感器132的后传感器组件的另外的数据。在步骤730中,改信息和/或IMU数据用于更新姿态的估计。最后,在步骤740中,向场景映射方法和渲染方法提供新的设备姿态更新。

作为背景,图8示出了针对基于事件的视觉传感器122、132的一个可能的像素电路100的部件。

像素电路100的主要部件列举如下。

1.光感受器模块。如图中示出的,像素电路包含:光电二极管PD或其他光电传感器,其用于测量入射光9并且将光强度转换为电流Iphoto;光感受器电路PRC,其用于根据光强度生成光感受器信号Vpr;以及存储器电容器C1,其存储过去的光感受器信号。光电传感器PD和光感受器电路PRC构成光感受器模块PR。

2.存储器电容器C1:接收光感受器信号Vpr,使得电容器的第一极板携载电荷,电荷响应光感受器信号Vpr,并且因此响应由光电传感器PD接收到的光。存储器电容器C1的第二极板连接到A1的比较器节点(反相输入)。因此,比较器节点的电压Vdiff随着光感受器信号Vpr的变化而变化。

3.比较器A1:这是一种将当前光感受器信号Vpr和过去的光感受器信号之间的差异与阈值进行比较的方法。该比较器A1可在每个像素中,或者在像素的子集(例如,列)之间共享。在优选实施例中,比较器将集成到像素中,每个像素具有专用的比较器A1。

4.存储器:存储器50基于来自控制器60的采样信号存储比较器输出。存储器可以是采样电路(例如开关和寄生或显式电容器)或数字存储器电路(锁存器或触发器)。在一个实施例中,存储器将是采样电路,并且每个像素将具有两个存储器。

5.条件复位电路Rl:复位条件是存储的比较器输出状态和控制器施加的复位信号的组合。

6.外围电路部件:比较器A1和存储器50可以位于像素中或外围电路中(在像素电路之外)。

外围电路包含控制器60,控制器60向比较器A1施加阈值信号,向存储器50发送控制信号,并且选择条件复位电路R1变为激活的时间。

外围电路还可以包含读出电路RO,读出电路RO读取存储器50的内容,确定给定像素的光强度是否已经增加、减少或不变,并且将输出(根据当前存储器值计算)发送到处理器。

通常,OFF事件是给定像素的光强度的离散降低。另一个方面,ON事件是给定像素的光强度的离散增加。

更详细地,比较器会告知光线是否增加/减少。对于OFF事件:如果Vdiff低于阈值Voff(在Vb上),则比较器输出为高电平,并且该电平存储在存储器中。这意味着检测到减少。如果Vdiff不低于阈值,则比较器输出为低:未检测到下降。

唯一的困难是,对于ON事件,低比较器输出意味着增加,而高意味着没有变化;但是对于OFF事件,高比较器输出意味着减小,而低意味着没有变化。

因此读出必须知道存储器内容和应用了哪个阈值。或者,如在稍后描述的优选实施例中,存在用于ON的反相器,使得存储器极性对于开和关两者都是相同的。

在本发明的像素电路100的一个优选实施例中,每个像素电路100仅包含一个比较器,所述一个比较器顺序地首先作为ON事件的比较器,然后作为OFF事件的比较器(或反之亦然)。

像素电路100和控制器60如下操作。

光电传感器PD接收到的光强度的变化将转化为光感受器信号Vpr的变化。当复位电路R1不导通时,Vpr的变化也将反映在比较器A1的反相输入端(-)处的比较器节点处的电压Vdiff中。这是因为存储器电容器C1两端的电压保持恒定。

在由控制器60选定的时间,比较器A1将存储器电容器C1的第二端子处的比较器节点处的电压(Vdiff)与施加到比较器A1的非反相输入端(+)的阈值电压Vb(来自控制器)进行比较。

控制器60操作存储器50来存储比较器输出Vcomp。如图中示出的,存储器50通常被实现为像素电路100的一部分。然而,在其他实施例中,存储器50被实现为列逻辑电路(外围电路,像素阵列的每列一个)的一部分。

如果保存在存储器50中的存储的比较器输出的状态指示光强度的变化并且来自控制器60的全局复位信号GlobalReset信号有效,则条件复位电路R1导通。这里“AND”指示逻辑AND运算符。当条件复位电路R1处于导通状态时,比较器A1反相输入端的比较器节点上的电压(Vdiff)被复位到已知电平。因此,它将当前光感受器信号Vpr存储在存储器电容器C1上。

图9示出了示例性基于事件的视觉传感器122、132,其包括像素100-1至100-6的二维阵列。示出的传感器仅显示了两行和三列以避免使图形混乱。实际上,传感器122、132将包括m行(通常远大于2)和n列(通常远大于3)的像素。二维阵列中的像素可以通过作为像素的行号和列号的地址来识别。例如,像素100-6使得第2行(从顶部计数)和第3列(从左侧计数)作为其地址。

控制器60控制像素100和其他部件,诸如行选择电路40、读出电路42,以及从阵列到处理器部件150和可能的处理基于事件的视觉传感器的低功率协处理器的数据传输。

在示出的示例中,行选择电路40被示出为控制器60的一部分。该行选择电路40选择一个或多个行子集。当选择一行像素100时,选定行中像素的比较器输出被传送到读出电路42。

读出电路42从像素阵列读取数据(存储的比较器输出)。读出电路42通常会在传输到处理器组件150之前进一步将该数据编码成更高效的表示。

读出电路42被分成若干列逻辑电路44-1至44-n,其中有n列,读出电路42根据读取的比较器输出确定对应像素的光强度是否已经增加、减少或保持不变。

尽管已经参考本发明的优选实施例具体示出并且描述了本发明,但是本领域技术人员将理解,在不脱离由所附权利要求书包含的本发明的范围的情况下,可在形式和细节上进行各种改变。

相关技术
  • 透明智能手机
  • 一种基于透明液晶显示屏的智能手机及交互方法
技术分类

06120113236199