首页 / 专利分类库 / 测时学 / 时间间隔的测量 / 用于深度传感的时间数字转换器

用于深度传感的时间数字转换器

申请号 CN202110460102.1 申请日 2021-04-27 公开(公告)号 CN113641088A 公开(公告)日 2021-11-12
申请人 脸谱科技有限责任公司; 发明人 迈克尔·霍尔; 奥古斯托·龙基尼西门内斯;
摘要 本 申请 涉及用于深度传感的 时间数字转换器 。 深度相机 组件用于获得描述局部区域的深度信息。深度相机组件包括具有多个 像素 的 传感器 。一些或所有像素被分成耦合到各自的多用途时间数字转换器的组。每个多用途时间数字转换器包括 振荡器 和计数器。组中的每个像素与多路复用器相关联,该多路复用器被配置为在耦合到该像素、振荡器或与不同像素相关联的计数器的输入端之间进行选择。多路复用器将 信号 输出到与像素相关联的时间数字转换器的计数器。在图像 帧 的第一部分期间进行飞行时间测量。在图像帧的第二部分期间,传感器可以用作强度计数器。在图像帧的第三部分期间,可以校准深度传感器。
权利要求

1.一种深度相机组件(DCA),包括:
传感器,所述传感器包括被配置为捕获局部区域的图像的多个像素,所述多个像素包括一组像素;
彼此耦合的多个计数器,其中所述多个计数器中的每一个耦合到所述一组像素中的对应像素;和
控制器,所述控制器被配置为:
在图像的第一部分期间,估计与由所述一组像素中的每个像素收集的光相关联的原始深度值;和
在所述图像帧的第二部分期间,对所述一组像素中的第一像素执行强度测量,其中所述强度测量部分地基于在所述图像帧的第二部分期间从所述多个计数器接收的信息。
2.根据权利要求1所述的深度相机组件,其中所述控制器还被配置成使用所述强度测量来校准所述图像帧的原始深度值。
3.根据权利要求1所述的深度相机组件,其中所述控制器还被配置为在所述图像帧的第二部分期间,对所述一组像素中的第二像素执行强度测量,其中所述第二像素的强度测量部分地基于在所述图像帧的第二部分期间从所述多个计数器接收的信息。
4.根据权利要求1所述的深度相机组件,其中所述传感器包括多个时间数字转换器,其中所述多个时间数字转换器中的每一个耦合到所述一组像素中的相应像素。
5.根据权利要求4所述的深度相机组件,其中,所述控制器还被配置成在所述图像帧的第三部分期间校准所述时间数字转换器中的一个或更多个。
6.根据权利要求1所述的深度相机组件,其中所述原始深度值包括飞行时间测量值。
7.根据权利要求1所述的深度相机组件,其中:
在所述图像帧的第一部分期间,多路复用器被配置成选择耦合到振荡器的多路复用器输入端;和
在所述图像帧的第二部分期间,所述多路复用器被配置成选择耦合到所述第一像素的多路复用器输入端。
8.一种方法,其包括:
在包括传感器的深度相机组件的图像帧的第一部分期间,估计与由所述传感器上的一组像素中的每个像素收集的光相关联的原始深度值;和
在所述图像帧的第二部分期间,对所述一组像素中的第一像素执行强度测量,其中所述强度测量部分地基于在所述图像帧的第二部分期间从多个计数器接收的信息,其中所述多个计数器中的每一个耦合到所述一组像素中的对应像素。
9.根据权利要求8所述的方法,还包括使用所述强度测量来校准所述图像帧的原始深度值。
10.根据权利要求8所述的方法,还包括在所述图像帧的第二部分期间,对所述一组像素中的第二像素执行强度测量,其中所述第二像素的强度测量部分地基于在所述图像帧的第二部分期间从所述多个计数器接收的信息。
11.根据权利要求8所述的方法,其中所述传感器包括多个时间数字转换器,其中所述多个时间数字转换器中的每一个耦合到所述一组像素中的相应像素。
12.根据权利要求11所述的方法,还包括在所述图像帧的第三部分期间,校准所述时间数字转换器中的一个或更多个。
13.根据权利要求8所述的方法,其中所述原始深度值包括飞行时间测量值。
14.根据权利要求8所述的方法,还包括:
在所述图像帧的第一部分期间,由多路复用器选择耦合到振荡器的多路复用器输入端;和
在所述图像帧的第二部分期间,由所述多路复用器选择耦合到所述第一像素的多路复用器输入端。
15.一种深度相机组件(DCA),包括:
第一像素;
耦合到所述第一像素的第一时间数字转换器,所述第一时间数字转换器包括第一振荡器和第一计数器;
第一多路复用器,所述第一多路复用器包括:
耦合到所述第一像素的多路复用器输入端;
耦合到所述第一振荡器的多路复用器输入端;和
耦合到所述第一计数器的多路复用器输出端;
第二像素;
耦合到所述第二像素的第二时间数字转换器,所述第二时间数字转换器包括第二振荡器和第二计数器;和
第二多路复用器,所述第二多路复用器包括:
耦合到所述第二像素的多路复用器输入端;
耦合到所述第二振荡器的多路复用器输入端;
耦合到所述第一计数器的多路复用器输入端;和
耦合到所述第二计数器的多路复用器输出端。
16.根据权利要求15所述的深度相机组件,还包括控制器,所述控制器被配置成:
在图像帧的第一部分期间,估计与由包括所述第一像素和所述第二像素的一组像素中的每个像素收集的光相关联的原始深度值;和
在所述图像帧的第二部分期间,对所述第一像素执行强度测量,其中所述强度测量部分地基于在所述图像帧的第二部分期间从所述第一计数器和所述第二计数器接收的信息。
17.根据权利要求15所述的深度相机组件,其中:
在图像帧的飞行时间部分期间,所述第一多路复用器被配置为选择耦合到所述第一振荡器的多路复用器输入端,并且所述第二多路复用器被配置为选择耦合到所述第二振荡器的多路复用器输入端;和
在所述图像帧的第一强度部分期间,所述第一多路复用器被配置为选择耦合到所述第一像素的多路复用器输入端,并且所述第二多路复用器被配置为选择耦合到所述第一计数器的多路复用器输入端。
18.根据权利要求17所述的深度相机组件,其中,在所述图像帧的第二强度部分期间,所述第一多路复用器被配置为选择耦合到所述第二计数器的多路复用器输入端,并且所述第二多路复用器被配置为选择耦合到所述第二像素的多路复用器输入端。
19.根据权利要求15所述的深度相机组件,还包括时钟,所述时钟被配置为在图像帧的飞行时间校准部分期间,在已知时间向所述第一振荡器和所述第二振荡器提供起始信号和停止信号。
20.根据权利要求19所述的深度相机组件,其中,在所述图像帧的飞行时间校准部分期间,所述第一多路复用器被配置为选择耦合到所述第一振荡器的多路复用器输入端,并且所述第二多路复用器被配置为选择耦合到所述第二振荡器的多路复用器输入端。

说明书全文

用于深度传感的时间数字转换器

发明领域

