首页> 中国专利> 用于2D/3D空间特征处理的系统

用于2D/3D空间特征处理的系统

摘要

一种电子设备(100)包括第一处理器(802)和耦合到第一处理器的第二处理器(804)。第一处理器(802)从第一成像相机(114、116)接收图像数据,并且确定表示从图像数据识别的一个或多个二维(2D)空间特征的2D空间特征数据。第二处理器(804)确定表示基于2D空间特征数据识别的一个或多个三维(3D)空间特征的3D空间特征数据。此外,第一处理器(802)可以在接收到整个图像帧之前,根据图像帧的一部分发起对一个或多个2D空间特征的检测。

著录项

  • 公开/公告号CN105408938A

    专利类型发明专利

  • 公开/公告日2016-03-16

    原文格式PDF

  • 申请/专利权人 谷歌技术控股有限责任公司;

    申请/专利号CN201480024200.9

  • 发明设计人 J.李;

    申请日2014-01-23

  • 分类号G06T7/00(20060101);H04N13/00(20060101);H04N13/02(20060101);

  • 代理机构11105 北京市柳沈律师事务所;

  • 代理人邵亚丽

  • 地址 美国加利福尼亚州

  • 入库时间 2023-12-18 14:59:01

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-05-15

    授权

    授权

  • 2016-04-13

    实质审查的生效 IPC(主分类):G06T7/00 申请日:20140123

    实质审查的生效

  • 2016-03-16

    公开

    公开

说明书

技术领域

本公开一般涉及图像捕捉和处理,而且更具体地,涉及使用所捕捉的图 像的机器视觉。

背景技术

诸如同步定位和地图构建(simultaneouslocalizationandmapping, SLAM)、增强现实(augmentedreality,AR)和虚拟现实(virtualreality,VR) 的机器视觉技术经常依赖于通过对由设备捕捉的本地环境的图像的分析的对 设备的本地环境内的对象的识别。这种分析传统上由图形处理单元(GPU) 逐帧地执行,这可导致图像捕捉和特征识别之间的显著滞后,这又会严重影 响设备对于设备的位置或取向的改变或本地环境的改变的感知响应度。

附图说明

本领域技术人员通过参考附图可以更好地理解本公开,并且本公开的许 多特征和优点对于本领域技术人员来说变得清楚。在不同的图中使用相同的 参考标记指示相似的或相同的项目。

图1是图示出根据本公开的至少一个实施例的被配置为使用图像传感器 数据和非图像传感器数据来确定本地环境中的相对位置/取向的电子设备的 图。

图2是图示出根据本公开的至少一个实施例的实施多个成像相机和深度 传感器的电子设备的前平面图的图。

图3是图示出根据本公开的至少一个实施例的图2的电子设备的后平面 图的图。

图4是图示出根据本公开的至少一个实施例的图2的电子设备的截面图 的图。

图5是图示出根据本公开的至少一个实施例的基于准直镜头的调制光投 影器的截面图的图。

图6是图示出根据本公开的至少一个实施例的基于垂直腔表面发射激光 器(vertical-cavitysurface-emittinglaser,VCSEL)二极管的调制光投影器的 截面图的图。

图7是图示出根据本公开的至少一个实施例的基于图像传感器数据和非 图像传感器数据来确定电子设备在本地环境中的相对位置/取向的电子设备 的操作的流程图。

图8是图示出根据本公开的至少一个实施例的用于从捕捉的本地环境的 图像确定二维(2D)和三维(3D)空间特征数据的电子设备的处理系统的框 图。

图9是图示出根据本公开的至少一个实施例的用于2D和3D空间特征提 取的图8的处理系统的操作的流程图。

图10是图示出根据本公开的至少一个实施例的基于调制光的深度传感 器的操作的流程图。

图11是图示出根据本公开的至少一个实施例的用于控制基于调制光的 深度传感器的激活配置的方法的流程图。

图12是图示出根据本公开的至少一个实施例的用于基于调制光投射来 控制可见光图像帧的显示的方法的流程图。

具体实施方式

以下描述旨在通过提供多个特定实施例和细节来传达对本公开的透彻理 解,所述多个特定实施例和细节涉及基于对电子设备的本地环境中的对象的 基于图像的识别,来确定电子设备的相对位置或相对取向。然而,要理解, 本公开并不限于这些特定实施例和细节,它们仅仅是示例,并且相应地本公 开的范围旨在仅由所附权利要求及其等同物来限定。还要理解,本领域普通 技术处理人员根据已知的系统和方法取决于特定设计和其它需要将会理解在 任何数目的可替换实施例中针对其意图的目的和益处而对本公开的使用。

图1至图12图示了用于确定电子设备在本地环境内的相对位置或相对取 向从而支持基于位置的功能,诸如增强现实(AR)功能、视觉测程(odometry) 或其它同步定位和地图构建(simultaneouslocalizationandmapping,SLAM) 功能等等的各种技术。术语“位置/取向”在本文中被用于指位置和取向中的 任一个或这两者。在一些实施例中,电子设备包括布置在表面的两个或更多 个成像相机以及深度传感器。两个或更多个成像相机可以被用于捕捉电子设 备的本地环境的多视图图像,并且根据这个信息,电子设备可以识别表示本 地环境中的对象以及它们距电子设备的距离的空间特征。此外,深度传感器 可以被用于将所识别的空间特征的距离确定为对根据分析多视图图像而提供 的深度计算的替换或者增强。电子设备还可以在面向用户的表面上包括另外 的成像相机,从而便利于头部追踪或面部识别或者获得本地环境的附加图像。

对于对象在本地环境中的相对位置/取向的识别可以被用来支持电子设 备的各种基于位置的功能。为了说明,在一些实施例中,对象在本地环境中 的相对位置连同诸如来自陀螺仪的取向读数的非图像传感器数据一起被用来 确定电子设备在本地环境中的相对位置/取向。电子设备的相对位置/取向可以 被用来便利于视觉测程、室内导航或其它SLAM功能。此外,电子设备的相 对位置/取向可以被用来基于电子设备的相对位置和取向,并且还可以基于用 户的头部或眼睛相对于电子设备的位置或取向,来支持增强现实(AR)功能, 诸如由电子设备所捕捉的图像的显示中的附加信息的图形覆盖。在一些实施 例中,电子设备确定其相对于本地环境而非相对于固定的或限定的定位参考 的位置/取向,因此不依赖于诸如全球定位系统(GPS)信息、蜂窝三角测量 信息等的外部定位信息。因此,该电子设备可以在GPS信令或蜂窝信令较弱 或不存在的位置中提供基于位置的功能。

在至少一个实施例中,电子设备的深度传感器被实施为调制光投影器以 及成像相机中的一个或多个。调制光投影器将经编码的、结构化的或以其它 方式调制的光——典型的是红外光——投射到本地环境中,并且一个或多个 成像相机捕捉从对象反射的调制光,并且根据该反射光可以确定对象距电子 设备的距离。由于调制光投影器可以在投射时消耗显著的电力,因此本公开 描述了用于选择性启用和控制深度传感器从而减少电力消耗的各种技术。

本文中进一步描述的是用于分析图像传感器数据和非图像传感器数据以 有效地识别电子设备的本地环境的图像的2D和3D空间特征、并且用于使用 这些识别的空间特征来提供基于位置的功能的处理架构。在至少一个实施例 中,处理架构利用至少两个处理器,包括用于从由一个或多个成像相机捕捉 的图像数据识别2D空间特征的一个处理器,以及用于所识别的2D空间特征 来识别3D空间特征的另一处理器。此外,识别2D空间特征的处理器可以被 配置为当从成像相机流传输图像数据时识别2D空间特征并且当识别出2D空 间特征时将2D空间特征流传输到其它处理器,从而减少了空间特征检测中 的延迟,否则将导致在开始空间特征检测之前等待缓冲整个图像帧。

图1图示了根据本公开的至少一个实施例的被配置为使用图像和非图像 传感器数据来支持基于位置的功能(诸如SLAM或AR)的电子设备100。电 子设备100可以包括便携式用户设备,诸如平板计算机、具备计算功能的蜂 窝电话(例如,“智能电话”)、笔记本计算机、个人数字助理(PDA)、游戏 系统远程控制、电视远程控制等。在其它实施例中,电子设备100可以包括 固定设备,诸如医疗成像设备、安全成像相机系统、工业机器人控制系统、 无人机控制系统等等。为了便于说明,电子设备100在本文中一般在诸如平 板计算机或智能电话的便携式用户设备的示例场景中描述;然而,电子设备 100不限于这些示例实施方式。

在所描绘的示例中,电子设备100包括壳体102,其具有与另一表面106 相对的表面104。在所描绘的薄矩形框外形因子的示例中,表面104和106 基本上平行,并且壳体102还在表面104和表面106之间包括四个侧表面(顶 部、底部、左侧和右侧)。壳体102可以以许多其它外形因子来实施,并且表 面104和106可以具有非平行的取向。对于所图示的平板实施方式,电子设 备100包括布置在表面104的用于向用户110呈现视觉信息的显示器108。 因此,为了便于参考,当相对于用户110反映电子设备100的这个示例取向 时,表面106在本文中被称为“面向前方的”表面,并且表面104在本文中 被称为“面向用户的”表面,尽管这些表面的取向并不受这些关系性名称的 限制。

电子设备100包括多个传感器,以获得关于电子设备100的本地环境112 的信息。电子设备100经由布置在面向前方的表面106的成像相机114和116 及深度传感器120和布置在面向用户的表面104的成像相机118来获得本地 环境112的视觉信息(图像)。在一个实施例中,成像相机114被实施为具有 鱼眼镜头或其它广角镜头的广角成像相机,以提供面向表面106的本地环境 112的更广角的视图。成像相机116被实施为具有典型视角镜头的窄角成像相 机,以提供面向表面106的本地环境112的更窄角的视图。因此,成像相机 114和成像相机116在本文中也分别被称为“广角成像相机114”和“窄角成 像相机116”。如下面更详细描述的,广角成像相机114和窄角成像相机116 可以被定位和定向在面向前方的表面106上,以使得它们的视场从距电子设 备100指定的距离处开始重叠,由此使得能够经由多视图图像分析来感测本 地环境112中的、位于视场重叠的区域中的对象的深度。成像相机118可以 被用于捕捉面向表面104的本地环境112的图像数据。此外,在一些实施例 中,成像相机118被配置用于追踪头部122的移动或用于面部识别,因此提 供可以被用于调整经由显示器108呈现的图像的视图透视(perspective)的头 部追踪信息。

除了支持位置和取向检测以外,成像相机114、116和118中的一个或多 个还可以为电子设备100提供其它成像功能。为了说明,窄角成像相机116 可以被配置或被优化用于由用户发起的图像捕捉,诸如用于捕捉消费级图片 和视频,如经常在智能电话和平板计算机中进行的那样,并且成像相机118 可以被配置或被优化用于视频会议或视频电话,也如经常在智能电话和平板 计算机中进行的那样,而广角成像相机114可以主要被配置用于机器视觉图 像捕捉,以用于位置检测。相比于聚焦于例如像素分辨率的用户为中心的相 机配置,这种特定于机器视觉的配置可以优化光敏感度、镜头畸变、帧速率、 全局快门能力、和从图像传感器更快的数据读取。