[0001] 本公开总体涉及人工现实系统,更具体地说,涉及深度传感(depth sensing)人工现实系统。
[0002] 背景
[0003] 深度传感系统确定描述局部区域的深度信息。深度传感系统通常包括用光照亮一部分局部区域的光投影仪。该光可以是例如用于飞行时间(TOF)测量的红外(IR)光。一个或更多个深度传感器检测来自局部区域部分中的对象的反射光,该反射光包括来自光投影仪的光,并且控制器使用检测到的光计算局部区域部分的深度信息。深度获取时间可能比图像的持续时间短。因此,深度传感器上的像素对于每个帧的部分可能是未被使用的。
[0004] 概述
[0005] 深度相机组件用于获得描述局部区域的深度信息。深度相机组件包括具有多个像素的传感器。一些或所有像素被分成耦合到各自的多用途时间数字转换器(TDC,time‑to‑digital converter)的组。每个多用途TDC包括振荡器和计数器。组中的每个像素与多路复用器相关联,该多路复用器被配置为在来自像素、振荡器或与不同像素相关联的计数器的输入之间进行选择。多路复用器将信号输出到与像素相关联的TDC的计数器。在图像帧的第一部分期间进行TOF测量。在图像帧的第二部分期间,传感器可以用作强度计数器。在帧的第三部分期间,可以校准深度传感器。
[0006] 深度相机组件(DCA)包括传感器,该传感器包括被配置为捕获局部区域的图像的多个像素。多个像素包括一组像素。DCA包括彼此耦合的多个计数器,其中多个计数器中的每一个耦合到一组像素中的对应像素。该DCA包括控制器,该控制器被配置为在图像帧的第一部分期间估计与由一组像素中的每个像素收集的光相关联的原始深度值。控制器被配置为在图像帧的第二部分期间,对一组像素中的第一像素执行强度测量。强度测量可以部分地基于在图像帧的第二部分期间从多个计数器接收的信息。
[0007] 一种方法可以包括:在包括传感器的DCA的图像帧的第一部分期间,估计与由传感器上的一组像素中的每个像素收集的光相关联的原始深度值。该方法可以包括在图像帧的第二部分期间,对一组像素中的第一像素执行强度测量。强度测量可以部分地基于在图像帧的第二部分期间从多个计数器接收的信息。多个计数器中的每一个可以耦合到一组像素中的对应像素。
[0008] DCA可以包括第一像素和耦合到第一像素的第一时间数字转换器。第一时间数字转换器包括第一振荡器和第一计数器。DCA可以包括第一多路复用器,该第一多路复用器包括耦合到第一像素的多路复用器输入端、耦合到第一振荡器的多路复用器输入端和耦合到第一计数器的多路复用器输出端。DCA可以包括第二像素和耦合到第二像素的第二时间数字转换器。第二时间数字转换器包括第二振荡器和第二计数器。DCA可以包括第二多路复用器,该第二多路复用器包括耦合到第二像素的多路复用器输入端、耦合到第二振荡器的多路复用器输入端、耦合到第一计数器的多路复用器输入端和耦合到第二计数器的多路复用器输出端。
[0009] 附图简述
[0010] 图1A是根据一个或更多个实施例的实施为眼镜设备的头戴装置(headset)的透视图。
[0011] 图1B是根据一个或更多个实施例的实施为头戴式显示器的头戴装置的透视图。
[0012] 图2是根据一个或更多个实施例的深度相机组件的框图
[0013] 图3是根据一个或更多个实施例,在TOF子帧期间的一组像素的示意图。
[0014] 图4是根据一个或更多个实施例,在第一像素的强度子帧期间图3的一组像素的示意图。
[0015] 图5是根据一个或更多个实施例,在第二像素的强度子帧期间图3的一组像素的示意图。
[0016] 图6是根据一个或更多个实施例,在第三像素的强度子帧期间图3的一组像素的示意图。
[0017] 图7是根据一个或更多个实施例,在第四像素的强度子帧期间图3的一组像素的示意图。
[0018] 图8是根据一个或更多个实施例,在TOF校准子帧期间图3的一组像素的示意图。
[0019] 图9是示出根据一个或更多个实施例的用于校准传感器的过程的流程图
[0020] 图10是根据一个或更多个实施例的包括具有深度相机组件的头戴装置的系统,该深度相机组件包括多用途时间数字转换器。
[0021] 附图仅为了说明的目的而描绘各种实施例。本领域中的技术人员从下面的讨论中将容易认识到,本文示出的结构和方法的替代实施例可以被采用而不偏离本文所述的原理。
[0022] 详细描述
[0023] 头戴装置包括用于获得描述局部区域的深度信息的深度相机组件。深度相机组件包括具有多个像素的传感器。一些或所有像素被分成耦合到各自的多用途时间数字转换器的组。每个多用途时间数字转换器包括振荡器和计数器。组中的每个像素与多路复用器相关联,该多路复用器被配置为在来自像素、振荡器或与不同像素相关联的计数器的输入之间进行选择。多路复用器将信号输出到与像素相关联的时间数字转换器(TDC)的计数器。在图像帧的第一部分期间进行飞行时间(TOF)测量。为了防止运动模糊,TOF测量的持续时间可能显著小于图像帧的持续时间。因此,在图像帧的剩余部分期间,传感器部件可用于其他功能。在图像帧的第二部分期间,传感器可以用作强度计数器。在帧的第三部分期间,可以校准深度传感器。
[0024] 组合多个TDC计数器,依次获得一组中每个像素的强度计数。通过使用组合计数器来在不同时间测量该组中像素的强度,可以以宽动态范围提取传感器的固有(native)分辨率。例如,在一个组中具有四个像素并且每个像素具有五位计数器的实施例中,通过在图像帧期间电子地重新排列计数器,可以在深度传感器的图像帧的常规空闲时间期间获得处于固有分辨率的二十位强度计数器。可以在图像帧期间以任何顺序执行TOF测量、强度测量和TOF校准。
[0025] 可以在传统系统使像素空闲的图像帧部分期间获得强度值。强度值可用于估计在不将光投射到局部区域的情况下的环境光和将光投射到局部区域时的目标反射率等。传感器可以用于深度和强度信息,这可以减少当在不同位置使用单独的强度传感器和深度传感器时由对准问题引起的误差。
[0026] 本发明的实施例可以包括人工现实系统或者结合人工现实系统来实现。人工现实是一种在呈现给用户之前已经以某种方式进行了调整的现实形式,其可以包括例如虚拟现实(VR)、增强现实(AR)、混合现实(MR)、混杂现实或其某种组合和/或衍生物。人工现实内容可以包括完全生成的内容或者与捕获的(例如,真实世界的)内容相结合的生成的内容。人工现实内容可以包括视频、音频、触觉反馈、或其某种组合,其中任何一个都可以在单个通道中或在多个通道中被呈现(诸如向观看者产生三维效果的立体视频)。另外,在一些实施例中,人工现实还可以与应用、产品、附件、服务或其某种组合相关联,这些应用、产品、附件、服务或其某种组合用于在人工现实中创建内容和/或在人工现实中以其他方式使用。提供人工现实内容的人工现实系统可以在各种平台上实现,这些平台包括连接到主计算机系统的可穿戴设备(例如,头戴装置)、独立的可穿戴设备(例如,头戴装置)、移动设备或计算系统、或者能够向一个或更多个观看者提供人工现实内容的任何其他硬件平台。
[0027] 图1A是根据一个或更多个实施例的实施为眼镜设备的头戴装置100的透视图。在一些实施例中,眼镜设备是近眼显示器(NED)。通常,头戴装置100可以戴在用户的脸上,使得使用显示组件和/或音频系统呈现内容(例如,媒体内容)。然而,也可以使用头戴装置100使得以不同的方式向用户呈现媒体内容。由头戴装置100呈现的媒体内容的示例包括一个或更多个图像、视频、音频、或它们的某种组合。头戴装置100包括框架,并且除了其他部件之外,可以包括显示组件、深度相机组件(DCA)150、音频系统和位置传感器190,该显示组件包括一个或更多个显示元件120。虽然图1A示出了头戴装置100的部件在头戴装置100上的示例位置,但是这些部件可以位于头戴装置100上的其他地方、位于与头戴装置100配对外围设备上、或者它们的某种组合。类似地,头戴装置100上可以有比图1A所示更多或更少的部件。
[0028] 框架110保持头戴装置100的其他部件。框架110包括保持一个或更多个显示元件120的前部和用于附接到用户的头部的末端件(例如镜腿(temples))。框架110的前部架在(bridge)用户鼻子的顶部。末端件的长度可以是可调的(例如,可调的镜腿长度),以适合不同的用户。末端件也可以包括在用户朵后面弯曲(curl)的部分(例如,镜腿套(temple tip)、挂耳件(ear piece))。
[0029] 一个或更多个显示元件120向佩戴头戴装置100的用户提供光。如图所示,头戴装置包括用于用户每只眼睛的显示元件120。在一些实施例中,显示元件120生成提供给头戴装置100的视窗(eyebox)的图像光。视窗是佩戴头戴装置100时用户的眼睛占据的空间位置。例如,显示元件120可以是波导显示器。波导显示器包括光源(例如,二维光源、一个或更多个线光源、一个或更多个点光源等)和一个或更多个波导。来自光源的光被向内耦合到一个或更多个波导中,该波导以这样的方式输出光:使得在头戴装置100的视窗中存在光瞳复制(pupil replication)。来自一个或更多个波导的光的向内耦合和/或向外耦合可以使用一个或更多个衍射光栅来完成。在一些实施例中,波导显示器包括扫描元件(例如,波导、反射镜等),在来自光源的光被向内耦合到一个或更多个波导中时,该扫描元件扫描来自光源的光。注意,在一些实施例中,显示元件120中的一个或两个是不透明的,并且不透射来自头戴装置100周围的局部区域的光。局部区域是头戴装置100周围的区域。例如,局部区域可以是佩戴头戴装置100的用户在里面的房间,或者佩戴头戴装置100的用户可以在外面,并且局部区域是外部区域。在一些实施例中,局部区域可以包括用户的脸,诸如用户的眼睛。在这种情况下,头戴装置100生成VR内容。或者,在一些实施例中,显示元件120中的一个或两个至少部分地透明,使得来自局部区域的光可以与来自一个或更多个显示元件的光组合,以产生AR和/或MR内容。
[0030] 在一些实施例中,显示元件120不生成图像光,而是透镜将光从局部区域传输到视窗。例如,显示元件120中的一个或两个可以是无矫正的透镜(非处方透镜)或者(例如,单视、双焦点和三焦点或渐进)处方透镜,以帮助矫正用户视缺陷。在一些实施例中,显示元件120可以被偏振和/或着色,以保护用户的眼睛免受阳光影响。
[0031] 在一些实施例中,显示元件120可以包括附加的光学(未示出)。光学块可以包括一个或更多个光学元件(例如,透镜、菲涅尔透镜等)其将来自显示元件120的光导向视窗。光学块可以例如校正一些或所有图像内容中的像差,放大一些或所有图像,或者它们的某种组合。
[0032] DCA150确定头戴装置100周围的一部分局部区域的深度信息。DCA包括一个或更多个成像设备130和DCA控制器(图1A中未示出),并且还可以包括光投影仪140。在一些实施例中,光投影仪140用光照亮一部分局部区域。该光可以是例如红外(IR)的结构光(例如点图案、条形等)、用于飞行时间测量的IR光等。在一些实施例中,一个或更多个成像设备130捕获包括来自光投影仪140的光的局部区域部分的图像。如图所示,图1A示出了单个光投影仪140和两个成像设备130。DCA150包括包含成组像素的传感器。每组像素包括与该组中的每个像素相关联的多用途时间数字转换器(TDC)。
[0033] DCA控制器使用捕获的图像和一种或更多种深度确定技术来计算一部分局部区域的深度信息。深度确定技术可以是例如直接飞行时间(TOF)深度传感或间接TOF深度传感。在一些实施例中,DCA控制器可以使用额外的技术(诸如结构光、被动立体分析、主动立体分析(使用由来自光投影仪140的光添加到场景的纹理)、确定场景深度的一些其他技术或它们的一些组合)来获得深度信息。
[0034] DCA 150被配置为在单个图像帧期间获得TOF信息和强度信息两者。在图像帧的第一部分期间,DCA 150被配置成获得TOF信息。在图像帧的第二部分期间,DCA 150被配置成获得强度信息。在图像帧的第三部分期间,DCA 150被配置为校准传感器。可以在图像帧期间以任何顺序执行TOF测量、强度测量和TOF校准。参考图2进一步描述了DCA 150的操作和结构。
[0035] DCA可以包括确定眼睛跟踪信息的眼睛跟踪单元。眼睛跟踪信息可以包括关于一只或两只眼睛(在它们各自的视窗内)的定位和取向的信息。眼睛跟踪单元可以包括一个或更多个相机。眼睛跟踪单元基于由一个或更多个相机捕获的一只或两只眼睛的图像来估计一只或两只眼睛的度取向。眼睛跟踪单元可以使用TOF测量获得描述眼睛位置的深度信息。眼睛跟踪单元可以在单个图像帧期间获得TOF信息和强度信息两者。在一些实施例中,眼睛跟踪单元可以用照明图案(例如,结构光、闪光等)照亮一只或两只眼睛。眼睛跟踪单元可以使用捕获的图像中的照明图案来确定眼睛跟踪信息。头戴装置100可以提示用户选择加入以允许眼睛跟踪单元的操作。例如,通过选择加入,头戴装置100可以检测、存储用户的任何图像或用户的眼睛跟踪信息。
[0036] 音频系统提供音频内容。该音频系统包括换能器阵列、传感器阵列和音频控制器。然而,在其他实施例中,音频系统可以包括不同的和/或附加的部件。类似地,在一些情况下,参考音频系统的部件描述的功能可以以不同于这里描述的方式分布在部件中。例如,控制器的一些或所有功能可以由远程服务器执行。
[0037] 换能器阵列向用户呈现声音。换能器阵列包括多个换能器。换能器可以是扬声器160或组织换能器170(例如,骨传导换能器或软骨传导换能器)。尽管扬声器160被示出在框架110的外部,但是扬声器160可以被封装在框架110中。在一些实施例中,代替用于每个耳朵的单独的扬声器,头戴装置100包括扬声器阵列,该扬声器阵列包括集成到框架110中的多个扬声器,以改善所呈现的音频内容的方向性。组织换能器170耦合到用户的头部,并直接振动用户的组织(例如,骨或软骨)以生成声音。换能器的数量和/或位置可以不同于图1A所示的。
[0038] 传感器阵列检测头戴装置100的局部区域内的声音。传感器阵列包括多个声学传感器180。声学传感器180捕获从局部区域(例如,房间)中的一个或更多个声源发出的声音。每个声学传感器被配置成检测声音并将检测到的声音转换成电子格式(模拟或数字)。声学传感器180可以是声波传感器、麦克声换能器或适于检测声音的类似传感器。
[0039] 在一些实施例中,一个或更多个声学传感器180可以放置在每个耳朵的耳道中(例如,充当双耳麦克风)。在一些实施例中,声学传感器180可以放置在头戴装置100的外表面上、放置在头戴装置100的内表面上、与头戴装置100分离(例如,作为某种其他设备的一部分)、或者它们的某种组合。声学传感器180的数量和/或位置可以不同于图1A中所示的。例如,可以增加声学检测位置的数量,以增加所收集的音频信息量以及信息的灵敏度和/或准确性。声学检测位置可以被定向成使得麦克风能够检测佩戴头戴装置100的用户周围的较大范围方向上的声音。
[0040] 音频控制器处理来自传感器阵列的信息,该信息描述了传感器阵列检测到的声音。音频控制器可以包括处理器和计算机可读存储介质。音频控制器可以被配置成生成到达方向(DOA)估计、生成声学传递函数(例如,阵列传递函数和/或头部相关传递函数)、跟踪声源的位置、在声源的方向上形成波束、对声源进行分类、为扬声器160生成声音滤波器、或者它们的某种组合。
[0041] 位置传感器190响应于头戴装置100的运动而生成一个或更多个测量信号。位置传感器190可以位于头戴装置100的框架110的一部分上。位置传感器190可以包括惯性测量单元(IMU)。位置传感器190的示例包括:一个或更多个加速度计、一个或更多个陀螺仪、一个或更多个磁力计、检测运动的另一合适类型的传感器、用于IMU的误差校正的一种类型的传感器、或者它们的某种组合。位置传感器190可以位于IMU的外部、IMU的内部或者它们的某种组合。
[0042] 在一些实施例中,头戴装置100可以提供头戴装置100的位置的同步定位与地图构建(SLAM)以及局部区域模型的更新。例如,头戴装置100可以包括生成彩色图像数据的无源照相机组件(PCA)。PCA可以包括捕获部分或全部局部区域图像的一个或更多个RGB相机。在一些实施例中,DCA的一些或所有成像设备130也可以用作PCA。由PCA捕获的图像和由DCA确定的深度信息可用于确定局部区域的参数、生成局部区域的模型、更新局部区域的模型或其某种组合。此外,位置传感器190跟踪头戴装置100在房间内的位置(例如,定位和姿势)。下面结合图10讨论关于头戴装置100的部件的附加细节。
[0043] 图1B是根据一个或更多个实施例的实施为HMD的头戴装置105的透视图。在描述AR系统和/或MR系统的实施例中,HMD的前侧的部分在可见光波段(约380nm至750nm)至少是部分透明的,并且在HMD的前侧和用户的眼睛之间的HMD的部分至少是部分透明的(例如,部分透明的电子显示器)。HMD包括前刚性体115和带175。头戴装置105包括上面参考图1A描述的许多相同的部件,但是被修改为与HMD形状因数集成。例如,HMD包括显示组件、DCA 150、音频系统和位置传感器190。图1B示出了光投影仪140、多个扬声器160、多个成像设备130、多个声学传感器180和位置传感器190。扬声器160可以位于不同的位置,诸如耦合到带175(如图所示),耦合到前刚性体115,或者可以被配置为插入用户的耳道内。
[0044] 图2是根据一个或更多个实施例的DCA 200的框图。图1A和图1B的深度相机组件150可以是深度相机组件200的实施例。深度相机组件200被配置成获得深度相机组件200周围的局部区域的深度信息。例如,深度相机组件200可以被配置成检测房间中对象的位置。
在涉及眼睛跟踪的实施例中,局部区域可以包括头戴装置用户的眼睛。
[0045] 深度相机组件200包括被配置为将光投射到局部区域的光投影仪210。图1A和图1B的光投影仪140可以是光投影仪210的实施例。该光可以是例如红外(IR)的结构光(例如点图案、条形等)、用于飞行时间测量的IR光等。投射的光从局部区域中的对象反射,并且反射光的一部分被深度相机组件200检测到。
[0046] 深度相机组件200包括被配置成检测光的传感器220。在一些实施例中,传感器220可以包括电荷耦合器件(CCD)或互补金属化物半导体(CMOS)。传感器220包括多个像素。每个像素被配置成检测入射到像素上的光子。像素被配置成检测包括投射光波长的窄带宽的光。每个像素可以对应于相对于传感器220的不同方向。
[0047] 传感器220被配置成在图像帧的不同部分期间获得不同类型的信息。图像帧可以被分成N个子帧。在图像帧的TOF子帧期间,传感器220被配置成获得TOF测量值。在一个或更多个强度子帧期间,传感器220被配置成获得强度测量值。图像帧可以包括N‑2个强度子帧。在TOF校准子帧期间,传感器220被配置为校准传感器220。
[0048] 传感器220的像素被排列成这样的组:其被配置成获得深度信息和强度信息。一个组包括多个像素,诸如四个、八个或任何其他合适数量的像素。对于具有N个子帧的图像帧,一组像素可以包括N‑2个像素。组中的像素可以是单行、单列、正方形或矩形排列或其某种组合中的相邻像素(即,没有像素位于两个相邻像素之间)。在一些实施例中,组中的像素可以彼此不相邻,并且可以位于传感器220上的任何合适的定位。
[0049] 组中的每个像素耦合到各自的时间数字转换器,该时间数字转换器被配置为在TOF子帧期间记录飞行时间测量值。时间数字转换器可以包括振荡器和计数器。振荡器通过多路复用器耦合到计数器。计数器可以是纹波计数器(ripple counter)(也称为异步计数器)。计数器可以包括四位、五位或任何其他合适数量的位。组中的像素数量可以取决于期望的动态范围。在一组像素的计数器需要20位并且每个计数器包括5位的一个实施例中,可以选择该组具有4个像素。在具有更大数量像素的组中,图像帧可以被划分成更大数量的阶段(phase),以便实现固有分辨率。
[0050] 在一些实施例中,DCA可以使用起止方案(start‑stop scheme)来计算距离。在起止方案中,DCA可以包括时钟,该时钟在光投影仪210发射脉冲的同时向时间数字转换器发送信号。振荡器被配置为使计数器递增,直到从像素接收到一个或更多个脉冲,该脉冲指示检测到由光投影仪210发射并由局部区域中的对象反射的光子。可以基于由光投影仪210发射的脉冲和由像素检测到光子之间的测量时间来计算到对象的距离。
[0051] 在一些实施例中,DCA可以使用反向起止方案(reverse start‑stop scheme)来计算距离。在反向起止方案中,响应于像素检测到光子,像素发送启动振荡器的信号。振荡器被配置为使计数器递增,直到来自时钟的信号使计数器停止。时钟信号从激光脉冲的发射延迟了总测量范围。延迟可以是最大可测量距离的两倍除以光速。计数器值可用于计算到反射检测到的光子的对象的距离。
[0052] 在一组像素中的第一像素的强度子帧期间,第一像素被配置为向计数器发送信号。响应于第一像素的单光子检测,第一像素被配置为发送使计数器递增的脉冲。该组中每个像素的计数器通过多路复用器耦合在一起,以形成包括来自每个单独计数器的位的组合计数器。例如,对于四个五位计数器,组合计数器包括二十位。因此,来自像素的每个脉冲使组合计数器递增。在一组像素中的第二像素的强度子帧期间,计数器被重新配置以形成第二像素的组合计数器,并且由第二像素发送的每个脉冲使第二像素的组合计数器递增。组中每个像素的强度可以在每个像素的相应强度子帧期间测量。
[0053] 该组中的每个像素耦合到多路复用器,该多路复用器被配置为在多个输入之间进行选择。多路复用器可以包括来自振荡器的第一输入、来自像素的第二输入和来自一组像素中不同像素的计数器的第三输入。多路复用器的输出耦合到计数器。在TOF子帧期间,多路复用器被配置为选择来自振荡器的输入。在TOF校准子帧期间,多路复用器被配置为选择来自振荡器的输入,如在常规TOF操作中一样。外部信号用于使用校准脉冲宽度启动和停止TDC,以用于校准。在一组像素中的第一像素的强度子帧期间,多路复用器被配置为选择来自第一像素的输入。在一组像素中其他像素的强度子帧期间,第一像素的多路复用器被配置为选择耦合到该一组像素中不同像素的计数器的多路复用器输入端。
[0054] 控制器230被配置为向DCA 200的各种部件提供指令,并使用一种或更多种深度确定技术来计算局部区域的深度信息。深度确定技术可以是例如直接TOF深度传感或间接TOF深度传感。在一些实施例中,控制器230可以使用结构光、被动立体分析、主动立体分析(使用由来自光投影仪140的光添加到场景的纹理)、确定场景深度的一些其他技术或它们的一些组合来计算深度信息。
[0055] 控制器230被配置成以深度帧速率计算深度信息。深度帧速率可以由控制器230或包括控制器230的系统的其他部件来指定。在一些实施例中,深度帧速率可以在30‑50帧每秒(fps)之间,在1fps‑100fps之间,或者任何其他合适的帧速率。每个深度帧都有一个帧长度。例如,30fps深度帧速率的深度帧具有33毫秒(ms)的帧长度。然而,控制器230可以在小于总帧长度的每个深度帧的一部分期间获得深度信息。例如,对于33ms深度帧,控制器230可以在5ms TOF子帧期间获得深度信息。控制器230将每个深度帧分成多个子帧。例如,控制器230可以将深度帧分成控制器230在其间获得深度信息的TOF子帧、控制器230在其间获得强度信息的一个或更多个强度子帧以及控制器230在其间校准传感器220的校准子帧。
[0056] 控制器230包括照明模块240,照明模块240被配置为向光投影仪210提供指令。照明模块240被配置成指示光投影仪210将光发射到局部区域。在TOF子帧期间,照明模块240可以指示光投影仪210发射光脉冲。光脉冲可以包括照亮光投影仪210的视场的IR光、结构光图案或它们的某种组合。光脉冲可以在传感器220被配置成检测的窄带宽中。例如,光脉冲可以是半最大值全宽度小于10nm或小于1nm的红外光。在强度子帧期间,照明模块240可以指示光投影仪210发射脉冲光、稳定光或者不活动。例如,光投影仪210可以不活动以获得环境辐射强度,或者光投影仪210可以投射光以校准对象反射率。在校准子帧期间,照明模块240可以指示光投影仪210不活动。
[0057] 控制器230包括深度确定模块250。深度确定模块250被配置为向传感器220提供指令以获得深度信息。深度确定模块250被配置为基于由传感器220获得的信息来计算深度信息。在TOF子帧期间,深度确定模块250指示传感器220为传感器220的每个像素激活到多路复用器的振荡器输入。深度确定模块250获得照明模块240的脉冲发射和每个像素的光子检测之间的持续时间,并计算每个像素的深度信息。深度确定模块250可以以起止方案或反向起止方案操作。可以通过将振荡器相位信息与计数器值相结合来计算持续时间。在一些实施例中,深度确定模块250可以基于检测结构光图案中的失真来获得深度信息。控制器230可以基于每个像素的深度信息生成局部区域的深度图(depth map)。
[0058] 控制器230包括强度模块260,强度模块260被配置为获得传感器220上的每组像素中的一个或更多个像素的强度信息。在一些实施例中,强度模块260可以获得每组像素中所有像素的强度信息。在第一强度子帧期间,强度模块260指示传感器220激活多路复用器的用于一组像素中的第一像素的像素输入端,并激活多路复用器的用于一组像素中的其他像素的计数器输入端。响应于单光子检测,第一像素通过其多路复用器发送信号使其计数器递增。第一像素的计数器的输出端耦合到多路复用器的用于一组像素中第二像素的计数器输入端。响应于第一像素的计数器达到其最大计数,计数器输出信号,该信号使一组像素中的第二像素的计数器递增。例如,对于五位计数器,计数器可以从0‑31计数。响应于32计数,计数器可以使第二像素的计数器递增(例如,从0到1),并将第一像素的计数复位为0。类似地,第二像素的计数器的输出端耦合到多路复用器的用于第三组像素的计数器输入端。因此,第一计数器的位可以表示完整计数的最低有效位,并且一组像素中的每个后续计数器可以表示下一个更高的有效位。通过将来自多个像素的计数器耦合在一起,可以使用更大数量的位来计数单个像素上的事件。例如,在一组四个像素中,每个像素耦合到一个五位计数器,一个像素的强度值可以使用二十位来计数。强度模块260从所有使用的计数器读取该值,以获得像素的强度值。因此,像素可以曝光更长的时间而不会达到饱和,这可以允许更精确的强度读取。
[0059] 在第二强度子帧期间,强度模块260可以指示传感器220激活多路复用器用于一组像素中的第二像素的像素输入,并激活多路复用器的用于一组像素中的其他像素的计数器输入。类似地,在第三强度子帧期间,强度模块260可以指示传感器220激活多路复用器用于一组像素中的第三像素的像素输入,并激活多路复用器的用于一组像素中的其他像素的计数器输入。对于一组像素中的每个像素,强度模块260可以指示传感器220在不同的强度子帧期间获得该像素的强度值。在一些实施例中,强度模块260可以在深度帧期间获得一组中的一个像素、该组中的像素子集、该组中的所有像素或其某种组合的强度值。
[0060] 控制器230包括校准模块270,该校准模块270被配置为校准TDC。用于达到TDC振荡器被配置为以恒定速度振荡。然而,随着时间的推移,响应于温度变化,一个或更多个振荡器的振荡速度可能开始变化。校准模块270被配置为校准振荡器的当前振荡速度,以便校准传感器220上的像素的TOF测量值。在校准子帧期间,校准模块270指示传感器激活一个或更多个多路复用器的振荡器输入。在一些实施例中,在一个图像帧中,校准模块270可以校准所有的TDC、传感器220上的一组像素的子集的TDC、一组像素内的TDC的子集、或其某种组合。在一些实施例中,校准模块270可以校准图像帧的子集中的TDC。例如,校准模块270可以在10%的图像帧中执行校准。校准模块270可以包括在已知时间提供信号的时钟。时钟可以提供启动振荡器的第一信号。时钟可以提供停止振荡器的第二信号。在第一信号和第二信号之间,振荡器使TDC的计数器递增。校准模块270知道第一信号和第二信号之间的时间长度。校准模块270读取计数器值。校准模块270基于计数器值和信号之间的时间长度来确定振荡器的振荡速度。当基于深度确定模块250的测量来计算距离时,控制器230可以使用测量的振荡速度。
[0061] 校准模块270可以在深度帧期间校准传感器220上的TDC的子集。例如,校准模块270可以在深度帧期间校准TDC的1%、10%、100%或任何其他合适的部分。校准TDC会消耗功率。为了优化功耗,校准模块270可以基于环境条件修改校准频率。例如,在恒定温度下,或者响应于具有小变化的校准测量,校准模块270可以降低校准频率(例如,通过降低在每个深度帧期间校准的TDC的百分比)。
[0062] 校准模块270可以被配置成使用由强度模块260获得的强度值来校准传感器220。当在没有将光投射到局部区域的情况下获得时,获得的强度值可以表示独立于从光投影仪
210投射的光的环境辐射。获得的强度值可用于通过校准深度测量之外的环境光测量来校准传感器220。当在将光投射到局部区域中获得强度值时,强度值可用于确定局部区域中对象的反射率。反射率确定可用于修改投射到部分局部区域中用于深度确定的光量。例如,在具有高反射率对象的视场部分中,用于TOF测量的投射光的强度可以降低,以减少电池负载。通过强度模式估计目标反射率,可以针对早期检测或高强度返回信号来校准深度重建。
此外,目标反射率可用于引导神经网络,以根据强度和深度测量值来改善深度质量
[0063] 图3是根据一个或更多个实施例的图像帧345的TOF子帧340期间的一组像素300的示意图。一组像素300是参照图2描述的一组像素的实施例。在TOF子帧340期间,组300被配置成获得原始深度值。组300包括第一像素305A、第二像素305B、第三像素305C和第四像素305D。在TOF子帧340期间,光投影仪335向局部区域发射光脉冲。与每个光脉冲同时,时钟
310向每个像素305A、305B、305C、305D的TDC 315A、315B、315C、315D发送信号。该信号启动每个TDC 315A、315B、315C、315D的振荡器320A、320B、320C、320D。多路复用器325A、325B、
325C、325D接收来自振荡器320A、320B、320C、320D的输入,并将信号输出到计数器330A、
330B、330C、330D,该信号使计数器330A、330B、330C、330D递增。在起止方案中,由像素检测到的每个光子使像素向其相应的振荡器发送信号,这停止了振荡器,也停止了相应的计数器。计数器的值被读出到控制器,控制器使用这些值来计算到局部区域中的对象的距离。可以基于像素在不同时间帧期间收集的电荷的比率来计算距离。或者,以反向起止方案操作,每个检测到的光子启动TDC,并且来自时钟310的信号停止计数器。飞行时间是使用激光触发器和停止时钟之间的已知偏移来计算的。
[0064] 图4示出了像素305A的强度子帧410期间的一组像素300。在强度子帧410期间,一组像素300被配置成测量像素305A的强度。多路复用器325A被配置为选择耦合到像素305A的多路复用器输入端。多路复用器325B被配置为选择耦合到计数器330A的输出端的多路复用器输入端。多路复用器325C被配置为选择耦合到计数器330B的输出端的多路复用器输入端。多路复用器325D被配置为选择耦合到计数器330C的输出端的多路复用器输入端。响应于像素305A检测到光子,像素305A发送使计数器330A递增的信号。如图所示,每个计数器330A、330B、330C、330D包括五位,并且可以从00000计数到11111(0‑31)。响应于计数器330A达到其最大计数,下一个信号使计数器330A复位并使计数器330B递增。类似地,一旦达到其最大计数,下一个信号使计数器330B复位并使计数器330C递增,等等。因此,四个计数器
330A、330B、330C、330D一起形成二十位计数器。来自四个计数器330A、330B、330C、330D的组合计数可以在强度子帧410的末尾被读出,以提供像素305A的强度值。
[0065] 图5示出了像素305B在强度子帧510期间的一组像素300。在强度子帧510期间,一组像素300被配置成测量像素305B的强度。多路复用器325B被配置为选择耦合到像素305B的多路复用器输入端。多路复用器325C被配置为选择耦合到计数器330B的输出端的多路复用器输入端。多路复用器325D被配置为选择耦合到计数器330C的输出端的多路复用器输入端。多路复用器325A被配置成选择耦合到计数器330D的输出端的多路复用器输入端。响应于像素305B检测到光子,像素305B发送使计数器330B递增的信号。响应于计数器330B达到其最大计数,下一个信号使计数器330B复位并使计数器330C递增。类似地,在达到其最大计数时,下一个信号使计数器330C复位并使计数器330D递增,等等。因此,四个计数器330A、330B、330C、330D一起形成二十位计数器。来自四个计数器330A、330B、330C、330D的组合计数可以在强度子帧510的末尾被读出,以提供像素305B的强度值。
[0066] 图6示出了像素305C的强度子帧610期间的一组像素300。在强度子帧610期间,一组像素300被配置成测量像素305C的强度。多路复用器325C被配置为选择耦合到像素305C的多路复用器输入端。多路复用器325D被配置为选择耦合到计数器330C的输出端的多路复用器输入端。多路复用器325A被配置成选择耦合到计数器330D的输出端的多路复用器输入端。多路复用器325B被配置为选择耦合到计数器330A的输出端的多路复用器输入端。响应于像素305C检测到光子,像素305C发送使计数器330C递增的信号。响应于计数器330C达到其最大计数,下一个信号使计数器330C复位并使计数器330D递增。类似地,一旦达到其最大计数,下一个信号使计数器330D复位并使计数器330A递增,等等。因此,四个计数器330A、330B、330C、330D一起形成二十位计数器。来自四个计数器330A、330B、330C、330D的组合计数可以在强度子帧610的末尾读出,以提供像素305C的强度值。
[0067] 图7示出了像素305D的强度子帧710期间的一组像素300。在强度子帧710期间,一组像素300被配置成测量像素305D的强度。多路复用器325D被配置为选择耦合到像素305D的多路复用器输入端。多路复用器325A被配置成选择耦合到计数器330D的输出端的多路复用器输入端。多路复用器325B被配置为选择耦合到计数器330A的输出端的多路复用器输入端。多路复用器325C被配置为选择耦合到计数器330B的输出端的多路复用器输入端。响应于像素305D检测到光子,像素305D发送使计数器330D递增的信号。响应于计数器330D达到其最大计数,下一个信号使计数器330D复位并使计数器330A递增。类似地,在达到其最大计数时,下一个信号使计数器330A复位并使计数器330B递增,等等。因此,四个计数器330A、330B、330C、330D一起形成二十位计数器。来自四个计数器330A、330B、330C、330D的组合计数可以在强度子帧710的末尾读出,以提供像素305D的强度值。
[0068] 重新配置一组像素300的能力提供了几个优点。例如,传感器能够使用单个传感器捕获强度信息和深度信息两者,而没有由于不同传感器位于不同位置而导致的任何对准复杂性。另外,强度信息是在帧的部分期间捕获的,在此期间像素可能原本空闲。此外,相对于独立使用时的5位计数器,将计数器330A、330B、330C、330D耦合在一起提供了用于强度计数的20位计数器。
[0069] 图8示出了根据一个或更多个实施例的TOF校准子帧810期间的一组像素300。在TOF校准子帧期间,控制器被配置为计算每个TDC 315A、315B、315C、315D中的一个或更多个振荡器320A、320B、320C、320D的振荡速度。多路复用器325A、325B、325C、325D被配置成选择耦合到它们各自的振荡器320A、320B、320C、320D的多路复用器输入端。外部时钟310被配置成提供起始脉冲和停止脉冲。起始脉冲和停止脉冲之间的持续时间是已知的持续时间。在起始脉冲和停止脉冲之间,振荡器320A、320B、320C、320D使它们各自的计数器330A、330B、330C、330D递增。计数器值可以被读出到控制器(例如,控制器230),并且控制器可以将计数器值除以已知的持续时间,以获得每个振荡器320A、320B、320C、320D的振荡速度。振荡速度可用于计算深度帧期间获得的TOF测量的深度信息以及随后的TOF测量的深度信息。可以在子帧内以任何顺序执行TOF测量、强度测量和校准。
[0070] 图9是根据一个或更多个实施例的校准传感器的方法900的流程图。图9所示的过程可以由深度相机组件(例如,深度相机组件200)的部件来执行。在其他实施例中,其他实体可以执行图9中的一些或所有步骤。实施例可以包括不同的和/或附加的步骤,或者以不同的顺序执行这些步骤。
[0071] 在图像帧的第一部分期间,控制器估计910与由深度相机组件的传感器中的一组像素中的每个像素收集的光相关联的原始深度值。每个像素的可以基于从包括耦合到振荡器的计数器的TDC获得的值来计算原始深度值。每个像素的多路复用器被配置为选择耦合到振荡器的多路复用器输入端,并将信号输出到计数器。在一些实施例中,控制器可以以起止方案或反向起止方案操作。振荡器可以在光投影仪发射脉冲的时间和像素响应于检测到的光子而向振荡器发送信号的时间之间使计数器递增。
[0072] 在图像帧的第二部分期间,控制器对一组像素中的一个或更多个像素执行920强度测量。控制器可以对一组像素中的一些或所有像素连续执行强度测量。强度测量部分地基于从多个计数器接收的信息。多个计数器经由多路复用器耦合在一起,以有效地形成包括来自每个单独计数器的位的单个组合计数器。
[0073] 控制器可以在图像帧的第二部分期间在不同强度子帧期间对不同像素执行强度测量。例如,在第一像素的强度子帧期间,控制器可以对一组像素中的第一像素执行强度测量。组合计数器被配置为每当第一像素检测到光子时递增。例如,对于具有N个像素的一组像素,在第一像素的强度子帧期间,第一像素的计数器接收来自第一像素的输入,第二像素的计数器接收来自第一像素的计数器的输入,第三像素的计数器接收来自第二像素的计数器的输入……并且第N像素的计数器接收来自第N‑1像素的计数器的输入。
[0074] 在一组像素中的第二像素的强度子帧期间,控制器可以对第二像素执行强度测量。在第二像素的强度子帧期间,组合计数器被配置为每当第二像素检测到光子时递增。控制器可以在图像帧的附加子帧期间对一组像素中的附加像素执行强度测量。例如,对于包括N个像素的一组像素,控制器可以连续执行零到N个之间的强度测量。
[0075] 在图像帧的第三部分期间,控制器校准930传感器的一个或更多个TDC。可以通过计数已知持续时间内的振荡次数来测量每个振荡器的速度。已知的持续时间可以由时钟提供,该时钟在已知的时间向TDC发出起始和停止脉冲。每个振荡器的速度可用于计算一组像素中的每个像素的深度信息。
[0076] 控制器可以使用强度测量值来校准940图像帧的原始深度值。强度测量值可以表示环境辐射,其可以用于校准传感器。强度测量值可用于通过校准深度测量之外的环境光测量来校准传感器。当在将光投射到局部区域中获得强度值时,强度值可用于确定局部区域中对象的反射率。反射率确定可用于修改投射到局部区域的用于深度确定的部分中的光量。反射率的确定也可以用来补偿由高强度返回信号电平产生的失真。
[0077] 图10是根据一个或更多个实施例的包括头戴装置1005的系统1000。在一些实施例中,头戴装置1005可以是图1A的头戴装置100或图1B的头戴装置105。系统1000可以在人工现实环境(例如,虚拟现实环境、增强现实环境、混合现实环境或其某种组合)中操作。图10所示的系统1000包括头戴装置1005、耦合到控制台1015的输入/输出(I/O)接口1010和网络1020。虽然图10示出了包括一个头戴装置1005和一个I/O接口1010的示例系统1000,但是在其他实施例中,系统1000中可以包括任意数量的这些部件。例如,可以有多个头戴装置,每个头戴装置具有相关联的I/O接口1010,每个头戴装置和I/O接口1010与控制台1015通信。
在替代配置中,系统1000中可以包括不同的和/或附加的部件。另外,在一些实施例中,结合图10所示的一个或更多个部件描述的功能可以以不同于结合图10描述的方式分布在部件中。例如,控制台1015的一些或全部功能可以由头戴装置1005提供。
[0078] 头戴装置1005包括显示组件1025、光学块1030、一个或更多个位置传感器1035、DCA 1040和音频系统1045。头戴装置1005的一些实施例具有与结合图10描述的部件不同的部件。另外,由结合图10所描述的各种部件提供的功能在其他实施例中可以不同地分布在头戴装置1005的部件当中,或者可以在远离头戴装置1005的单独组件中被捕获。
[0079] 显示组件1025根据从控制台1015接收的数据向用户显示内容。显示组件1025使用一个或更多个显示元件(例如,显示元件120)来显示内容。显示元件可以是例如电子显示器。在各种实施例中,显示组件1025包括单个显示元件或多个显示元件(例如,用户每只眼睛一个显示器)。电子显示器的例子包括:液晶显示器(LCD)、有机发光二极管(OLED)显示器、有源矩阵有机发光二极管显示器(AMOLED)、波导显示器、一些其他显示器或其某种组合。注意,在一些实施例中,显示元件120还可以包括光学块1030的一些或全部功能。
[0080] 光学块1030可以放大从电子显示器接收的图像光,校正与图像光相关联的光学误差,并将校正后的图像光呈现给头戴装置1005的一个或两个视窗。在各种实施例中,光学块1030包括一个或更多个光学元件。光学块1030中包括的示例光学元件包括:光圈、菲涅尔透镜、凸透镜、凹透镜、滤光器、反射表面或影响图像光的任何其他合适的光学元件。此外,光学块1030可以包括不同光学元件的组合。在一些实施例中,光学块1030中的一个或更多个光学元件可以具有一个或更多个涂层,例如部分反射涂层或抗反射涂层。
[0081] 光学块1030对图像光的放大和聚焦允许电子显示器比更大的显示器物理上更小、重量更轻并且消耗更少的功率。另外,放大可以增大电子显示器所呈现的内容的视场。例如,所显示内容的视场使得所显示内容使用用户的几乎所有视场(例如,大约110度对角线)、且在一些情况下使用所有视场来呈现。此外在一些实施例中,可以通过添加或移除光学元件来调整放大量。
[0082] 在一些实施例中,光学块1030可以被设计成校正一种或更多种类型的光学误差。光学误差的示例包括桶形或枕形失真、纵向色差或横向色差。其他类型的光学误差还可以包括球面像差、色差(chromatic aberrations)或由于透镜像场弯曲(lens field curvature)、散光或任何其他类型的光学误差引起的误差。在一些实施例中,被提供给电子显示器用于显示的内容被预失真,并且当光学块1030从电子显示器接收基于内容生成的图像光时,光学块1030校正失真。
[0083] 位置传感器1035是产生指示头戴装置1005的位置的数据的电子设备。位置传感器1035响应于头戴装置1005的运动而生成一个或更多个测量信号。位置传感器190是位置传感器1035的实施例。位置传感器1035的示例包括:一个或更多个IMU、一个或更多个加速度计、一个或更多个陀螺仪、一个或更多个磁力计、检测运动的另一种合适类型的传感器或它们的某种组合。位置传感器1035可以包括测量平移运动(向前/向后、向上/向下、向左/向右)的多个加速度计和测量旋转运动(例如,俯仰偏航横滚)的多个陀螺仪。在一些实施例中,IMU对测量信号进行快速采样并根据所采样的数据计算头戴装置1005的所估计的位置。
例如,IMU对从加速度计接收到的测量信号在时间上求积分以估计速度矢量,并对速度矢量在时间上求积分以确定在头戴装置1005上的参考点的所估计的位置。参考点是可以用来描述头戴装置1005的位置的点。虽然参考点通常可以被定义为在空间中的点;然而,在实践中,参考点被定义为在头戴装置1005内的点。
[0084] DCA 1040为一部分局部区域生成深度信息。DCA 1040是图2的DCA 200的实施例。DCA 1040包括一个或更多个成像设备和DCA控制器。DCA 1040还包括光投影仪。DCA 1040包括包含成像素组的传感器。每组像素包括多用途TDC。在图像帧的第一部分期间,DCA 1040被配置成获得TOF信息。在图像帧的第二部分期间,DCA 1040被配置成获得强度信息。在图像帧的第三部分期间,DCA 1040被配置为校准传感器。上面参考图2描述了DCA 1040的操作和结构。
[0085] 音频系统1045向头戴装置1005的用户提供音频内容。音频系统1045可以包括一个或更多个声学传感器、一个或更多个换能器和音频控制器。音频系统1045可以向用户提供空间化的音频内容。在一些实施例中,音频系统1045可以通过网络1020从映射服务器接收声学参数。声学参数描述局部区域的一个或更多个声学特性(例如,房间脉冲响应、混响时间、混响平等)。音频系统1045可以从例如DCA 1040接收描述至少一部分局部区域的信息和/或从位置传感器1035接收头戴装置1005的位置信息。音频系统1045可以使用一个或更多个声学参数生成一个或更多个声音过滤器,并使用声音过滤器向用户提供音频内容。
[0086] I/O接口1010是允许用户发送动作请求并从控制台1015接收响应的设备。动作请求是执行特定动作的请求。例如,动作请求可以是开始或结束捕获图像或视频数据的指令,或者是在应用内执行特定动作的指令。I/O接口1010可以包括一个或更多个输入设备。示例输入设备包括键盘鼠标、游戏控制器、或者用于接收动作请求并将动作请求传送到控制台1015的任何其他合适的设备。由I/O接口1010接收的动作请求被传送到控制台1015,控制台
1015执行对应于动作请求的动作。在一些实施例中,I/O接口1010包括IMU,其捕获指示相对于I/O接口1010的初始位置的I/O接口1010的估计位置的校准数据。在一些实施例中,I/O接口1010可以根据从控制台1015接收的指令来向用户提供触觉反馈。例如,当动作请求被接收到时,或者当控制台1015向I/O接口1010传送指令时,触觉反馈被提供,该指令使I/O接口
1010在控制台1015执行动作时生成触觉反馈。
[0087] 控制台1015向头戴装置1005提供内容,用于根据从DCA 1040、头戴装置1005和I/O接口1010中的一个或更多个接收的信息来进行处理。在图10所示的示例中,控制台1015包括应用储存器1050、跟踪模块1055和引擎1060。控制台1015的一些实施例具有与结合图10描述的模块或部件不同的模块或部件。类似地,下面进一步描述的功能可以以不同于结合图10描述的方式分布在控制台1015的部件当中。在一些实施例中,本文参照控制台1015讨论的功能可以在头戴装置1005或远程系统中实现。
[0088] 应用储存器1050存储用于由控制台1015执行的一个或更多个应用。应用是一组指令,该组指令当由处理器执行时生成用于呈现给用户的内容。由应用生成的内容可以响应于经由头戴装置1005的移动或I/O接口1010而从用户接收的输入。应用的示例包括:游戏应用、会议应用、视频回放应用或其他合适的应用。
[0089] 跟踪模块1055使用来自DCA 1040、一个或更多个位置传感器1035或其某种组合的信息来跟踪头戴装置1005或I/O接口1010的移动。例如,跟踪模块1055基于来自头戴装置1005的信息来确定头戴装置1005的参考点在局部区域的映射中的位置。跟踪模块1055还可以确定对象或虚拟对象的位置。另外,在一些实施例中,跟踪模块1055可以使用来自位置传感器1035的指示头戴装置1005的位置的数据部分以及来自DCA 1040的局部区域的表示来预测头戴装置1005的未来位置。跟踪模块1055向引擎1060提供头戴装置1005或I/O接口
1010的估计的或预测的未来位置。
[0090] 引擎1060执行应用,并从跟踪模块1055接收头戴装置1005的位置信息、加速度信息、速度信息、所预测的未来位置或它们的某种组合。基于接收到的信息,引擎1060确定要提供给头戴装置1005用于呈现给用户的内容。例如,如果接收到的信息指示用户已经向左看,则引擎1060生成用于头戴装置1005的内容,该内容反映(mirror)用户在虚拟局部区域中或在用附加内容增强局部区域的局部区域中的移动。另外,引擎1060响应于从I/O接口1010接收的动作请求来执行在控制台1015上执行的应用内的动作,并且向用户提供动作被执行的反馈。所提供的反馈可以是经由头戴装置1005的视觉或听觉反馈,或者是经由I/O接口1010的触觉反馈。
[0091] 网络1020可以将头戴装置1005或控制台1015耦合到各种外部系统。网络1020可以包括使用无线和/或有线通信系统的局域网和/或广域网的任意组合。例如,网络1020可以包括互联网以及移动电话网络。在一个实施例中,网络1020使用标准通信技术和/或协议。因此,网络1020可以包括使用诸如以太网、802.11、微波接入全球互操作性(WiMAX)、2G/3G/
4G移动通信协议、数字用户线路(DSL)、异步传输模式(ATM)、InfiniBand、PCI扩展高级交换(PCI Express Advanced Switching)等技术的链路。类似地,网络1020上使用的网络协议可以包括多协议标签交换(MPLS)、传输控制协议/互联网协议(TCP/IP)、用户数据报协议(UDP)、超文本传输协议(HTTP)、简单邮件传输协议(SMTP)、文件传输协议(FTP)等。可以使用包括二进制形式的图像数据(例如,便携式网络图形(PNG))、超文本标记语言(HTML)、可扩展标记语言(XML)等的技术和/或格式来表示通过网络1020交换的数据。此外,可以使用传统的加密技术(例如安全套接字层(SSL)、传输层安全(TLS)、虚拟专用网络(VPN)、互联网协议安全(IPsec)等)对所有或部分链路进行加密。
[0092] 系统1000的一个或更多个部件可以包含存储用户数据元素的一个或更多个隐私设置的隐私模块。用户数据元素描述用户或头戴装置1005。例如,用户数据元素可以描述用户的物理特征、用户执行的动作、头戴装置1005的用户的位置、头戴装置1005的位置、用户的HRTF等。用户数据元素的隐私设置(或“访问设置”)可以以任何合适的方式存储,例如与用户数据元素相关联地存储、存储在授权服务器上的索引中、以另一种合适的方式存储或其任何合适的组合。
[0093] 用户数据元素的隐私设置指定可以如何访问、存储或以其他方式使用(例如,查看、共享、修改、复制、执行、显示或识别)用户数据元素(或与用户数据元素相关联的特定信息)。在一些实施例中,用户数据元素的隐私设置可以指定不可访问与用户数据元素相关联的某些信息的实体的“阻止列表(blocked list)”。与用户数据元素相关联的隐私设置可以指定允许访问或拒绝访问的任何合适的粒度。例如,一些实体可能具有查看特定用户数据元素存在的权限,一些实体可能具有查看特定用户数据元素的内容的权限,并且一些实体可能具有修改特定用户数据元素的权限。隐私设置可以允许用户允许其他实体在有限的时间段内访问或存储用户数据元素。
[0094] 隐私设置可以允许用户指定可以访问用户数据元素的一个或更多个地理位置。对用户数据元素的访问或拒绝访问可能取决于试图访问用户数据元素的实体的地理位置。例如,用户可以允许访问用户数据元素,并且指定只有当用户在特定位置时,实体才可以访问用户数据元素。如果用户离开特定位置,则实体可能不再能够访问用户数据元素。作为另一个示例,用户可以指定用户数据元素仅由距用户阈值距离内的实体(例如与用户在同一局部区域内的头戴装置的另一个用户)可访问。如果用户随后改变位置,对用户数据元素具有访问权的实体可能会失去访问权,而新的实体组可能会在它们进入用户的阈值距离内时获得访问权。
[0095] 系统1000可以包括一个或更多个授权/隐私服务器,用于实施隐私设置。来自实体的对特定用户数据元素的请求可以识别与该请求相关联的实体,并且如果授权服务器基于与该用户数据元素相关联的隐私设置确定该实体被授权访问该用户数据元素,则该用户数据元素才可以被发送给该实体。如果请求实体未被授权访问用户数据元素,则授权服务器可以阻止检索所请求的用户数据元素,或者可以阻止将所请求的用户数据元素发送给该实体。尽管本公开描述了以特定方式实施隐私设置,但是本公开设想了以任何合适的方式实施隐私设置。
[0096] 附加的配置信息
[0097] 为了说明提出了实施例的前述描述;它并不旨在是无遗漏的或将专利权利限制到所公开的精确形式。相关领域的技术人员可以理解,考虑到上述公开,许多修改和变化是可能的。
[0098] 本描述的一些部分从对信息的操作的算法和符号表示方面描述了实施例。数据处理领域的技术人员通常使用这些算法描述和表示来向本领域的其他技术人员有效地传达他们工作的实质。这些操作虽然在功能上、计算上或逻辑上进行了描述,但应理解为将由计算机程序或等效电路、微代码等来实现。此外,在不失一般性的情况下,将这些操作安排称为模块有时也被证明是方便的。所描述的操作和它们的相关模块可以体现在软件固件、硬件或其任何组合中。
[0099] 可以利用一个或更多个硬件或软件模块单独地或与其他设备组合地来执行或实现本文描述的任何步骤、操作或过程。在一个实施例中,利用包括包含计算机程序代码的计算机可读介质的计算机程序产品来实现软件模块,计算机程序代码可以由计算机处理器执行,用于执行所描述的任何或全部步骤、操作或过程。
[0100] 实施例也可以涉及用于执行本文的操作的装置。该装置可以被特别构造成用于所需的目的,和/或它可以包括由存储在计算机中的计算机程序选择性地激活或重新配置的通用计算设备。这种计算机程序可以存储在非暂时性的、有形的计算机可读存储介质中,或者适于存储电子指令的任何类型的介质中,其可以耦合到计算机系统总线。此外,说明书中提到的任何计算系统可以包括单个处理器,或者可以是采用多处理器设计来提高计算能力的架构。
[0101] 实施例也可以涉及由本文所述的计算过程产生的产品。这样的产品可以包括由计算过程产生的信息,其中信息被存储在非暂时性的、有形的计算机可读存储介质上且可以包括计算机程序产品或本文所述的其他数据组合的任何实施例。
[0102] 最后,在说明书中使用的语言主要为了可读性和指导目的而被选择,并且它可以不被选择来描绘或限制专利权利。因此,意图是本专利权的范围不受该详细描述限制,而是受在基于此的申请上所发布的任何权利要求限制。因此,实施例的公开内容意图对本专利权的范围是说明性的,而不是限制性的,本专利权利的范围在所附权利要求中被阐述。
QQ群二维码
意见反馈