在一个实施例中,深度传感器120使用调制光投影器119将调制光图案 从面向前方的表面106投射到本地环境中,并当调制光图案从本地环境112 中的对象反射回来时使用成像相机114和116中的一个或两个来捕捉调制光 图案的反射。这些调制光图案可以或者是空间调制光图案或者是时间调制光 图案。捕捉的调制光图案的反射在本文中被称为“深度图像”。深度传感器 120然后可以基于对深度图像的分析来计算对象的深度,即,对象距电子设 备100的距离。可以使用从深度传感器120获得的结果深度数据来校准或以 其它方式增强对由成像相机114和116捕捉的图像数据进行多视图分析(例 如,立体分析)所获得的深度信息。可替换地,来自深度传感器120的深度 数据可以代替从多视图分析所获得的深度信息来使用。为了说明,多视图分 析通常更适合于明亮的照明条件以及当对象相对较远时,而基于调制光的深 度感测更适合于较低光的条件或者当观察的对象相对较近(例如,在4-5米 内)时。因此,当电子设备100感测到其在户外或以其它方式在相对良好的 照明条件下时,电子设备100可以选择使用多视图分析来确定对象深度。相 反,当电子设备100感测到其在室内或以其它方式在相对较差的照明条件下 时,电子设备100可以切换到使用经由深度传感器120的基于调制光的深度 感测。

电子设备100还可以依赖于用于位置/取向检测的非图像信息。这个非图 像信息可以由电子设备100经由一个或多个非图像传感器(在图1中未示出), 诸如陀螺仪或环境光传感器来获得。非图像传感器还可以包括用户接口组件, 诸如键区(例如,触摸屏或键盘)、麦克风、鼠标等。表示电子设备100在给 定的时间点的状态的非图像传感器信息被称为电子设备在该时间点的“当前 场景”。这个当前场景可以包括显式场景,诸如电子设备100的相对旋转取向 或者从本地环境112入射到电子设备100上的环境光。当前场景还可以包括 隐式场景信息,诸如从日历信息或时钟信息推断的信息、或者从用户与电子 设备100的交互所推断的信息。用户的交互可以包括用户的被观察到的过去 行为(例如,对用户工作日的通勤路径和时间的确定)、用户最近进行的搜索 查询、电子邮件的关键词搜索或其它分析、文本消息、或其它用户通信或者 用户发起的操作等等。

在操作中,电子设备100使用图像传感器数据和非图像传感器数据来确 定电子设备100的相对位置/取向,即,相对于本地环境112的位置/取向。在 至少一个实施例中,对相对位置/取向的确定基于对由成像相机114、116和 118中的一个或多个所捕捉的图像数据中的空间特征的检测,以及对电子设 备100相对于检测到的空间特征的位置/取向的确定。为了说明,在图1中所 描绘的示例中,本地环境112包括办公楼的走廊,该办公楼包括三个角落124、 126和128、底板130和电插座132。用户110已经定位并定向电子设备100, 以使得面向前方的成像相机114和116分别捕捉包括走廊的这些空间特征的 广角成像相机图像数据134和窄角相机成像图像数据136。在本示例中,深 度传感器120还捕捉深度数据138,其反映了这些空间特征相对于电子设备 100的当前位置/取向的相对距离。此外,面向用户的成像相机118针对用户 110的头部122的当前位置/取向捕捉表示头部追踪数据140的图像数据。非 图像传感器数据142,诸如来自陀螺仪、磁力计、环境光传感器、键区、麦 克风的读数,也由电子设备100在其当前位置/取向中收集。

在没有来自外部源的显式绝对定位信息的情况下,电子设备100可以根 据此输入数据确定其相对位置/取向。为了说明,电子设备100可以执行对广 角成像相机图像数据134和窄角成像相机图像数据136的多视图分析,以确 定电子设备100和角落124、126、128之间的距离。可替换地,从深度传感 器120获得的深度数据138可以被用来确定空间特征的距离。根据这些距离, 电子设备100可以以三角测量或以其它方式推断其在由本地环境112所表示 的办公室中的相对位置。作为另一示例,电子设备100可以识别在图像数据 134和136的一组捕捉的图像帧中存在的空间特征,确定到这些空间特征的 初始距离,然后在随后捕捉的图像中追踪这些空间特征的位置和距离的改变 以确定电子设备100的位置/取向的改变。在这种方法中,某些非图像传感器 数据,诸如陀螺仪数据或加速计数据,可以被用于使在一个图像帧中观察到 的空间特征与在随后的图像帧中观察的空间特征相关。

电子设备100从由成像相机114、116和118捕捉的图像数据所获得的相 对位置/取向信息可以被用于支持多种基于位置的功能中的任何一种。相对位 置/取向信息可以被电子设备100用于支持视觉测程或其它SLAM功能。作为 示例,电子设备100可以地图构建本地环境112,然后使用这个地图构建来 便利于用户导航经过本地环境112,诸如通过向用户显示根据地图构建信息 生成的平面图、和根据电子设备100的当前相对位置所确定的用户相对于平 面图的当前位置的指示符。

另外,通过电子设备100获得的相对位置/取向信息可以与补充信息144 组合以经由电子设备100的显示器108向用户110呈现本地环境112的增强 现实(AR)视图。这个补充信息144可以包括本地存储在电子设备100的或 电子设备100可以经由有线或无线网络远程访问的一个或多个AR数据库。

为了说明,在图1所描绘的示例中,本地数据库存储了用于嵌入在由本 地环境112所表示的办公室的墙壁内的电气布线的位置/取向计算机辅助绘图 (CAD)信息。因此,电子设备100可以经由成像相机116捕捉本地环境112 的视图的视频图像,如以上及此处所描述地确定电子设备100的相对取向/位 置,并且确定存在于本地环境的视图中的墙壁内的电气布线的位置和取向。 电子设备100然后可以生成具有相对于在视频图像中识别的相应空间特征 (例如,角落124、126和128)定位和定向的电气布线的视觉表示的图形覆 盖(graphicaloverlay)。如图1中所图示的,图形覆盖可以包括表示当前视图 中的电气布线的有色的虚线152和154、以及提供对电气布线的描述(诸如 布线类型)、与布线相关联的标识符、和由相应布线供电的建筑组件的描述气 球156和158。电子设备100然后在显示器108共同呈现图形覆盖和视频图 像,从而向用户110呈现由窄角成像相机116所捕捉的本地环境112的当前 视图内的电气布线的位置的图形表示160。当电子设备100相对于先前的视 图移动时,电子设备100更新图形覆盖从而反映改变的透视。此外,头部追 踪数据140可以被用于检测用户110的头部122的位置相对于显示器108的 改变,电子设备100可以响应于检测到的改变来调整所显示的图形表示160, 从而反映用户110相对于显示器108的改变的视角。

作为另一示例,可以经由电子设备100使用本地或远程AR数据库来便 利于室内导航。为了说明,本地环境112可以表示商场的内部,并且响应于 接收到指示希望定位某一商店的用户输入,电子设备100可以访问AR数据 库来确定该商店相对于其当前位置的位置。利用这个信息,电子设备100可 以在当前由成像相机114、116或118中的一个或多个所捕捉的视频图像的顶 部显示标识商店相对于电子设备100所指向的当前方向的方向(例如,经由 “右转”、“左转”、“继续直行”或“转身”箭头图形的显示)的图形覆盖。

相对位置/取向确定过程的另一示例应用例如可以包括缺失的/新的对象 检测,从而新的对象的出现或预先识别的对象的消失可以基于给定的相对位 置和取向的电子设备100的预期本地环境视图与在相同的位置/取向中的电子 设备100所捕捉的实际本地环境视图的比较来确定。如下所述,由预期环境 和实际遇到的环境之间的差异所引入的几何不确定性可以触发各种操作,包 括刷新操作,由此电子设备100发起对本地环境112的表现出改变的一部分 的重新地图构建。

图2和图3图示了根据本公开的至少一个实施例的平板外形因子的电子 设备100的示例实施方式的示例前平面图和后平面图。电子设备100可以以 其它外形因子来实施,诸如智能电话外形因子、医疗成像设备外形因子等, 它们实施类似于所图示的那些的配置。

如图2的前平面图200所图示的,电子设备100可以包括布置在面向用 户的表面104的显示器108、成像相机118和一个或多个用户接口组件,诸 如键区的触摸键202、204和206。此外,显示器108可以被实施为触摸屏显 示器,从而便利于经由用户与显示器108交互来进行用户输入和控制。

如图3的后平面图300所图示的,电子设备100可以包括布置在面向前 方的表面106的广角成像相机114、窄角成像相机116和调制光投影器119。 虽然图2和图3图示了沿直线对准的成像相机114、116和118以及调制光投 影器119以有益于图4中的示例截面图,但是成像相机114、116和118以及 调制光投影器119可以相对于彼此偏移。例如,调制光投影器119可以定位 在从成像相机114和116之间延伸的线偏移的位置,或者调制光投影器119 和广角成像相机114可以沿着与电子设备100的顶部边缘平行的线布置并且 窄角成像相机116可以在从这条线偏移的位置布置。此外,虽然调制光投影 器119被图示为定位在成像相机114和116之间,但是在其它实施方式中, 调制光投影器119可以被定位在成像相机114和116之一的外侧。

图4图示了根据本公开的至少一个实施例的沿着图2和图3的平面图中 描绘的线210的电子设备100的示例截面图400。如所图示的,电子设备100 包括在面向用户的表面104布置在壳体102中的孔402或其它开口中的面向 用户的成像相机118,并且包括在面向前方的表面106分别布置在壳体102 的孔404和406或其它开口中的广角成像相机114和窄角成像相机116。广角 成像相机114包括图像传感器408和布置在图像传感器408的感测表面上的 一个或多个镜头410。窄角成像相机116包括图像传感器412和布置在图像 传感器412的感测表面上的一个或多个镜头414。类似地,面向用户的成像 相机118包括图像传感器416和布置在图像传感器416的感测表面上的一个 或多个镜头418。

对于每个成像相机实施的镜头的类型取决于成像相机的意图的功能。在 一个实施例中,因为面向前方的成像镜头114意图用于特定于机器视觉的图 像以用于分析本地环境112,所以镜头410可以被实施为带有已知的高失真 的、具有例如160-180度之间的视角的广角镜头或鱼眼镜头。在一个实施例 中,面向前方的成像镜头116支持用户发起的图像捕捉,因此面向前方的成 像镜头116的镜头414可以被实施为水平地具有例如80-90之间的视角的窄 角镜头。注意,这些视角只是示例性的。除了支持本地环境成像或头部追踪 以外,面向用户的成像相机118也可以具有其它用途。例如,面向用户的成 像相机118还可以用于支持电子设备100的视频会议功能。因此,取决于应 用,面向用户的成像相机118的镜头418可以被实施为窄角镜头、广角镜头 或鱼眼镜头。

成像相机114、116和118的图像传感器408、412和416可以分别被实 施为基于电荷耦合器件(CCD)的传感器、互补金属氧化物半导体(CMOS) 有源像素传感器等。在基于CMOS的实施方式中,图像传感器可以包括滚动 快门传感器,由此图像传感器的像素传感器的一行或多行的群组被读出,同 时传感器上的所有其它行继续被曝光。这种方法的益处在于,由于更长的曝 光时间或更多的可用光敏感区域而提供增加的敏感度,但是缺点在于由于正 在帧中捕捉的是高速对象而经受失真。失真的效果可以通过在滚动快门中实 施全局复位机构以使得传感器上的所有像素同时而非逐行地开始收集电荷来 最小化。在基于CCD的实施方式中,图像传感器可以被实施为全局快门传感 器,由此传感器的所有像素在相同的时间曝光然后被转移到屏蔽区域,其然 后可以在下一图像帧被曝光时被读出。这种方法的益处在于更少经受失真, 但是负面在于由于每个像素所需的额外电子而导致普遍下降的敏感度。

在一些实施例中,广角成像相机114和窄角成像相机116的视场在区域 420中重叠,以使得区域420中的本地环境112(图1)中的对象在由广角成 像相机114捕捉的图像帧和同时由窄角成像相机116捕捉的图像帧二者中表 示,从而允许由电子设备100通过对两个同时发生的图像帧的多视图分析确 定区域420中的对象的深度。因此,面向前方的成像相机114和116被定位 在面向前方的表面106,以使得区域420覆盖意图的距离范围并且相对于电 子设备100扫描。此外,由于多视图分析依赖于视差现象,因此面向前方的 成像相机114和116被充分地分开以便为多视图分析提供足够的视差。

在截面图400中还图示了调制光投影器119的各种示例位置。调制光投 影器119在总体上垂直于表面106的方向上投射红外调制光图案424,并且 面向前方的成像相机114和116中的一个或两个被用来捕捉投射光图案424 的反射。在所描绘的示例中,调制光投影器119在面向前方的表面106被布 置在成像相机114和116之间的位置处。在其它实施例中,调制光投影器119 可以被布置在成像相机之一与壳体102的边缘之间的位置,诸如被布置在广 角成像相机114和壳体102的侧面之间的位置422,或者被布置在窄角成像 相机116和壳体102的侧面之间的位置(未示出)。

图5和图6图示了根据本公开的各种实施例的调制光投影器119的示例 实施方式。在两种情况下,调制光投影器119进行操作以投射调制光图案500, 其包括红外光,或者在某些情况下,包括具有特定颜色或一组颜色或特定频 率的可见光。在一些实施例中,调制光图案500包括空间调制光图案,诸如 DeBruijn序列的投射、光特征的M-阵列(诸如所图示的点502的矩阵,由此 点502是高光强度的区域)等。可以被实施的其它空间调制光图案例如包括 同心环图案或同心矩形图案、平行线、或平行和垂直线(即,网格)等。在 其它实施例中,调制光图案500包括时间调制(时间复用)的光图案序列, 诸如二进制码图案序列、n元码图案序列等。在时间调制的光应用中,深度 传感器120通过分析反射的光图案的相应序列,而不是通过单独分析任意反 射的图案,来确定深度数据。

将调制光图案500投射到电子设备100的本地环境中导致从本地环境中 的对象反射光。因为对象的表面距调制光投影器119的深度或距离影响入射 到该表面上的投射光的反射,所以电子设备100可以使用存在于调制光图案 500的反射中的图案失真来利用多种公知的调制光深度估计技术中的任何一 种确定对象表面的深度。可替换地,可以使用面向前方的成像相机114和116 两者来捕捉投射的调制光图案500的反射,并且可以对并行捕捉的深度图像 执行多视图图像分析以确定本地环境中的对象的深度。在其它实施例中,电 子设备100可以使用面向前方的成像相机114和116中的一个或者两个来作 为与调制光图案500的投射同步的飞行时间成像相机,由此电子设备100使 用多种公知的飞行时间深度算法中的任何一种计算所捕捉的反射中的对象的 深度。作为又一个示例,电子设备100可以采用高速曝光快门成像相机(或 者作为面向前方的成像相机114和116之一,或者作为单独的面向前方的成 像相机),其从来自调制光投影器119的红外光或近红外光的脉冲捕捉反射 光,从而针对传感器的每个像素收集的反射脉冲信号的量对应于深度范围内 从其反射脉冲的地方,因此可以被用于计算到主体对象上的相应点的距离。 可以从3DVSystems公司获得的ZCam(TM)成像相机是这种类型的基于成 像的深度传感器的商业实施方式的示例。

在图5的示例中,调制光投影器119被实施为边缘发射激光二极管504, 其朝向准直镜头506发射发散的IR激光,准直镜头506准直发散的激光并且 将准直的激光导向到衍射光学元件(DOE)508(也经常被称为“相息图 (kinoform)”),DOE508从准直的激光生成调制光图案500。在一个实施例 中,DOE508可以有效地用作光束分离器,以生成图案,诸如图5中所图示 的点502的阵列。

在图6的示例中,调制光投影器119是使用发射发散的激光的一个或多 个垂直腔表面发射激光器(VCSEL)二极管604的阵列来实施的。微镜头的 阵列606被布置在一个或多个VCSEL二极管604的发射表面,以用于准直和 聚焦来自VCSEL二极管604的激光。DOE608被布置在微镜头的阵列606 上,以将得到的准直激光投射为调制光图案500。与可比较的输出的边缘发 射激光二极管实施方式相比,图6的示例实施方式的益处在于,一般更薄并 且具有更低的电力消耗。在一些实施例中,调制光投影器119还可以包括布 置在DOE608上的聚焦镜头(未示出)。

图7图示了根据本公开的至少一个实施例的用于提供基于位置的功能的 电子设备100的操作的示例方法700。为了便于说明,方法700被描绘并且 被一般描述为可以重复循环的操作的单个回路。然而,并非所有的操作都必 须以相同的速率循环,如在下面详细描述的。要理解,取决于实施方式,图 7描绘的流程图的步骤可以以任何顺序来执行,并且某些步骤可以被消除, 和/或某些其它步骤可以被添加或重复。

方法700的迭代发起于对各个图像传感器数据和非图像传感器数据的捕 捉。在一个实施例中,对传感器数据的捕捉是通过由电子设备100的成像相 机114、116和118(图1)中的一个或多个对同时发生的图像帧的捕捉来触 发的或者以其它方式与之同步的。在其它实施例中,各种传感器数据可以周 期性地或以其它方式重复获得,然后使用时间戳或其它同步元数据来同步到 捕捉的图像数据。这个对传感器数据的捕捉可以包括在框702经由广角成像 相机114(图1)来捕捉本地环境112(图1)的广角视图(WAV)图像数据, 并且在框704经由窄角成像相机116来捕捉本地环境112的窄角视图(NAV) 图像数据。此外,在深度传感器120被激活的情况下,可以在框706经由深 度传感器120捕捉本地环境的深度数据。此外,可以在框708从面向用户的 成像相机118获得表示用户的头部122的当前位置的头部追踪数据。

在框710,电子设备100从一个或多个非图像传感器捕捉传感器数据。 为此,电子设备100可以实施多种非图像传感器中的任何一种,以便利于确 定电子设备100的相对位置/取向。这样的非图像传感器可以包括用于提供关 于电子设备100的相对位置、取向或速度的显式信息的陀螺仪、加速计、磁 力计、高度计和重力梯度仪中的一个或多个。非图像传感器还可以包括用于 提供本地环境112的场景的传感器,诸如感测入射到电子设备上的环境光的 程度的环境光传感器和感测本地环境的当前温度的温度计。此外,通过电子 设备100获得的非图像传感器数据可以包括隐式场景信息,诸如从用户对电 子设备100的键盘或触摸屏的操纵分辨的或者从由电子设备的麦克风100捕 捉的用户的语音分辨的关键字、搜索词或位置标记。用户的使用历史也可以 用作隐式场境信息。

应当注意,可以以不同的速率或频率读取不同的传感器。例如,对于成 像相机114、116和118的每N个图像帧的捕捉可以仅获取一次环境光读数, 而对于每个图像帧捕捉可以获取来自陀螺仪的六自由度(6DoF)读数,以使 得能够在捕捉相应图像帧时检测电子设备100的相对取向。更进一步地,可 以以比图像帧捕捉速率高得多的速率来获得加速计读数,从而便利于电子设 备100确定更准确的内部导航。

在框712,电子设备100使用捕捉的非图像传感器数据来确定电子设备 的当前场景100。当前场景统一表示电子设备100的非位置状态信息,其可 以便利于确定电子设备100的相对位置或可以便利于基于所确定的电子设备 的相对位置来呈现增强信息。这种状态信息可以包括显式状态信息,诸如从 各种非图像传感器收集到的状态信息。可以在当前场景中表示的显式状态信 息的示例可以包括:电子设备100的当前6DoF取向;电子设备100的当前 相对速度;入射到电子设备100上的当前环境光;当前时间、星期几或日历 日期;各种无线信令(例如,来自蜂窝基站或无线局域网接入点的信令)的 可用性或信号强度等。在当前场景中表示的状态信息还可以包括隐式状态信 息;即,从电子设备可用的其它信息意味的信息。隐式状态信息100的示例 可以包括:由用户经由键盘或触摸屏最近输入的文本的关键字搜索或关键词 分析;由用户经由电子设备100最近执行的网络搜索;与用户位置相关的习 惯的历史(例如,用户通勤上下班的历史);根据对存储在电子设备100或远 程位置的电子邮件或其它记录的分析的用户意图的目的地的暗示等等。

在框714,电子设备100分析所捕捉的图像传感器数据和深度数据,以 识别在所捕捉的图像中表示的本地环境112的空间特征。可以这样识别的空 间特征可以包括所捕捉的图像中的简单的结构,诸如边缘和角落或其它兴趣 点,或者可以包括更复杂的结构,诸如曲线、平面、斑点或全部对象。电子 设备100可以利用多种公知的数字图像处理技术中的任何一种来从所捕捉的 图像帧提取空间特征,诸如利用Canny边缘检测器或Sobel运算符来检测边 缘,利用FAST角点检测器或Harris和Stephens角点检测器来检测角落,或 利用高斯拉普拉斯(LaplacianofGaussian,LoG)或高斯差分(Differenceof Gaussian,DoG)检测器来检测角落或斑点对象。

电子设备100可以对于由广角成像相机114捕捉的广角视图(WAV)图 像帧、由窄角成像相机捕捉的窄角视图(NAV)图像帧、由面向用户的成像 相机118捕捉的图像帧、以及由深度传感器120捕捉的反射调制光图像帧(其 可以包括由面向前方的成像相机114和116之一捕捉的图像帧)中的一个或 多个执行空间特征检测过程。

对图像中的空间特征的识别提供了两维空间中的那些空间特征,即“2D 空间特征”的相对位置。为了将2D空间特征映射到第三维(即,距电子设 备100的距离或“深度”),也就是说,确定相应的“3D图像特征”,电子设 备100使用多视图图像分析或者利用深度传感器数据的分析中的一者或两者 来确定2D特征相对于电子设备100的深度。

为了多视图图像分析,电子设备100通过使用多种特征匹配技术中的任 何一种将在WAV图像帧中识别的空间特征与在相应NAV图像帧中识别的空 间特征进行匹配,然后基于两个图像帧之间的空间特征的位置移位以及基于 广角成像相机114的光轴与窄角成像相机116的光轴之间的距离来计算每个 空间特征的相对深度而依赖于视差现象。为了使用深度传感器数据来识别2D 特征的深度,电子设备100将在可见光图像帧中的至少一个(即,NAV图像 帧或WAV图像帧中的一个)中识别的空间特征与在深度传感器数据中识别的 空间特征进行匹配,并且电子设备100可以将所识别的可见光空间特征确定 为具有由从深度传感器数据匹配的空间特征所指示的深度距离。替代地或者 除了使用WAV图像帧或NAV图像帧以外,在一些实施例中,电子设备100 可以使用从WAV图像帧和NAV图像帧对准和组合(或“缝合”)所生成的对 准的(或“缝合的”)图像帧,如在下面参照框720所描述的。

利用在本地环境112的当前捕捉的图像中识别的3D空间特征,在框716, 电子设备100基于对3D空间特征的分析,确定或更新其当前的相对位置/取 向。在一个实施例中,电子设备100实施基于视觉测距的位置/取向检测过程, 由此电子设备100在通常被称为“光流估计”的过程中基于在当前捕捉的图 像和先前捕捉的图像之间的相同空间特征的位置移位来确定其相对于其先前 确定的位置/取向的新的位置/取向。用于光流估计的示例算法包括公知的 Lucas–Kanade方法,以及基于模板的方法或基于特征描述符匹配的方法。

在一些实施例中,电子设备100利用在框712确定的当前场景来辅助确 定当前位置/取向。在一些实施方式中,当前场景被用于验证或改进最初通过 图像分析确定的位置/取向读数。为了说明,电子设备100可以确定来自图像 分析的取向读数,然后使用来自陀螺仪传感器的最新的6DoF读数来验证基 于图像的取向读数的准确性。作为另一示例,电子设备100可以根据图像分 析确定当前位置,确定电子设备100从先前确定的位置过渡到当前位置将需 要行进的平均速度,然后利用来自加速计的一个或多个读数来验证这个估计 的速度,从而验证所估计的当前位置符合所测量的速度读数。在一些实施例 中,电子设备100利用在框712确定的当前场景来过滤在执行用于位置/取向 检测的图像分析中将被利用的图像数据。作为一个示例,电子设备100可以 使用来自陀螺仪的6DoF读数或者来自重力梯度仪的重力取向读数来确定电 子设备100的当前重力取向,并且使用此信息来避免对潜在的空间特征匹配 的空间特征相关性努力,这将不可能给出电子设备100的重力取向。

此外,电子设备100可以使用用户提供的位置场景来更精确地识别电子 设备100的大体位置或区域。作为示例,电子设备100可以在用户最近的电 子邮件、音频或文本消息通信中检测对于特定商场的提及,因而假定用户位 于该商场。据此,电子设备100例如可以访问具有该商场的位置/地图构建信 息的数据库,并且基于这个位置/地图构建信息而聚焦基于图像的定位。

移动机器人经常实施同步定位和地图构建(SLAM)算法,以在没有对 本地环境的先验知识的情况下,既地图构建本地环境又在地图构建的环境内 确定其相对位置。电子设备100可以随时间使用框716的位置/取向确定过程 的多次迭代来利用这些相同的SLAM技术,以便生成本地环境112的地图, 同时在每个适当的时间点确定和更新电子设备100的位置/取向。这个本地地 图构建信息可以由电子设备100利用来支持多种基于位置的功能中的任何一 种,例如用在确定用户到指定目的地的路径并且根据这个路径向用户提供视 觉导航辅助时,如在下面更详细描述的。

在一些实施例中,电子设备100可以保持对在本地环境112中识别的空 间特征的全局或绝对的位置/取向的估计。为此,在框717,电子设备100可 以使用表示全局位置/取向信息的非图像传感器数据,诸如来自GPS接收器、 磁力计、陀螺仪等的在框710捕捉的传感器数据,来更新在框714标识的空 间特征的全局位置估计。这个全局位置/取向信息可以被用于确定电子设备 100的全局位置/取向,并且根据这个信息,电子设备100可以基于识别的空 间特征相对于电子设备100的位置/取向来估计其全局位置/取向。电子设备 100然后可以将空间特征的这个估计的全局位置/取向存储或更新为与空间特 征相关联的元数据。

此外,电子设备100可以使用这些对空间特征的全局位置/取向的估计来 选择性地放弃获得对在框710的迭代的某些非图像传感器数据的更新的过 程。例如,如果电子设备100识别重复的空间特征(即,其是也从框714的 先前迭代中识别的空间特征),则电子设备100可以使用对这个重复的空间特 征的全局位置/取向的估计来代替某些其它非图像传感器数据,诸如来自GPS 接收器的GPS数据。在类似的方法中,电子设备100也可以使用先前针对一 个或多个空间特征确定的估计的全局位置/取向,来基于其相对于先前地图构 建的空间特征的估计位置/取向将估计的全局位置/取向分配给新遇到的空间 特征。

利用电子设备100对当前位置/取向的确定以及从在当前位置/取向捕捉 的图像数据识别的各种空间特征,在框718,电子设备100可以基于当前位 置/取向来访问网络内容,从而支持电子设备100的某些基于位置的功能,或 者支持与电子设备100通信的联网系统的某些基于位置的功能。作为示例, 电子设备100可以支持联网的多玩家视频游戏,该游戏提供基于电子设备100 的本地区域的虚拟现实。利用当前位置/取向,电子设备100可以访问玩家状 态信息,以便显示其他玩家相对于电子设备100的当前位置的位置。作为另 一示例,电子设备100可以支持朋友地图构建应用,其地图构建朋友、同事 和其他用户感兴趣的人的位置。电子设备100可以将其当前位置提供给中央 服务器,中央服务器既更新其他用户的账户以反映当前位置又利用在当前位 置的指定距离内的其他用户来更新电子设备100。

除了或代替下载网络内容,电子设备100可以在框718上传设备的内容 到网络。上传的设备内容例如可以包括图像数据、关于所识别的空间特征及 其相应元数据的信息、相对位置/取向信息、估计的绝对位置/取向信息等等。 这种上传的设备内容可以被吸收到来自众多类似设备的这样的信息的数据库 中,并且这个数据库然后可以被用于提供各种基于位置的服务。例如,来自 电子设备100的内容数据可以与相似内容集成以为网络连接的导航/地图构建 软件应用提供图像、位置和路由信息。

如以上所指出的,电子设备100可以包括显示器108(图1),以显示使 用面向前方的成像相机114和116中的一个或两个所捕捉的本地环境112的 图像。所显示的图像还可以包括增强现实图形信息,诸如以上参照图1所述 的示例,由此办公室的墙壁中的电气布线的位置被标记在与所显示的墙壁图 像同步的图形覆盖中。为此,在框720,电子设备100执行图像对准过程以 组合在框702和704的一个或多个迭代捕捉的一个或多个WAV图像和一个或 多个NAV图像,来形成单个组合的图像帧。图像对准过程可以将来自NAV 图像的细节添加到WAV图像以提供WAV图像的更详细的版本,或者反之亦 然。可替换地,多个NAV图像可以被对准和组合以形成比任何单个个别NAV 图像描绘更大的区域(例如,全景图)的单个图像帧。在其它实施例中,电 子设备100可以替代地选择不加修改地呈现或WAV图像或NAV图像。

在框722,电子设备100将要以图形呈现给用户的AR信息确定为用于 在框720生成或选择的图像帧的图形覆盖,并且在框724提供用于在电子设 备100显示的图像帧和图形覆盖。AR信息可以被本地存储在电子设备100, 诸如存储在硬盘驱动器或可移除媒体存储设备中。如以上参照框718所讨论 的,AR信息可以被远程地存储,诸如存储在由电子设备100经由WLAN或 蜂窝数据连接访问的因特网连接的服务器,并且AR信息可以响应于对当前 位置/取向的确定而被访问。与图像帧协同呈现给用户的特定AR信息可以基 于显式用户信息来选择,诸如由用户选择本地环境112的墙壁、地板和天花 板内的加热、通风和空调(HVAC)管道的位置的虚拟显示。为呈现所选择的 AR信息也可以基于隐式选择标准来选择。例如,响应于检测到用户正在朝向 在用户的文本消息通信中识别的指定目的地行进,电子设备100可以生成呈 现关于用户朝向目的地行进的各种度量的AR信息,诸如从用户的当前位置 到达目的地所需的估计的时间、目的地相对于用户的当前位置的罗盘方向等 等。

在图形覆盖中呈现的AR信息的视图透视经常可以取决于在框716确定 的电子设备100的特定位置/取向。例如,用户可以与电子设备100的GUI 接口,以指引电子设备100辅助用户找到出口门。假设电子设备100在框716 通过SLAM过程地图构建了本地环境112并且已经通过这个地图构建识别出 出口门,则电子设备100可以使用电子设备100相对于这个地图构建的当前 位置来确定经过本地环境到出口门的路线,然后使用电子设备100的取向来 指引将用户导航到出口门的导航箭头图形。当用户(和电子设备100)沿着 路径向出口门移动时,电子设备100可以更新被呈现以反映在继续将路径导 航到出口门所需的方向上的任何变化的导航箭头图形。在更复杂的应用中, 办公室的电力布线和HVAC管道的位置信息可以以计算机辅助绘图(CAD) 形式存储,从而电子设备100可以以三维形式呈现在面向电子设备100的后 部的办公室的区域的所呈现的图像帧中存在的电力布线和HVAC管道位置的 图形表示,所述三维形式与所呈现的图像中存在的相应墙壁、地板和天花板 的相对位置/取向相关。当用户的电子设备100在办公室周围移动时,本地环 境112所呈现的图像改变,因此电子设备100更新电力布线和HVAC管道覆 盖以反映呈现为在显示器108的图像的办公室的区域的改变。

由图形覆盖呈现的视图透视也可以基于用户的头部(或用户的眼睛)相 对于显示器108的位置的改变而修改。为此,电子设备100可以对于在框708 捕捉的头部追踪或眼睛追踪信息中所代表的头部/眼睛位置改变做出反应,以 改变在显示器108呈现的图像和图形覆盖的视图透视。

如以上所指出的,电子设备100通过方法700的迭代循环以提供实时的、 更新的定位、地图构建的和增强的现实显示。然而,这些子过程不一定以相 同的速率循环。为了说明,图像对准和AR过程可以以与成像相机114、116 和118相同的帧速率来更新/循环,因为这些过程都直接关系到所捕捉的图像。 然而,非图像传感器捕捉和当前场景确定可以以不同的循环速率进行。为了 说明,以下可能是适当的:与帧速率相比更频繁地捕捉陀螺或惯性传感器状 态,以便足够精确地估计惯性导航。相比之下,电子设备100的位置有关的 特征可能不要求高的位置分辨率,因此确定电子设备100的当前位置/取向的 图像分析过程可以以慢于成像相机的帧速率的循环速率发生。

图8图示了根据本公开的至少一个实施例的由电子设备100实施的示例 处理系统800。处理系统800包括广角成像相机114、窄角成像相机116、面 向用户的成像相机118和深度传感器120。处理系统800还包括2D处理器802、 应用处理器804、显示控制器806、电源808、非图像传感器的集合810和用 户接口812。

在便携式用户设备的实施方式(诸如平板计算机或智能电话的实施方式) 中,电源808可以包括用于向电子设备的电气组件供电的电池、太阳能电池 阵列或其它便携式电源。在非便携设备的实施方式中,电源808可以包括将 外部电压供应转换成适合于电子设备100的组件的电压电平的电力转换器。 用户接口812包括由用户操纵来将用户输入提供到电子设备100的一个或多 个组件,诸如触摸屏814、鼠标、键盘、麦克风816、各种按钮或开关和各种 触觉致动器818。非图像传感器的集合810可以包括用于提供电子设备100 的非图像场景或状态的多种传感器中的任何一种。这样的传感器的示例包括 陀螺仪820、磁力计822、加速计824和环境光传感器826。非图像传感器还 可以包括各种基于无线接收或发送的传感器,诸如GPS接收器828、无线局 域网(WLAN)接口830、蜂窝接口832、对等(P2P)无线接口834和近场 通信(NFC)接口836。非图像传感器还可以包括用户接口812的用户输入 组件,诸如触摸屏814或麦克风816。

电子设备100还可以访问存储信息或元数据的各种数据存储,所述信息 或元数据与其图像处理、位置地图构建和位置利用过程协同使用。这些数据 存储可以包括用于存储从由电子设备100的成像相机捕捉的图像所识别的2D 空间特征的元数据的2D特征数据存储838,以及用于存储使用多视图分析或 基于调制光的深度感测从2D空间特征的深度感测所识别的3D特征的元数据 的3D空间特征数据存储840。被存储以用于2D和3D特征的元数据例如可 以包括用于同步目的的时间戳、在其中识别出空间特征的图像帧的图像帧标 识符、所使用的捕捉设备的标识符、校准信息等。元数据还可以包括与包含 所识别的空间特征的图像帧同时发生的非图像传感器数据,诸如GPS、wifi 或其它无线电信息、时间日期信息、天气状况信息(其影响照明)等。数据 存储还可以包括SLAM/AR数据存储842,其存储基于SLAM的信息,诸如 已经由该电子设备100探测过的本地环境112(图1)的区域的地图构建信息, 或AR信息,诸如本地环境112中感兴趣的对象的相对位置的基于CAD的表 示。数据存储可以位于电子设备100本地,诸如在硬盘驱动器、固态存储器 或可移除存储介质(未示出)上,数据存储可以远程定位并可经由例如电子 设备100的无线接口中的一个或多个来访问,或者数据存储可以被实施为本 地和远程数据存储的组合。

在所描绘的实施方式中,处理系统800采用两个处理器:被配置为从由 电子设备100的成像相机捕捉的可见光图像和深度传感器图像有效地识别2D 空间特征的2D处理器802;以及应用处理器804,其被配置为从2D空间特 征有效地识别3D空间特征并且有效地提供基于位置的功能,诸如视觉测程 或其它SLAM功能、AR功能等。然而,在其它实施例中,所描述的2D处理 器802和应用处理器804的功能可以在单个处理器中实施,或者两个以上的 处理器可以一起实施所描述的功能。2D处理器802例如可以被实施为单核或 多核图形处理单元(GPU),并且应用处理器804例如可以被实施为GPU或 者单核或多核中央处理单元(CPU)。

2D处理器802被耦合到广角成像相机114、窄角成像相机116和面向用 户的成像相机118,以便在一个或多个像素行缓冲器844中接收由成像相机 捕捉的图像数据。在一个实施例中,2D处理器802针对每个成像相机包括接 口和像素行缓冲器844,以便能够并行地从每个成像相机接收图像数据。在 另一实施例中,2D处理器802包括单个接口和像素行缓冲器844,因此2D 处理器802在成像相机之间多路复用。像素行缓冲器844可以包括足够用于 来自由相应的成像相机捕捉的图像帧的一行或多行像素的存储(多达全帧缓 冲器)。为了说明,成像相机中的一个或多个可以包括滚动快门成像相机,由 此成像相机的图像传感器一次扫描一行,或者一次扫描行的子集。当扫描每 行或行的子集时,其像素数据被临时缓冲在像素行缓冲器844。缓冲的像素 行然后可以被转移到更大的存储区域,诸如单独的帧缓冲器(未示出)以用 于全帧处理。

2D处理器802被配置为处理来自成像相机的捕捉的图像数据以识别在 图像数据中存在的2D空间特征。在一些实施例中,2D处理器802实施专门 为这个任务而设计的硬件配置。在其它实施例中,2D处理器802包括更一般 的处理器架构,其通过运行被配置为实施2D空间特征检测过程的软件程序 来提供2D空间特征检测。2D处理器802还可以实施用于此目的的专用硬件 和专用软件的组合。如上所述,多种公知的2D空间特征检测或提取算法中 的任何一种可以由2D处理器802实施。2D处理器802将关于所识别的2D 空间特征的元数据和其它信息存储到2D特征数据存储838。

在一个实施例中,2D处理器802被配置为分析由面向用户的成像相机 118所捕捉的图像,以使用多种公知的头部追踪算法中的任何一种来追踪用 户的头部的当前位置/取向。在所描绘的示例中,2D处理器802将头部追踪 信息提供给显示控制器806,显示控制器806又被配置为调整所显示的图像, 以便如用户的头部的位置/取向的改变所反映的那样对用户的视图透视的改 变做出反应。在另一实施例中,2D处理器802将头部追踪信息提供到应用处 理器804,应用处理器804又在显示数据被提供到显示控制器806之前修改 显示数据以反映更新的视图透视。

2D处理器802还用作控制器,其在使用调制光投影器119来确定在捕捉 的本地环境112的图像中所识别的空间特征的深度数据时操作调制光投影器 119。在某些条件下,诸如相对明亮的背景(如使用环境光传感器826感测到 的)下,2D处理器802可以使用对由广角成像相机114和窄角成像照相机116 同时捕捉的图像的多视图图像分析,以确定在捕捉的图像中存在的空间特征 的深度数据。在其它条件下,诸如相对低的照明条件下,2D处理器802可以 切换到使用深度传感器120(图1)来确定深度数据。在其它实施例中,处理 系统800实施了与2D处理器802分离的控制器(未示出)以用于控制调制 光投影器119的操作。

如上所述,深度传感器120依赖于由调制光投影器119到本地环境中的 调制光图案的投射,以及由成像相机中的一个或多个对来自那里的调制光图 案的反射的捕捉。因此,2D处理器802可以使用面向前方的成像相机114和 116中的一个或两个来捕捉调制光图案的投射的反射,并且处理得到的反射 的调制光图案的图像以确定在反射的调制光图案中表示的相应空间特征的深 度。为了将深度读数与相应的2D空间特征进行匹配,2D处理器802可以对 深度图像执行2D空间特征分析以确定2D空间特征和其相对深度,然后尝试 将2D空间特征匹配到在与捕捉反射的调制光图案的时间相同或几乎相同的 时间捕捉的可视光图像中所识别的相应空间特征。在另一实施例中,2D处理 器802可以捕捉可见光图像,并且在其后迅速控制调制光投影器119来投射 调制光图案并且捕捉反射的调制光图像。2D处理器802然后可以根据反射的 调制光图像来形成用于可见光图像的深度地图,因为由于可见光图像和反射 的调制光图像是同时捕捉的,它们有效地表示在相同坐标具有相同空间特征 的相同情景。

虽然在辅助感测存在于捕捉的图像的空间特征的相对深度方面是有效 的,但是调制光图案的投射可能干扰电子设备100的其它操作。例如,当调 制光投影器119可以被配置为投射红外或近红外光图案时,当成像相机碰巧 在调制光图案被投射时激活其快门时,这种红外或近红外光的反射会引入到 由成像相机捕捉的可见光图像中的干扰。这种干扰可能既减损了用户对所捕 捉的可见光图像的观看体验,又对由2D处理器802执行的图像处理的精确 度或功效造成负面影响。此外,调制光投影器119的激活可以消耗显著的电 力量,其会影响电子设备100在电池充电之间的运行时间。下面参照图10至 图12描述可由处理系统800实施以用于减少由调制光投影器119造成的干扰 和电力消耗的各种技术。

应用处理器804被配置为使用在2D特征数据存储838中表示的2D空间 特征以及使用来自非图像传感器的集合810的非图像传感器信息,来识别在 所捕捉的图像中表示的3D空间特征。如同2D处理器802,应用处理器804 可以被配置为通过专用硬件配置、通过运行被配置用于这个过程的软件、或 专用硬件和软件的组合来执行这个过程。用于所识别的3D空间特征的元数 据和其它信息被存储在3D特征数据存储840中。下面参照图9描述2D到3D 空间特征提取过程。

应用处理器804还被配置为使用在3D特征数据存储840中表示的3D空 间特征以及使用如由非图像传感器数据所表示的电子设备100的当前场景, 来提供SLAM、AR、VR和其它基于位置的功能。当前场景可以包括从例如 用户接口812或经由对用户交互的分析获得的显式或隐式用户输入。这种功 能可以包括基于视觉测程过程确定电子设备100的当前相对位置/取向,所述 视觉测程过程使用3D空间特征和各种与位置相关的非图像传感器数据,诸 如来自陀螺仪820的6DoF读数、使用加速计824保持的导航推测历史、使 用GPS接收器828确定的或经由蜂窝接口832使用无线电遥测确定的粗略绝 对位置指示符等。类似地,应用处理器804可以使用电子设备100的位置/取 向的历史和在这些位置/取向上观察到的空间特征的历史,来创建本地环境 112的地图。

由应用处理器804提供的基于位置的功能还可以包括AR相关或VR相 关的功能,包括基于由应用处理器804确定的当前位置/取向,从SLAM/AR 数据存储842识别和访问将被作为显示器108上的图形覆盖提供的图形信息。 这个图形覆盖可以与由成像相机在当前位置/取向中捕捉的图像相关联地提 供以用于经由显示控制器806在显示器108显示。显示控制器806进行操作 以控制显示器108(图1)来显示由从应用处理器804接收到的显示数据所表 示的图像。此外,在一些实施例中,显示控制器806可以从2D处理器802 接收头部追踪信息并且调整基于在接收到的头部追踪信息中表示的用户头部 位置或眼睛位置所显示的图像的视图透视。

在传统的2D空间特征检测应用中,整个图像帧被捕捉,然后在GPU或 其它处理器发起对于图像帧的空间特征提取之前被缓冲在帧缓冲器中。这种 方法由于在将图像数据传送到帧缓冲器以准备由GPU对其进行访问所发生 的延迟而可能在空间特征检测中引入显著延迟或滞后,因此在位置/取向检测 中引入显著延迟或滞后。为了减少或消除这种滞后,在一些实施例中,当所 捕捉的图像数据从相应的成像相机流传输到2D处理器时,2D处理器802被 配置为执行2D空间特征提取。当像素行缓冲器844从成像相机接收到一个 或多个像素行的子集时,2D处理器802处理由缓冲的像素的子集所表示的图 像部分,以识别在图像部分中存在的2D空间特征。当2D空间特征被从图像 部分识别出时,2D处理器802然后可以将2D空间特征流传输到2D特征数 据存储838,或者直接将其流传输到应用处理器804的输入。因为在图像数 据被流传输的时候2D空间特征被识别,以及因为在2D空间特征被识别出的 时候时所识别的2D空间特征被流传输到应用处理器804,所以2D空间特征 检测过程和3D空间特征检测过程可以以比依赖于整个图像帧分析的传统图 像处理技术更快的速率进行。

图9图示了根据至少一个实施例的使用处理系统800的双处理器架构的 2D和3D空间特征提取的示例方法900。方法900的迭代开始于在框902发 起由面向前方的成像相机114和116中的一个对图像的捕捉。在框904,2D 处理器802将在成像相机的图像传感器捕捉的图像的一部分扫描到像素行缓 冲器844,并且从像素行缓冲器844分析图像部分以确定在图像部分中存在 的任何2D空间特征。响应于检测到2D特征(框906),在框908,2D处理 器802提供表示2D特征的2D空间特征数据以供存储在2D特征数据库838 中。这个2D空间特征数据例如可以包括空间特征标识符、在其中发现空间 特征的图像的指示符或与这样的图像相关联的时间戳、图像内的空间特征的 位置的指示符、空间特征的类型的指示符(例如,边缘、角落等)等等。2D 处理器802重复框904、906和908的过程,直到对于图像部分的空间特征提 取完成(框910),此时,方法900返回到框904,随后将下一图像部分从成 像相机的图像传感器扫描到像素行缓冲器844,并且对于这个下一图像部分 重复框904至框910的2D空间特征提取过程。当图像帧的最后图像部分的 2D空间特征提取完成(框912)时,则方法900返回到框902,并且对于由 电子设备100的成像相机捕捉的下一图像重复该过程。

与框902至框912的图像捕捉和分析过程同时发生的是,2D处理器802 确定将与捕捉的图像相关联的电子设备100的当前场景。为此,在框914, 2D处理器802发起对一个或多个非图像传感器的读取,并且使用得到的非图 像传感器数据来指定电子设备100的当前场景的一个或多个参数。这例如可 以包括在框902捕捉图像之时指定电子设备100的6DoF取向,指定此时入 射到电子设备100上的环境光,指定用于蜂窝信令的接收信号强度指示 (receivedsignalstrengthindication,RSSI),指定此时电子设备100的GPS 坐标等。在框916,2D处理器802提供这个当前场景信息,以用于作为与在 同时捕捉的图像帧中识别的2D空间特征相关联的元数据存储在2D特征数据 存储中。然后可以对于下一图像捕捉循环重复框914和框916的当前场景捕 捉过程。

如所指出的,在一些实施例中,当2D空间特征被识别出时,2D处理器 802将2D空间特征和其相关联的场景元数据流传输到应用处理器804。因此, 当2D空间特征数据和用于2D空间特征的元数据被接收到时,在框918,应 用处理器804通过确定2D空间特征的当前深度将2D空间特征变换为3D空 间特征。如所指出的,在两个同时捕捉的图像可用的情况下,空间特征的深 度可以通过对两个图像的多视图分析来确定。在这种情况下,应用处理器804 使来自两个帧的2D空间特征相关以识别可能表示相同空间特征的2D空间特 征的集合,然后基于两个图像之间的空间特征的位置之间表现的视差来确定 2D空间特征的深度。在两个同时捕捉的图像不可用的情况下,应用处理器 804可以基于由深度传感器120同时捕捉的深度数据来确定接收到的2D空间 特征的当前深度。

随着3D空间特征的生成,在框920,应用处理器804可以尝试通过将视 觉测程算法应用到这个3D空间特征来确定电子设备100的当前位置/取向。 在一些情况下,3D空间特征本身可能无法被充分区分以便允许精确确定当前 位置/取向。因此,电子设备100可以缓冲表示多个同时发生的3D空间特征 的3D空间特征数据,然后尝试从这些多个3D空间特征确定当前位置/取向。

在上述方法中,应用处理器804可以能够使用一个或几个3D空间特征 以足够的粒度识别当前位置/取向。因为每个3D空间特征可以在识别相应的 2D空间特征之后很快被确定,所以应用处理器804甚至可以在2D处理器802 完成从成像相机捕捉和处理图像帧之前就开始确定当前位置/取向的过程。这 种快速确定当前位置/取向的能力可以转化为改进的基于位置的功能。为了说 明,因为当前位置/取向可以比要求首先填充帧缓冲器的传统方法更快地被识 别,所以AR图形覆盖信息可以更快地被访问和显示,这可以导致在电子设 备100显示的AR增强图像中的更少的抖动和伪影。

图10图示了根据本公开的至少一个实施例的深度传感器120的有效操作 的示例方法1000。深度传感器120的调制光投影器119的激活可以消耗显著 电力。在一些传统的实施方式中,假定基于调制光的深度传感器连续操作并 以15至30赫兹(Hz)之间的帧速率或者与典型的视频流类似的速率捕捉深 度数据。这可以使得深度传感器成为相对高功率的设备。事实上,在这个传 统的方式中由调制光投影器消耗的电力可以显著大于由在平板、智能电话或 其它便携式用户设备中使用的典型显示器所消耗的电力。

在许多情况下,以这种连续捕捉的方法捕捉的深度数据的量显著大于电 子设备100针对精确深度分析所需的深度数据的程度。因此,方法1000图示 了用于深度传感器120的选择性激活的技术,以便减少或最小化深度传感器 120的总激活时间,同时捕捉足够的深度数据以允许精确确定所捕捉的图像 中的所识别的空间特征的深度。在一些实施例中,这种选择性的激活可以包 括以突发模式操作深度传感器120,由此响应于一个或多个触发事件类型根 据需求捕捉深度图像的单个或小的快速序列。在这种方法下,深度传感器120 的总电力损耗可以减小,从而延长电子设备100对于给定电池电量可以操作 的时间量,同时也降低了电子设备100的热要求。

为了以下目的,“激活配置”通过指定激活调制光投影器119来投射调制 光图案的频率以及调制光图案被投射的强度和持续时间来控制深度传感器的 操作。这个频率、强度和持续时间一起类似于占空比。当禁用深度传感器120 时(例如,当经由多视图图像分析来执行深度感测时),深度传感器120的激 活配置可以被解释为为零的频率、强度和持续时间。相反,当启用深度传感 器120时(例如,当经由调制光投射来执行深度感测时),深度传感器的激活 配置表示非零的频率、强度和持续时间。

当执行基于调制光的深度感测时,深度图像捕捉的频率一般对应于电子 设备100对正被感测的直接区域的“熟悉度”。如果电子设备100已经静止一 段时间,则电子设备100可能有机会获得足够的直接区域的深度数据。因此, 电子设备100可以减小深度图像捕捉过程的频率和光强度。然而,如果电子 设备100在运动中,则更有可能的是,电子设备100正遇到先前未遇到的环 境,因此电子设备100将增加深度图像捕捉的频率,以便更迅速地积累足够 的其行进经过的本地环境的深度数据。

在一些情况下,电子设备100可以在先前已经形成了足够的深度数据的 区域中,但是环境已经发生改变,因此所取得的先前的深度数据不可靠。为 了说明,在用户带着电子设备100第一次进入会议室时,电子设备100可以 已经形成了会议室中的对象的深度数据。此后,会议室中的家具及固定装置 已经重新排列,从而用户下一次进入会议室时,用户进入了先前未遇到的环 境,从而会议室的深度数据是过期的。在一些实施例中,可以通过定时器的 流逝所触发的自动周期性深度数据重新捕捉来解决给定区域中的对象的排列 的潜在改变,以便刷新或更新该区域的深度数据。电子设备100也可以通过 评价存在于从当前区域捕捉的图像中的几何不确定性来衡量其对其直接区域 的当前熟悉度。例如,这个几何不确定性反映在检测到先前未遇到的对象或 几何形状中,诸如在相同或相似的位置/取向捕捉的先前图像中不存在的边缘 的集合,或者反映在检测到非预期的几何形状中,诸如角落的集合的空间定 位与其在早前从相同或相似的位置/取向捕捉的图像中的先前定位的移位。

为此,在一个实施例中,电子设备100对在特定位置/取向检测到的空间 特征进行分类。特征的这个分类可以包括空间特征的列表,以及某些特性, 诸如它们的相对位置/取向、它们的维度等。由于本地环境可以相对于相同位 置改变(例如,对象可以被添加或去除,或者移动到新的位置),因此当电子 设备100再次返回到相同位置时,电子设备100可以通过识别当前可从该位 置观察到的空间特征并且将所识别的空间特征与先前对于该位置分类的空间 特征进行比较,来确定其是否处于预先未遇到的环境中。如果对于相同位置, 当前遇到的空间特征和先前遇到的空间特征之间存在足够的不协调,则电子 设备100断定其处于先前未遇到的环境中,因此继续配置深度传感器120的 激活配置。

因此,为了发起对深度传感器120的激活配置的调整,在框1002,2D 处理器监视被选择来使得重新评估深度传感器120的当前激活配置的触发事 件。这个触发事件可以包括超过阈值的所感测的环境光的改变(框1092), 对电子设备的运动的检测(或对不存在运动的检测)(框1094),或者对当前 由成像相机114、116和/或118所捕捉的图像中的某些几何不确定性的检测(框 1096)。触发事件还可以包括表示周期性刷新触发器的定时器的流逝。

响应于检测到触发事件,在框1004,2D处理器802基于触发事件确定 用于深度传感器120的适当的修正后的激活配置。作为示例,如果触发事件 1002、1092是所感测的环境光超过阈值,则2D处理器802选择从基于多视 图的深度感测切换到基于调制光的深度感测,因此激活深度传感器120并将 调制光图案的投射的频率、强度和持续时间初始设置为指定的默认值。相反, 如果触发事件1002、1092是所感测的环境光降低到阈值以下,则2D处理器 802选择切换回基于多视图的深度感测,因此通过将频率、强度和持续时间 设置为零来去激活深度传感器120。作为另一示例,如果触发事件1002、1094 是电子设备100以超过阈值的速度行进,则2D处理器802增加调制光图案 投射以及相应的反射调制光图像捕捉的频率。即,2D处理器802可以进入突 发模式,由此实行快速序列的深度图像捕捉。相反,如果触发事件1002、1094 是电子设备100以低于阈值的速度行进,则2D处理器802减小调制光图案 投影以及相应的反射调制光图像捕捉的频率。作为进一步的示例,2D处理器 802可以基于检测到的几何不确定性的指示符与一个或多个阈值的比较,增 加或减少调制光图案投射/反射调制光图像捕捉的频率(框1096)。

电子设备100的当前场景还可以被用在确定适当的激活配置时。为了说 明,如果当前场景指示用户正在使用电子设备100提供假设准确地识别不可 见或掩埋的对象的位置的AR图形覆盖,则可能更重要的是,需要电子设备 100准确地识别空间特征的相对3D位置,以便准确地在底层的捕捉的图像上 定位AR图形覆盖。这样,2D处理器802可以将调制光投射设置为与相应的 触发事件相关联的范围的较高端。然而,如果当前场景指示用户正在使用电 子设备100来经由所显示的方向性区域提供一般的导航指引,准确识别空间 特征的相对3D位置可能没那么重要,因此2D处理器802可以将调制光投射 设置为与相应的触发事件相关联的范围的较低端。

持续时间或强度也可以基于触发事件类型或电子设备100的当前场景来 修正。例如,如果更多环境光存在于本地环境中,因此有更多机会干扰调制 光图案,则2D处理器802可以将调制光投影器119配置为以更高的强度和更 长的持续时间投射调制光图案,以便利用反射的调制光图案更充分地激励图 像传感器。作为另一示例,调制光图案的持续时间或强度也可以基于电子设 备100与视场中的对象的接近度,或者存在于视场中的材料的反射率来设置。

利用所设置的修正后的激活配置,在框1006,2D处理器802激活调制 光投影器119并且以在框1004设置的激活配置所指定的频率捕捉得到的深度 图像(即,反射的调制光图像)。并行地,方法1000返回到框1002,由此2D 处理器802继续监视另外的触发事件,以便发起由方法1000所表示的深度传 感器配置过程的下一次迭代。

图11图示了根据本公开的至少一个实施例的表示更一般的方法1000的 特定示例实施方式的方法1100。对于方法1100,深度传感器120的激活配置 是基于入射到电子设备100上的环境光以及基于电子设备100的运动来控制 的。因此,在框1102,2D处理器802对环境光传感器826(图8)进行采样 以获得当前环境光读数,并且在框1104,2D处理器802将当前环境光读数与 指定的阈值进行比较。如果当前环境光读数大于阈值,则在框1106,2D处理 器802进入立体或其它多视图深度感测模式(或者如果已经在多视图深度感 测模式下,则停留在此模式下),并禁用调制光投影器119。

如果当前环境光读数小于阈值,则在框1108,2D处理器802进入调制 光深度感测模式(或者如果已经在此模式下,则停留在此模式下)并且启用 调制光投影器119。此外,如果2D处理器802从调制光深度发送模式切换到 此调制光深度感测模式,则2D处理器802将激活配置设置为默认的非零频 率、强度和持续时间。当在调光深度感测模式下时,在框1110,2D处理器 802监视加速计824以确定电子设备100是否在运动中。如果不在运动中, 则在框1112,2D处理器802可以在自从运动停止起流逝了指定的时间之后, 从默认速率减小深度图像捕捉速率(并且相应地减小调制光投射的频率)。如 果在运动中,则在框1114,2D处理器802可以从默认速率增加深度图像捕捉 速率(并且相应地增加调制光投射的频率)。同时,方法1100返回到框1102, 由此2D处理器802捕捉下一环境光读数并且开始使深度图像捕捉速率与电 子设备100所遇到的当前条件协调的下一次迭代。注意,对环境光传感器826 的采样(框1104)和对加速计824的采样(框1110),以及响应于得到的样 本值而引起的过程可以以相同的速率或以不同的速率发生。

图12图示了根据至少一个实施例的在电子设备100的基于调制光的深度 感测期间用于可见光图像捕捉的示例方法1200。图像传感器,诸如可以部署 在成像相机114、116和118中的图像传感器,对包括可见光和红外光两者的 宽范围电磁波谱敏感。因此,由调制光投影器119投射的红外或近红外调制 光图案可以同时干扰尝试捕捉可见光的成像相机。通常,这种干扰表现为调 制光图案在捕捉的可见光图像中可见。

在许多情况下,尝试通过捕捉后的图像处理从可见光图像去除调制光图 案是不可行的。因此,方法1200表示依赖于视觉现象的持续性而去除损坏的 图像帧的技术,该技术防止观看者容易地检测到去除的损坏的图像帧或在其 位置使用替换图像帧。因此,如果成像相机以例如30帧每秒(fps)或者60fps 运行,则电子设备100可以每秒对于单个帧闪烁调制光投影器119,然后跳 过对在调制光投影器119活跃时捕捉的可见光图像帧的显示或使用。可替换 地,替换图像帧可以被插入到视频馈送以代替损坏的图像帧,以便提供稍微 更平滑的视频过渡。这个替换图像可以包括视频帧序列中的之前或之后的图 像帧的副本。替换图像也可以是内插图像帧,其被内插在前一帧和后一帧之 间。在另一种方法中,像素变形技术可以被应用到相关的深度图像以合成丢 弃的图像帧的图像内容。在任何情况下,结果将是将有效帧速率稍微降低到 可接受的速率29或59fps,这在大部分时间对于大多数观众而言是难以辨别 的变化。

为此,方法1200的迭代开始于框1202,由此2D处理器802(图8)操 作成像相机114和116之一以捕捉可见光图像帧。在框1204,2D处理器802 在图像捕捉的时候确定调制光投影器119是否是活跃的,并且因此有可能损 坏可见光图像帧。在一个实施例中,2D处理器802可以实施滑动时间窗口, 以使得如果它的控制历史表明在滑动时间窗内既发生调制光投影器119的激 活又发生成像相机中快门的操作,则2D处理器802可以断定捕捉的可见光 图像帧被损坏。在另一实施例中,2D处理器802可以执行图像分析以检测调 制光图案的某些相似之处是否存在于可见光图像帧中,以确定可见光图像帧 是否被损坏。

如果可见光图像帧被认为未被损坏,则在框1206,2D处理器802准许 将捕捉的图像帧包括在呈现给用户的视频流中。否则,如果可见光图像帧被 认为被损坏,则在框1208,2D处理器802阻止对损坏的图像帧的显示或其 它使用。如以上所指出的,这可以包括简单地完全跳过损坏的帧(框1210), 通过复制视频流中的另一图像帧来生成替换图像帧(框1212),或通过在视 频流的两个或更多个其它图像之间内插或使用可替换图像内容(诸如由另一 成像相机同时捕捉的深度图像)来合成存在于损坏的图像帧中的图像内容以 生成替换图像帧(框1214)。

根据一个方面,一种电子设备包括:第一成像相机,被布置在第一表面 并且具有第一视角;第二成像相机,被布置在第一表面并且具有大于第一视 角的第二视角;以及深度传感器,被布置在第一表面。深度传感器可以包括 投射调制光图案的调制光投影器,以及捕捉调制光图案的反射的第一成像相 机和第二成像相机中的至少一个。调制光投影器可以包括一个或多个垂直腔 表面发射激光器(VCSEL)二极管的阵列,覆盖一个或多个VCSEL二极管 的阵列的一个或多个镜头的阵列,以及覆盖一个或多个镜头的阵列的衍射光 学元件。第二成像相机可以包括鱼眼镜头,并且可以被配置用于机器视觉图 像捕捉。第二成像相机可以包括滚动快门成像相机,并且可以被配置用于用 户发起的图像捕捉。

电子设备还可以包括第三成像相机,其被布置在第二表面并且具有大于 第一视角的第三视角。第一成像相机可以被配置用于用户发起的图像捕捉, 第二成像相机可以被配置用于机器视觉图像捕捉,并且第三成像相机可以被 配置用于面部识别和头部追踪中的至少一个。在一个实施例中,电子设备还 包括显示器,其被布置在与第一表面相对的第二表面,并且电子设备可以被 配置为经由显示器呈现经由第一成像相机和第二成像相机中的至少一个捕捉 的图像。

根据本公开的另一方面,一种电子设备可以包括:第一成像相机,被布 置在第一表面并且具有第一视角;第二成像相机,被布置在第一表面并且具 有大于第一视角的第二视角;以及第三成像相机,被布置在第二表面并且具 有大于第一视角的第三视角。第一成像相机可以被配置用于用户发起的图像 捕捉,第二成像相机可以被配置用于机器视觉图像捕捉,并且第三成像相机 可以被配置用于面部识别和头部追踪中的至少一个。在一个实施例中,电子 设备还包括深度传感器,其具有布置在第一表面的投射调制光图案的调制光 投影器,并且还包括捕捉调制光图案的反射的成像相机。深度传感器的成像 相机可以包括第一成像相机和第二成像相机中的至少一个。调制光投影器可 以包括一个或多个垂直腔表面发射激光器(VCSEL)二极管的阵列,覆盖一 个或多个VCSEL二极管的阵列的一个或多个镜头的阵列,以及覆盖一个或多 个镜头的阵列的衍射光学元件。在一个实施例中,电子设备包括被布置在第 二表面的显示器,由此电子设备被配置为经由显示器呈现经由第一成像相机、 第二成像相机和第三成像相机中的至少一个捕捉的图像数据。

根据又一方面,一种方法包括使用布置在电子设备的第一表面的第一成 像相机捕捉第一图像数据,以及使用布置在电子设备的第一表面的第二成像 相机捕捉第二图像数据,第二图像数据比第一图像数据表示更宽的视场。该 方法还包括使用布置在电子设备的第一表面的深度传感器捕捉深度数据。该 方法还可以包括从第一图像数据、第二图像数据和深度数据中的一个或多个 确定至少一个空间特征,以及基于至少一个空间特征确定电子设备的相对位 置和相对取向中的至少一个。该方法还可以包括使用布置在电子设备的第二 表面的第三成像相机捕捉第三图像数据,第三图像数据比第一图像数据表示 更宽的视场,由此,其中确定至少一个空间特征包括基于第三图像数据确定 至少一个空间特征。

在一个实施例中,该方法还包括基于第一图像数据、第二图像数据和深 度数据在电子设备显示图像。该方法还可以包括至少部分地基于深度数据确 定电子设备的当前场景,基于当前场景确定增强图形覆盖,并且其中,显示 图像还包括利用增强图形覆盖来显示图像。该方法可以包括使用布置在电子 设备的第二表面的第三成像相机捕捉第三图像数据,以及基于第三图像数据 确定用户的头部的位置。为此,显示图像可以包括还基于用户的头部的位置 来显示图像。在一个实施例中,使用深度传感器捕捉深度数据包括投射来自 电子设备的第一表面的调制光图案,以及使用第一成像相机和第二成像相机 中的至少一个捕捉调制光图案的反射。

根据本公开的另一方面,一种电子设备包括:第一处理器,其从第一成 像相机接收图像数据,并且确定表示从图像数据识别的一个或多个二维(2D) 空间特征的2D空间特征数据。电子设备还包括第二处理器,其耦合到第一 处理器,以确定表示基于2D空间特征数据识别的一个或多个三维(3D)空 间特征的3D空间特征数据。第一处理器可以在接收到整个图像帧之前,根 据图像帧的一部分发起对一个或多个2D空间特征的检测。电子设备还可以 包括:第一成像相机,其被布置在电子设备的第一表面并且具有第一视场; 以及第二成像相机,其被布置在电子设备的第一表面并且具有比第一视场更 窄的第二视场。电子设备还可以包括第三成像相机,其被布置在电子设备的 第二表面并且具有大于第二视场的第三视场,由此第一处理器还基于从由第 三成像相机捕捉的图像数据识别的一个或多个2D空间特征来确定2D空间特 征数据。

在至少一个实施例中,电子设备还包括捕捉深度数据的深度传感器,由 此第二处理器还可以基于深度数据来确定3D空间特征数据。深度传感器可 以包括调制光投影器,并且深度数据可以包括由第一成像相机捕捉并且表示 由调制光投影器投射的调制光图案的反射的图像数据。

在至少一个实施例中,电子设备还可以包括传感器,其耦合到第二处理 器以提供非图像传感器数据,由此第二处理器还可以基于非图像传感器数据 确定3D空间特征数据。对于每个图像帧,第一处理器捕捉传感器的至少一 个传感器状态,并且第一处理器确定在图像帧中识别的2D空间特征的2D空 间特征列表并且将2D空间特征列表和至少一个传感器状态的表示发送到第 二处理器。传感器可以包括从以下各项选择的至少一个:加速计;陀螺仪; 环境光传感器;磁力计;重力梯度仪;无线蜂窝接口;无线局域网接口;有 线网络接口;近场通信接口;全球定位系统接口;麦克风;以及键区。

根据另一方面,一种方法包括在电子设备的第一处理器接收由电子设备 的第一成像相机捕捉的第一图像数据,第一图像数据表示第一图像帧,并且 在第一处理器根据第一图像数据确定一个或多个二维(2D)空间特征的第一 集合。该方法还包括在电子设备中的第二处理器使用一个或多个2D空间特 征的第一集合来确定一个或多个三维(3D)空间特征的集合。该方法还可以 包括在第一处理器接收由电子设备的第二成像相机捕捉的第二图像数据,第 二图像数据表示第二图像帧,在第一处理器根据第二图像数据确定一个或多 个2D空间特征的第二集合。确定一个或多个3D空间特征的集合可以包括基 于一个或多个2D空间特征的第一集合和一个或多个2D空间特征的第二集合 之间的相关性,确定一个或多个3D空间特征的集合。该方法还可以包括对 准由第一成像相机捕捉的图像数据和由第二成像相机捕捉的图像数据以生成 组合的图像帧,并且在电子设备显示组合的图像帧。

在一个实施例中,该方法包括在第一处理器接收由电子设备的深度传感 器捕捉的深度数据,并且由此确定一个或多个3D空间特征的集合可以包括 还基于深度数据来确定一个或多个3D空间特征的集合。该方法还可以包括 与捕捉第一图像数据同时发生地在第一处理器确定表示电子设备的至少一个 非成像传感器的传感器状态的传感器数据,由此确定一个或多个3D空间特 征的集合包括还基于传感器数据来确定一个或多个3D空间特征的集合。

根据本公开的另一方面,一种方法包括在电子设备的第一处理器接收由 电子设备的第一成像相机捕捉的图像数据的第一流,图像数据的第一流表示 第一图像帧。该方法还包括在第一处理器针对第一图像帧的一部分确定一个 或多个二维(2D)空间特征的第一集合,并且在继续在第一处理器接收表示 第一图像帧的下一部分的图像数据的第一流的一部分的同时,将表示一个或 多个2D空间特征的第一集合的第一2D空间特征数据发送到电子设备的第二 处理器。该方法还可以包括在第二处理器基于第一2D空间特征数据来确定 一个或多个三维(3D)空间特征的第一部分集合。该方法还可以包括在第一 处理器接收由电子设备的深度传感器捕捉的深度数据。确定一个或多个3D 空间特征的第一集合可以包括还基于深度数据来确定一个或多个3D空间特 征的第一集合。

该方法还可以包括与接收图像数据的第一流同时发生地接收表示电子设 备的至少一个非成像传感器的传感器状态的传感器数据。确定一个或多个3D 空间特征的第一集合可以包括还基于传感器数据来确定一个或多个3D空间 特征的第一集合。非成像传感器可以包括陀螺仪,并且其中,确定一个或多 个3D空间特征的第一集合可以包括还基于来自陀螺仪的取向读数来确定一 个或多个3D空间特征的第一集合。

在一个实施例中,第一成像相机包括滚动快门成像相机,其具有多行像 素传感器,接收图像数据的第一流包括接收由滚动快门成像相机捕捉的图像 数据的逐行的流,由此第一图像帧的所述部分包括滚动快门成像相机的一行 或多行的第一集合的图像数据,并且由此图像帧的下一部分包括滚动快门成 像相机的一行或多行的第二集合的图像数据。该方法还可以包括在第一处理 器接收由电子设备的第二成像相机捕捉的图像数据的第二流,图像数据的第 二流表示第二图像帧。该方法还可以包括在第一处理器针对第二图像帧确定 一个或多个2D空间特征的第二集合,并且将表示一个或多个2D空间特征的 第二集合的第二2D空间特征数据流传输到第二处理器。

根据本公开的又一方面,一种电子设备包括深度传感器,其包括投射调 制光图案的调制光投影器和捕捉调制光图案的反射的第一成像相机。电子设 备还包括控制器,用于响应于至少一个触发事件,选择性地修改由调制光投 影器对调制光图案的投射的频率、强度和持续时间中的至少一个。电子设备 还可以包括环境光传感器,其中至少一个触发事件包括由环境光传感器检测 到的环境光的改变。控制器可以响应于环境光降低到第一阈值之下而增加投 射的调制光图案的频率、强度和持续时间中的至少一个,并且响应于环境光 上升到第二阈值之上而减小投射的调制光图案的频率、强度和持续时间中的 至少一个。至少一个触发事件可以包括定时器的流逝。

至少一个触发事件可以包括电子设备位于先前未遇到的环境中,其中, 控制器可以响应于电子设备位于先前未遇到的环境中而增加调制光图案的投 射的频率、强度和持续时间中的至少一个。电子设备还可以包括识别电子设 备的粗略位置的无线信号接收器,无线信号接收器包括全球定位系统接收器、 无线蜂窝接收器和无线局域网接收器中的至少一个。控制器可以基于由无线 信号接收器所确定的粗略位置,确定电子设备处于先前未遇到的环境中。电 子设备还可以包括捕捉电子设备的本地环境的图像的第二成像相机。控制器 可以基于从图像确定的一个或多个空间特征以及由调制光图案的反射所表示 的深度数据,来在电子设备对当前环境进行分类。控制器还可以基于分类的 当前环境来确定电子设备处于先前未遇到的环境中。

在至少一个实施例中,电子设备还包括捕捉电子设备的本地环境的图像 的第二成像相机。控制器可以基于本地环境电子设备的图像以及基于由调制 光图案的反射所表示的深度数据来确定一个或多个空间特征,并且至少一个 触发事件包括对空间特征中的一个或多个是先前未遇到的空间特征的确定。 此外,至少一个触发事件可以包括对电子设备的超过阈值的运动的检测,并 且控制器可以响应于检测到超过阈值的运动而增加投射的调制光图案的频 率、强度和持续时间中的至少一个。

在一个实施例中,电子设备还包括捕捉电子设备的环境的图像的第二成 像相机,并且至少一个触发事件包括从所捕捉的图像检测到超过阈值的运动。 控制器可以响应于检测到超过阈值的运动而增加投射的调制光图案的频率、 强度和持续时间中的至少一个。在一个实施例中,第二成像相机捕捉电子设 备的环境的图像,并且控制器防止对与由调制光投影器对调制光图案的投射 同时的第二成像相机所捕捉的图像的显示。

根据本公开的另一方面,一种方法包括使用电子设备的调制光投影器投 射调制光图案,使用成像相机捕捉投射的调制光图案的反射,并且响应于至 少一个触发事件而控制调制光投影器选择性地修改调制光图案的投射的频 率、强度和持续时间中的至少一个。至少一个触发事件可以包括以下各项中 的至少一个:环境照明的改变;经由电子设备的第二成像相机检测到超过阈 值的运动;以及确定电子设备处于先前未遇到的环境中。该方法还可以包括 捕捉电子设备的环境的至少一个图像,并且基于至少一个图像确定至少一个 空间特征,其中,至少一个触发事件包括对至少一个空间特征是先前未遇到 的空间特征的确定。该方法还可以包括防止在电子设备显示在由调制光投影 器投射调制光图案的同时电子设备的成像相机所捕捉的图像。

根据本公开的又一方面,一种电子设备包括第一成像相机、投影至少一 个调制光图案的调制光投影器和检测电子设备的环境光条件的环境光传感 器。该方法还包括控制器,用于响应于环境光条件而控制由调制光投影器对 调制光图案的投射的频率、强度和持续时间中的至少一个。在一个实施例中, 控制器响应于环境光条件小于第一阈值而增加投射的调制光图案的频率、强 度和持续时间中的至少一个,并且响应于环境光条件大于第二阈值而减小投 射的调制光图案的频率、强度和持续时间中的至少一个。第一阈值和第二阈 值可以包括相同的阈值。控制器可以响应于确定电子设备处于先前未遇到的 环境中而减小调制光图案的投射的频率、强度和持续时间中的至少一个。

电子设备还可以包括第二成像相机和深度传感器,深度传感器包括调制 光投影器以及第一成像相机和第二成像相机中的至少一个。电子设备可以响 应于环境光条件大于阈值,使用来自第一成像相机的图像数据和来自第二成 像相机的图像数据来确定检测到的空间特征的深度数据。电子设备可以响应 于环境光条件小于阈值,使用由第一成像相机或第二成像相机之一捕捉的调 制光图案的反射来确定检测到的空间特征的深度数据。

以上描述的许多发明功能和许多发明原理非常适合于具有软件程序或指 令以及诸如专用集成电路(IC)(ASIC)的IC的实施方式或者所述软件程序 或指令以及IC的形式的实施方式。可以预期,尽管有可能需要受到例如可用 时间、当前技术和经济上的考虑所促动的显著努力和许多设计选择,但是普 通技术人员在受到这里所公开的构思和原理指导时,将能够以最少的实验容 易地生成这样的软件指令和程序以及IC。因此,为了简化和最小化使根据本 公开的原理和构思变得模糊的任何风险,如果存在对于这样的软件和IC的进 一步讨论,则该讨论将被限制为关于优选实施例内的原理和构思是必要的。

在本文档中,诸如第一和第二等的关系术语可以单独使用,以便将一个 实体或动作与另一实体或动作区分开,但不必要求或暗示在这样的实体或动 作之间的任何实际的这样的关系或顺序。术语“包含”或其任何其它变型均 旨在涵盖非排他性的包括,以使得包含元素的列表的过程、方法、物品或装 置并不只包括那些元素,而是可以包括未明确列出或对于这种过程、方法、 物品或装置固有的其它元素。如果没有更多的限制,则前面是“包括”的元 素并不排除在包括此元素的过程、方法、物品或装置中存在附加的相同元素。 如本文所使用的,术语“另一”被定义为至少第二个或更多个。如本文所使 用的,术语“包括”和/或“具有”被定义为包含。如本文参照电光技术所使 用的,术语“耦合”被定义为连接,尽管不一定是直接连接,并且不一定是 机械连接。如本文所使用的,术语“程序”被定义为被设计用于在计算机系 统上运行的指令序列。“程序”或“计算机程序”可以包括子例程、函数、过 程、对象方法、对象实施方式、可运行应用、小应用程序(applet)、小服务 程序(servlet)、源代码、目标代码、共享库/动态加载库和/或被设计用于在 计算机系统上运行的其它指令序列。

说明书和图应当被视为仅仅是示例,并且本公开的范围因此旨在仅由权 利要求及其等同物来限定。注意,并非所有在上面的一般性描述中所描述的 活动(activity)或元素都是必需的,特定活动或设备的一部分可以不被要求, 并且除了所描述的那些以外,一个或多个进一步的活动可以被执行,或者元 素可以被包括。更进一步地,所列出的活动的顺序不一定是它们被执行的顺 序。以上所描绘的流程图的步骤可以按任何顺序进行,除非另有规定,并且 步骤可以取决于实施方式而被消除、重复和/或添加。此外,已经参照特定实 施例描述了构思。然而,本领域普通技术人员应当理解,可以做出各种修改 和改变而不脱离如权利要求所阐明的本公开的范围。因此,说明书和图应被 认为是说明性的而不是限制性的,并且所有这些修改旨在被包括在本公开的 范围之内。

以上已经关于特定实施例描述了益处、其它优点和问题的解决方案。然 而,这些益处、优点、问题的解决方案、以及可以使得任何益处、优点或解 决方案发生或变得更加明显的(多个)任何特征不应被解释为任意或所有权 利要求的关键的、必需的或必要的特征。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号