CN115917465A - 使用卷帘快门相机的视觉惯性追踪 - Google Patents

使用卷帘快门相机的视觉惯性追踪 Download PDF

Info

Publication number
CN115917465A
CN115917465A CN202180046772.7A CN202180046772A CN115917465A CN 115917465 A CN115917465 A CN 115917465A CN 202180046772 A CN202180046772 A CN 202180046772A CN 115917465 A CN115917465 A CN 115917465A
Authority
CN
China
Prior art keywords
calculated
image
camera
poses
eye
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
CN202180046772.7A
Other languages
English (en)
Inventor
马蒂亚斯·卡拉格鲁伯
埃里克·门德斯·门德斯
丹尼尔·瓦格纳
丹尼尔·沃尔夫
周凯
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.)
Snape Co
Original Assignee
Snape Co
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 Snape Co filed Critical Snape Co
Publication of CN115917465A publication Critical patent/CN115917465A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • H04N25/50Control of the SSIS exposure
    • H04N25/53Control of the integration time
    • H04N25/531Control of the integration time by controlling rolling shutters in CMOS SSIS
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C11/00Photogrammetry or videogrammetry, e.g. stereogrammetry; Photographic surveying
    • G01C11/02Picture taking arrangements specially adapted for photogrammetry or photographic surveying, e.g. controlling overlapping of pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/366Image reproducers using viewer tracking
    • 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
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/16Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using electromagnetic waves other than radio waves
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/0093Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00 with means for monitoring data relating to the user, e.g. head-tracking, eye-tracking
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • G02B27/0172Head mounted characterised by optical features
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • G05D1/0253Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means extracting relative motion information from a plurality of images taken successively, e.g. visual odometry, optical flow
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/012Head tracking input arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/239Image signal generators using stereoscopic image cameras using two 2D image sensors having a relative position equal to or related to the interocular distance
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/332Displays for viewing with the aid of special glasses or head-mounted displays [HMD]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/50Constructional details
    • H04N23/51Housings
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/57Mechanical or electrical details of cameras or camera modules specially adapted for being embedded in other devices
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/0138Head-up displays characterised by optical features comprising image capture systems, e.g. camera
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/014Head-up displays characterised by optical features comprising information/image processing systems
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • G02B2027/0178Eyeglass type

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Optics & Photonics (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Human Computer Interaction (AREA)
  • Electromagnetism (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Eye Examination Apparatus (AREA)
  • Studio Devices (AREA)

Abstract

本发明公开了使用卷帘快门相机对眼戴设备进行视觉惯性追踪。该眼戴设备包括定位确定系统。视觉惯性追踪通过感测该眼戴设备的运动来实施。获得卷帘快门相机的初始姿态并且捕获环境的图像。该图像包括在特定捕获时间捕获的特征点。基于该初始姿态和该设备的所感测到的移动来计算该卷帘快门相机的多个姿态。计算出的姿态的数量响应于移动设备的所感测到的移动。针对该图像中的每个特征点,通过将该特征点的该特定捕获时间与计算出的姿态的特定计算出的时间进行匹配来选择该计算出的姿态。使用这些特征点和针对这些特征点的所选择的计算出的姿态来确定该移动设备在该环境内的定位。

Description

使用卷帘快门相机的视觉惯性追踪
相关申请的交叉引用
本申请要求2020年6月29日提交的美国临时专利申请号63/045,568和2021年1月29日提交的美国专利申请号17/161,937的优先权,这两个专利申请的全部内容据此以引用方式并入。
技术领域
本文所述的示例涉及视觉惯性追踪。更具体地,但不作为限制,本发明描述了用于计算由卷帘快门相机捕获的图像姿态的方法和系统。
背景技术
卷帘快门相机通过快速扫描场景来捕获图像,使得并非图像的所有部分都在完全相同的时刻被记录。如果在图像获取期间在相机与场景之间存在相对移动,则可能出现伪影。
附图说明
从以下参考附图的具体实施方式中,将容易理解所公开的各种具体实施的特征。在说明书中和附图的几个视图中,每个特征使用了附图标记。当存在多个相似的元特征时,可以给相似的特征指定单个附图标记,通过添加小写字母来指代特定的特征。
除非另外指出,否则图中所示的各种特征并非按比例绘制的。为了清楚起见,可放大或缩小各个特征的尺寸。若干附图描绘了一个或多个具体实施,并且仅作为示例呈现,而不应被解释为限制。附图中包括以下附图:
图1A是适用于视觉惯性追踪系统的眼戴设备的示例性硬件配置的侧视图(右);
图1B是图1A的眼戴设备的右角部的局部横截面透视图,其描绘了右可见光相机和电路板;
图1C是图1A的眼戴设备的示例性硬件配置的侧视图(左),其示出了左可见光相机;
图1D是图1C的眼戴设备的左角部的局部横截面透视图,其描绘了左可见光相机和电路板;
图2A和图2B是在增强现实产生系统中利用的眼戴设备的示例性硬件配置的后视图;
图3是三维场景、由左可见光相机捕获的左原始图像和由右可见光相机捕获的右原始图像的图形描绘;
图4是包括经由各种网络连接的可穿戴设备(例如,眼戴设备)和服务器系统的示例性视觉惯性追踪系统的功能框图;
图5是用于图4的增强现实产生系统的移动设备的示例性硬件配置的图形表示;
图6是在用于描述即时定位与地图构建的示例性环境中的用户的示意性图示;
图7是列出在物理环境中显示虚拟对象的示例性方法中的步骤的流程图;
图8A、图8B、图8C和图8D是包括用一个或多个卷帘快门相机进行视觉惯性追踪的示例性方法的步骤的流程图。
具体实施方式
参考示例描述了各种具体实施和细节,这些示例包括一种用于提供带有第一卷帘快门相机的眼戴设备的视觉惯性追踪的系统。该眼戴设备包括一个定位确定系统。通过感测眼戴设备的运动并且获得第一卷帘快门相机的初始姿态,然后捕获包括特征点的环境图像来实现视觉惯性追踪。用运动检测器捕获移动设备的移动,并且基于初始姿态和所感测到的移动来计算第一卷帘快门相机的多个姿态,其中每个计算出的姿态对应于特定计算出的时间。针对每个特征点,通过将特征点的特定捕获时间与计算出的姿态的特定计算出的时间进行匹配来选择计算出的姿态,并且确定移动设备在环境内的定位。
卷帘快门相机的每次读数计算出姿态越多,通常就会提高移动设备在环境内的估计姿态的精度,并因此改进在呈现内容时用户所感知到的增强现实(AR)体验。然而,每次姿态的计算都会消耗处理资源。在一些情况下(例如,当眼戴设备相对缓慢地移动时),可以用比眼戴设备更快地移动时更少的姿态来实现可接受的AR结果。通过调整响应于眼戴设备的移动而被计算的姿态数量,当不需要产生可接受结果时,可以节省处理资源。
以下具体描述包括说明本公开中阐述的示例的系统、方法、技术、指令序列和计算机器程序产品。出于提供对所公开的主题及其相关教导内容的透彻理解的目的而包括许多细节和示例。然而,相关领域的技术人员能够理解如何在没有此类细节的情况下应用相关教导内容。所公开的主题的各方面不限于所描述的特定设备、系统和方法,因为相关教导内容可以以各种方式来应用或实践。本文中所使用的术语和命名仅仅是为了描述特定方面并非旨在进行限制。通常,公知的指令实例、协议、结构和技术不一定被详细示出。
本文中所使用的术语“耦接”或“连接”指的是任何逻辑、光学、物理或电连接(包括链路等),由一个系统元件产生或提供的电或磁信号通过这些连接传递到另一耦接或连接的系统元件。除非另外描述,否则耦接或连接的元件或设备不一定直接彼此连接,并且可以由中间组件、元件或通信介质隔开,中间组件、元件或通信介质中的一者或多者可修改、操纵或承载电信号。术语“上”是指由元件直接支撑或通过集成到元件或由元件支撑的另一元件间接支撑该元件。
出于说明和讨论的目的,仅以示例的方式给出了诸如附图中的任一附图所示的设备和相关联部件和结合了相机、惯性测量单元或两者的任何其他完整设备的定向。在操作中,眼戴设备可以在适合于眼戴设备的特定应用的任何其他方向上定向,例如,向上、向下、侧向或任何其他定向。此外,就本文所用的范围而言,任何方向性术语,诸如前、后、内、外、向、左、右、侧向、纵向、上、下、高、低、顶部、底部、侧面、水平、垂直和对角,仅以示例的方式使用,并且不限制如本文所构造或另外描述的任何相机或惯性测量单元的方向或定向。
示例的其他目的、优点和新颖特征将部分地在以下具体实施方式中阐述,并且部分地在本领域技术人员检查以下内容和附图后将变得显而易见,或者可通过示例的产生或操作来了解。本主题的目的和优点可借助于所附权利要求书中特别指出的方法、手段和组合来实现和达成。
现在详细参考附图所示和下文所讨论的示例。
图1A是包括触敏输入设备或触摸板181的眼戴设备100的示例性硬件配置的侧视图(右)。如图所示,触摸板181可具有细微且不易看到的边界;另选地,边界可清楚可见或包括向用户提供关于触摸板181的位置和边界的反馈的凸起或以其他方式可触知的边缘。在其他具体实施中,眼戴设备100可包括在左侧的触摸板。
触摸板181的表面被配置为检测手指触摸、轻击和手势(例如,移动触摸),以便与眼戴设备在图像显示器上显示的GUI一起使用,从而允许用户以直观的方式浏览并选择菜单选项,这改善并简化了用户体验。
对触摸板181上的手指输入的检测可实现若干功能。例如,触摸触摸板181上的任何地方都可使GUI在图像显示器上显示或突出显示项目,该项目可被投影到光学组件180A、180B中的至少一者上。在触摸板181上双击可选择项目或图标。在特定方向上(例如,从前到后、从后到前、从上到下或从下到上)滑动或轻扫手指可使项目或图标在特定方向上滑动或滚动;例如,以移动到下一项目、图标、视频、图像、页面或幻灯片。在另一方向上滑动手指可以在相反方向上滑动或滚动;例如,以移动到前一项目、图标、视频、图像、页面或幻灯片。触摸板181实际上可以在眼戴设备100上的任何地方。
在一个示例中,在触摸板181上单击的所识别的手指手势,开始选择或按压光学组件180A、180B的图像显示器上的图像中的图形用户界面元素。基于所识别的手指手势对呈现在光学组件180A、180B的图像显示器上的图像的调整可以是在光学组件180A、180B的图像显示器上选择或提交图形用户界面元素以用于进一步显示或执行的主要动作。
如图所示,眼戴设备100包括右可见光相机114B。如本文进一步描述,两个相机114A、114B从两个单独视点捕获场景的图像信息。两个所捕获的图像可用于将三维显示投影到图像显示器上以利用3D眼镜进行观看。
眼戴设备100包括右光学组件180B,其具有图像显示器以呈现图像,诸如深度图像。如图1A和图1B所示,眼戴设备100包括右可见光相机114B。眼戴设备100可包括多个可见光相机114A、114B,其形成被动式三维相机,诸如立体相机,其中右可见光相机114B位于右角部110B。如图1C至图1D所示,眼戴设备100还包括左可见光相机114A。
左和右可见光相机114A、114B对可见光范围波长敏感。可见光相机114A、114B中的每个具有不同的前向视场,这些视场重叠以使得能够生成三维深度图像,例如,右可见光相机114B描绘右视场111B。通常,“视场”是场景的部分,其通过相机在空间中的特定定位处和定向上是可见的。视场111A和111B具有重叠视场304(图3)。当可见光相机捕获图像时,视场111A、111B之外的对象或对象特征未被记录在原始图像(例如,照片或图片)中。视场描述了可见光相机114A、114B的图像传感器在给定场景的所捕获的图像中拾取给定场景的电磁辐射的角度范围或幅度。视场可以被表示为视锥的角度大小;即视角。视角可以水平、垂直或对角地测量。
在示例中,可见光相机114A、114B具有视角在40°至110°之间(例如,大约100°)的视场,并且具有480×480像素或更大的分辨率。“覆盖角度”描述了可见光相机114A、114B或红外相机410(见图2A)的镜头可有效成像的角度范围。通常,相机镜头产生大到足以完全覆盖相机的胶片或传感器的成像圈,可能包括某种渐晕(例如,与中心相比,图像朝向边缘变暗)。如果相机镜头的覆盖角度未遍及传感器,则成像圈将是可见的,通常具有朝向边缘的强渐晕,并且有效视角将会局限于覆盖角度。
此类可见光相机114A、114B的示例包括高分辨率互补金属氧化物半导体(CMOS)图像传感器和具有640p(例如,640×480像素,总共0.3兆像素)、720p或1080p分辨率的数字VGA相机(视频图形阵列)。可见光相机114A、114B的其他示例,其可捕获高清晰度(HD)静止图像且以1642×1642像素(或更大)的分辨率存储这些图像;或者以高帧速率(例如,每秒三十至六十帧或更多)记录高清晰度视频且以1216×1216像素(或更大)的分辨率存储该记录。
眼戴设备100可捕获来自可见光相机114A、114B的图像传感器数据以及由图像处理器数字化的地理定位数据,以存储在存储器中。可见光相机114A、114B在二维空间域中捕获相应的左原始图像和右原始图像,这些原始图像包括二维坐标系上的像素矩阵,该二维坐标系包括用于水平定位的X轴和用于垂直定位的Y轴。每个像素包括颜色属性值(例如,红色像素光值、绿色像素光值或蓝色像素光值);和定位属性(例如,X轴坐标和Y轴坐标)。
为了捕获立体图像以用于稍后作为三维投影显示,图像处理器412(在图4中示出)可耦接到可见光相机114A、114B以接收并存储视觉图像信息。图像处理器412或另一处理器控制可见光相机114A、114B的操作以充当模拟人类双眼视觉的立体相机,并且可将时间戳添加到每个图像。每对图像上的时间戳允许将图像一起显示为三维投影的一部分。三维投影产生沉浸式逼真体验,这在包括虚拟现实(VR)和视频游戏的各种情境下是期望的。
图1B是图1A的眼戴设备100的右角部110B的横截面透视图,其描绘了相机系统的右可见光相机114B和电路板。图1C是图1A的眼戴设备100的示例性硬件配置的侧视图(左),其示出了相机系统的左可见光相机114A。图1D是图1C的眼戴设备的左角部110A的横截面透视图,其描绘了三维相机的左可见光相机114A和电路板。
除了连接和耦接位于左侧面170A上之外,左可见光相机114A的结构和布置基本上类似于右可见光相机114B。如图1B的示例所示,眼戴设备100包括右可见光相机114B和电路板140B,该电路板可以是柔性印刷电路板(PCB)。右铰链126B将右角部110B连接到眼戴设备100的右镜腿125B上。在一些示例中,右可见光相机114B、柔性PCB 140B或其他电连接器或触点等部件可位于右镜腿125B或右铰链126B上。
右角部110B包括角部体190和角部盖,图1B的横截面中省略了角部盖。设置在右角部110B内部的是各种互连的电路板,诸如PCB或柔性PCB,其包括用于右可见光相机114B、麦克风、低功率无线电路(例如,用于经由BluetoothTM的无线短距离网络通信)、高速无线电路(例如,用于经由Wi-Fi的无线局域网通信)的控制器电路。
右可见光相机114B耦接到或设置在柔性PCB 140B上且由可见光相机覆盖镜头覆盖,该镜头通过形成在框架105中的开口瞄准。例如,框架105的右边缘107B,如图2A所示,连接到右角部110B,并且包括用于可见光相机覆盖镜头的开口。框架105包括被配置为面向外且远离用户的眼睛的前侧。用于可见光相机覆盖镜头的开口形成在框架105的前向或外向侧面上并穿过该前向或外向侧面。在示例中,右可见光相机114B具有面向外的视场111B(图3所示),其视线或视角与眼戴设备100的用户的右眼相关。可见光相机覆盖镜头也可粘附到右角部110B的前侧或面向外的表面,其中开口形成有面向外的覆盖角度,但朝向不同的向外方向上。耦接也可经由居间部件间接实现。
如图1B所示,柔性PCB 140B设置在右角部110B内,并且耦接到容纳在右角部110B中的一个或多个其他部件。尽管示出为形成在右角部110B的电路板上,但是右可见光相机114B可形成在左角部110A、镜腿125A、125B或框架105的电路板上。
图2A和图2B是眼戴设备100的示例性硬件配置的后透视图,包括两种不同类型的图像显示器。眼戴设备100的尺寸和形状被设计成被配置为供用户佩戴的形式;在该示例中为眼镜的形式。眼戴设备100可采取其他形式并且可结合其他类型的框架,例如,头戴器、头戴式耳机或头盔。
在眼镜的示例中,眼戴设备100包括框架105,其包括经由适于由用户的鼻部支撑的鼻梁架106连接到右边缘107B的左边缘107A。左和右边缘107A、107B包括相应的孔口175A、175B,这些孔口保持相应的光学元件180A、180B,诸如镜头和显示设备。在此使用的术语“镜头”旨在包括透明或半透明玻璃或塑料片,其具有弯曲或平坦表面,使光会聚/发散或几乎或完全不引起会聚或发散。
虽然被示出为具有两个光学元件180A、180B,但是眼戴设备100可包括其他布置,诸如单个光学元件(或者其可不包括任何光学元件180A、180B),这取决于眼戴设备100的应用或预期用户。如前所述,眼戴设备100包括与框架105的左侧面170A相邻的左角部110A以及与框架105的右侧面170B相邻的右角部110B。角部110A、110B可集成到框架105相应的侧面170A、170B上(如图所示)或实施为附接到框架105相应的侧面170A、170B上的单独部件。另选地,角部110A、110B可集成到附接到框架105的镜腿(未示出)中。
在一个示例中,光学组件180A、180B的图像显示器包括集成的图像显示器。如图2A所示,每个光学组件180A、180B包括合适的显示矩阵177,诸如液晶显示器(LCD)、有机发光二极管(OLED)显示器或任何其他此类显示器。每个光学组件180A、180B还包括一个或多个光学层176,其可以包括镜头、光学涂层、棱镜、反射镜、波导、光学条带和其他光学部件及任意组合。光学层176A、176B、…、176N(在图2A中示出为176A-N)可包括棱镜,该棱镜具有合适的尺寸和构造并包括用于接收来自显示矩阵的光的第一表面和用于向用户的眼睛发射光的第二表面。光学层176A-N的棱镜在整个或部分孔口175A、175B上延伸,该孔口形成在左和右边缘107A、107B中以在用户的眼睛透过对应的左和右边缘107A、107B观看时允许用户看到棱镜的第二表面。光学层176A-N的棱镜的第一表面从框架105面向上方,并且显示矩阵177覆盖在棱镜上,使得由显示矩阵177发射的光子和光照射在第一表面上。棱镜的尺寸和形状被设计成使得光在棱镜内被折射并且被光学层176A-N的棱镜的第二表面导向用户的眼睛。在这一点而言,光学层176A-N的棱镜的第二表面可以是凸形的以将光导向眼睛的中心。棱镜可选择性的被设计尺寸和形状来放大由显示矩阵177投影的图像,并且光通过所述棱镜使得从第二表面观察的图像在一个或多个维度上大于从显示矩阵177发射的图像。
在一个示例中,光学层176A-N可包括透明的LCD层(保持镜头打开),除非且直到施加电压使该层不透明(关闭或遮挡镜头)。眼戴设备100上的图像处理器412可执行程序以将电压施加到LCD层,以便产生主动式快门系统,从而使得眼戴设备100适于观看被显示为三维投影的视觉内容。除了LCD之外的技术可用于主动式快门模式,包括响应于电压或另一类型的输入的其他类型的反应层。
在另一示例中,光学组件180A、180B的图像显示设备包括如图2B所示的投影图像显示器。每个光学组件180A、180B包括激光投影仪150,其是使用扫描镜或检流计的三色激光投影仪。在操作期间,光源(诸如激光投影仪150)被设置在眼戴设备100的镜腿125A、125B中的一个之中或之上。在该示例中,光学组件180B包括一个或多个光学条带155A、155B、…155N(在图2B中示出为155A-N),其在每个光学组件180A、180B的镜头的宽度上,或者在镜头的前表面和后表面之间的镜头的深度上间隔开。
当由激光投影仪150投射的光子行进穿过每个光学组件180A、180B的镜头时,光子遇到光学条带155A-N。当特定光子遇到特定光学条带时,光子要么被重定向到用户的眼睛,要么传递到下一光学条带。激光投影仪150的调制和光学条带的调制的组合可控制特定的光子或光束。在示例中,处理器通过发出机械、声学或电磁信号来控制光学条带155A-N。虽然被示出为具有两个光学组件180A、180B,但是眼戴设备100可包括其他布置,诸如单个或三个光学组件,或者每个光学组件180A、180B可被布置有不同的布置,这取决于眼戴设备100的应用或预期用户。
如图2A和图2B进一步所示,眼戴设备100包括与框架105的左侧面170A相邻的左角部110A以及与框架105的右侧面170B相邻的右角部110B。角部110A、110B可集成到框架105相应的侧面170A、170B上(如图所示)或实施为附接到框架105相应的侧面170A、170B上的单独部件。另选地,角部110A、110B可集成到附接到框架105的镜腿125A、125B中。
在另一示例中,图2B中示出的眼戴设备100可包括两个投影仪,左投影仪150A(未示出)和右投影仪150B(示出为投影仪150)。左光学组件180A可包括左显示矩阵177A(未示出)或左光学条带155'A、155'B、…、155'N(155',A至N,未示出),其被配置为与来自左投影仪150A的光交互。类似地,右光学组件180B可包括右显示矩阵177B(未示出)或右光学条155″A、155″B、…、155″N(155″,A至N,未示出),其被配置为与来自右投影仪150B的光交互。在该示例中,眼戴设备100包括左显示器和右显示器。
图3是三维场景306、由左可见光相机114A捕获的左原始图像302A和由右可见光相机114B捕获的右原始图像302B的图形描绘。如图所示,左视场111A可与右视场111B重叠。重叠视场304表示由两个相机114A、114B均捕获的图像部分。术语“重叠”在涉及视场时意味着所生成的原始图像中的像素矩阵重叠百分之三十(30%)或更多。“基本上重叠”意味着所生成的原始图像中的像素矩阵或场景的红外图像中的像素矩阵重叠百分之五十(50%)或更多。如本文所述,两个原始图像302A、302B可被处理以包括时间戳,该时间戳允许图像作为三维投影的一部分被一起显示。
为了捕获立体图像,如图3所示在给定时刻捕获真实场景306的一对原始红绿蓝(RGB)图像:由左相机114A捕获的左原始图像302A和由右相机114B捕获的右原始图像302B。当(例如,由图像处理器412)处理该对原始图像302A、302B时,生成深度图像。所生成的深度图像可在眼戴设备的光学组件180A、180B上、在另一显示器(例如,移动设备401上的图像显示器580)上、或在屏幕上查看。
所生成的深度图像在三维空间域中,并且可包括三维位置坐标系上的顶点矩阵,该三维位置坐标系包括用于水平定位(例如,长度)的X轴、用于垂直定位(例如,高度)的Y轴和用于深度(例如,距离)的Z轴。每个顶点可包括颜色属性(例如,红色像素光值、绿色像素光值或蓝色像素光值);定位属性(例如,X位置坐标、Y位置坐标和Z位置坐标);纹理属性;反射率属性;或它们的组合。纹理属性量化深度图像的感知纹理,诸如深度图像的顶点区域中的颜色或强度的空间布置。
在一个示例中,交互式增强现实系统400(图4)包括眼戴设备100,其包括框架105、从框架105的左侧面170A延伸的左镜腿110A、以及从框架105的右侧面170B延伸的右镜腿125B。眼戴设备100可进一步包括具有重叠的视场的至少两个可见光相机114A、114B。在一个示例中,眼戴设备100包括具有左视场111A的左可见光相机114A,如图3所示。左相机114A连接到框架105或左镜腿110A以从场景306的左侧捕获左原始图像302A。眼戴设备100进一步包括具有右视场111B的右可见光相机114B。右相机114B连接到框架105或右镜腿125B以从场景306的右侧捕获右原始图像302B。
图4是示例性交互式增强现实系统400的功能框图,该系统包括经由各种网络495(诸如因特网)连接的可穿戴设备(例如,眼戴设备100)、移动设备401和服务器系统498。交互式增强现实系统400包括眼戴设备100与移动设备401之间的低功率无线连接425和高速无线连接437。
如图4所示,如本文所述,眼戴设备100包括一个或多个可见光相机114A、114B,它们捕获静止图像、视频图像或静止图像和视频图像两者。相机114A、114B可具有对高速电路430的直接存储器访问(DMA)并且用作立体相机。相机114A、114B可用于捕获初始深度图像,这些初始深度图像可被渲染成三维(3D)模型,这些三维模型是红绿蓝(RGB)成像场景的纹理映射图像。设备100还可包括深度传感器213,其使用红外信号来估计对象相对于设备100的定位。在一些示例中,深度传感器213包括一个或多个红外发射器215和红外相机410。
眼戴设备100进一步包括每一个光学组件180A、180B的两个图像显示器(一个与左侧面170A相关联,一个与右侧面170B相关联)。眼戴设备100还包括图像显示器驱动器442、图像处理器412、低功率电路420和高速电路430。每个光学组件180A、180B的图像显示器用于呈现图像,包括静止图像、视频图像、或静止和视频图像。图像显示器驱动器442耦接到每个光学组件180A、180B的图像显示器,以便控制图像的显示。
眼戴设备100还包括一个或多个扬声器440(例如,一个与眼戴设备的左侧相关联,另一个与眼戴设备的右侧相关联)。扬声器440可被包含在眼戴设备100的框架105、镜腿125或角部110中。一个或多个扬声器440由音频处理器443在低功率电路420、高速电路430或两者的控制下驱动。扬声器440用于呈现音频信号,包括例如节拍音轨。音频处理器443耦接到扬声器440以便控制声音的呈现。
图4所示的用于眼戴设备100的部件位于一个或多个电路板上,例如,位于边缘或镜腿中的印刷电路板(PCB)或柔性印刷电路(FPC)。另选地或附加地,所描绘的部件可位于眼戴设备100的角部、框架、铰链或鼻梁架中。左和右可见光相机114A、114B可包括数字相机元件,诸如互补金属氧化物半导体(CMOS)图像传感器、电荷耦合器件、镜头、或可用于捕获数据(包括具有未知对象的场景的静止图像或视频)的任何其他相应的可见或光捕获元件。
如图4所示,高速电路430包括高速处理器432、存储器434和高速无线电路436。在该示例中,图像显示驱动器442耦接到高速电路430并且由高速处理器432操作,以便驱动每个光学组件180A、180B的左和右图像显示器。高速处理器432可以是能够管理眼戴设备100所需的任何通用计算系统的高速通信和操作的任何处理器。高速处理器432包括使用高速无线电路436来管理到无线局域网(WLAN)的高速无线连接437上的高速数据传输所需的处理资源。
在一些示例中,高速处理器432执行操作系统,诸如LINUX操作系统或眼戴设备100的其他此类操作系统,并且操作系统被存储在存储器434中以供执行。除了任何其他职责之外,执行眼戴设备100的软件架构的高速处理器432还用于管理利用高速无线电路436的数据传输。在一些示例中,高速无线电路436被配置为实现电气和电子工程师协会(IEEE)802.11通信标准,本文中也称为Wi-Fi。在其他示例中,高速无线电路436可实施其他高速通信标准。
低功率电路420包括低功率处理器422和低功率无线电路424。眼戴设备100的低功率无线电路424和高速无线电路436可包括短距离收发器(BluetoothTM或蓝牙低功耗(BLE))和无线广域网、局域网或广域网收发器(例如,蜂窝或Wi-Fi)。移动设备401,包括经由低功率无线连接425和高速无线连接437通信的收发器,可像网络495的其他元件一样,使用眼戴设备100的架构的细节来实施。
存储器434包括能够存储各种数据和应用的任何存储设备,所述数据包括由左和右可见光相机114A、114B、红外相机410、图像处理器412生成的相机数据、以及由图像显示驱动器442在每个光学组件180A、180B的图像显示器生成用于显示的图像。虽然存储器434被示出为与高速电路430集成,但在其他示例中,存储器434可以是眼戴设备100的单独的独立元件。在某些此类示例中,电气布线线路可提供芯片到存储器434的连接,所述芯片包括图像处理器412的高速处理器432或低功率处理器422。在其他示例中,高速处理器432可管理存储器434的寻址,使得低功率处理器422将在需要涉及存储器434的读或写操作的任何时间启动高速处理器432。
如图4所示,眼戴设备100的高速处理器432可耦接到相机系统(可见光相机114A、114B)、图像显示器驱动器442、用户输入设备491和存储器434。如图5所示,移动设备401的CPU 530可耦接到相机系统570、移动显示驱动器582、用户输入层591和存储器540A。
服务器系统498可以是作为服务或网络计算系统的一部分的一个或多个计算设备,例如包括处理器、存储器和网络通信接口以通过网络495与眼戴设备100和移动设备401通信。
眼戴设备100的输出部件包括视觉元件,诸如与每个镜头或如图2A和图2B所述光学组件180A、180B相关联的左和右图像显示器(例如,显示器,诸如液晶显示器(LCD)、等离子体显示面板(PDP)、发光二极管(LED)显示器、投影仪或波导)。眼戴设备100可包括面向用户的指示器(例如,LED、扬声器或振动致动器),或面向外的信号(例如,LED、扬声器)。每个光学组件180A、180B的图像显示器由图像显示器驱动器442驱动。在一些示例性配置中,眼戴设备100的输出部件进一步包括额外的指示器,诸如可听元件(例如,扬声器)、触觉部件(例如,致动器,诸如用于生成触觉反馈的振动马达)和其他信号生成器。例如,设备100可包括面向用户的指示器组和面向外的信号组。面向用户的指示器组被配置为由设备100的用户看到或以其他方式感知到。例如,设备100可包括被定位成使得用户可以看见它的LED显示器、被定位成生成用户可以听到的声音的一个或多个扬声器、或者提供用户可以感觉到的触觉反馈的致动器。面向外的信号组被配置为由设备100附近的观察者看到或以其他方式感知到。类似地,设备100可包括被配置和定位成由观察者感知到的LED、扬声器或致动器。
眼戴设备100的输入部件可包括字母数字输入部件(例如,被配置为接收字母数字输入的触摸屏或触摸板、摄影光学键盘或其他字母数字配置的元件)、基于点的输部件(例如,鼠标、触摸板、轨迹球、操纵杆、运动传感器或其他指点仪器)、触觉输入部件(例如,按钮开关、感测触摸或触摸手势的位置、力或位置和力的触摸屏或触摸板,或其他触觉配置的元件)和音频输入部件(例如,麦克风)等。移动设备401和服务器系统498可包括字母数字、基于点、触觉、音频和其他输入部件。
在一些示例中,眼戴设备100包括一些被称为惯性测量单元472的运动感测部件。运动感测部件可以是具有微观移动部件的微机电系统(MEMS),这些微观移动部件通常足够小以成为微芯片的一部分。在一些示例性配置中,惯性测量单元(IMU)472包括加速度计、陀螺仪和磁力计。加速度计可感测设备100相对于三个正交轴(x、y、z)的线性加速度(包括由于重力而引起的加速度)。陀螺仪可感测设备100绕三个旋转轴(俯仰、滚转、偏航)的角速度。加速度计和陀螺仪可一起提供关于设备相对于六个轴(x、y、z、俯仰、滚转、偏航)的定位、定向和运动数据。如果存在磁力计,则磁力计可感测设备100相对于磁北极的航向。设备100的定位可以由位置传感器诸如GPS单元473、用于生成相对定位坐标的一个或多个收发器、高度传感器或气压计和其他定向传感器来确定。还可经由低功率无线电路424或高速无线电路436从移动设备401通过无线连接425和437接收此类定位系统坐标。
IMU 472可包括数字运动处理器或程序,或者与数字运动处理器或程序协作,该数字运动处理器或程序从部件采集原始数据,并且计算关于设备100的定位、定向和运动的多个有用值。例如,从加速度计采集的加速度数据可被积分以获得相对于每个轴(x、y、z)的速度;并再次被积分以获得设备100的定位(以线性坐标x、y和z表示)。来自陀螺仪的角速度数据可被积分以获得设备100的定位(以球面坐标表示)。用于计算这些有效值的程序可存储在存储器434中并且由眼戴设备100的高速处理器432执行。
眼戴设备100可以可选地包括附加的外围传感器,诸如生物计量传感器、特性传感器,或者与眼戴设备100集成的显示元件。例如,外围设备元件可包括任何I/O部件,包括输出部件、运动部件、定位部件或本文所述的任何其他此类元件。例如,生物计量传感器可包括检测表情(例如,手势、面部表情、声音表达、身体姿势或眼睛追踪)、测量生物信号(例如,血压、心率、体温、出汗或脑电波)或识别人(例如,基于语音、视网膜、面部特征、指纹或电生物信号诸如脑电图数据的识别)等的部件。
移动设备401可以是智能电话、平板电脑、笔记本电脑、接入点或任何能够使用低功率无线连接425和高速无线连接437两者与眼戴设备100连接的其他此类设备。移动设备401连接到服务器系统498和网络495。网络495可包括有线和无线连接的任何组合。
如图4所示的交互式增强现实系统400包括通过网络耦接到眼戴设备100的计算设备,诸如移动设备401。交互式增强现实系统400包括用于存储指令的存储器和用于执行指令的处理器。由处理器432执行交互式增强现实系统400的指令将眼戴设备100配置为与移动设备401协作。交互式增强现实系统400可利用眼戴设备100的存储器434或移动设备401的存储器元件540A、540B、540C(图5)。此外,交互式增强现实系统400可利用眼戴设备100的处理器元件432、422或移动设备401的中央处理单元(CPU)530(图5)。此外,交互式增强现实系统400可进一步利用服务器系统498的存储器和处理器元件。在这一方面,交互式增强现实系统400的存储器和处理功能可以跨眼戴设备100、移动设备401和服务器系统498共享或分布。
存储器434包括歌曲文件482和虚拟对象484。歌曲文件482包括节奏(例如,节拍音轨)以及可选的音符序列和音符值。音符是表示特定音高或其他乐声的符号。音符值包括相对于节奏而言的弹奏音符的持续时间,并且可包括其他特性,诸如响度、强调、清晰发音和相对于其他音符的分句。在一些具体实施中,节奏包括与用户界面一起的默认值,用户可通过该用户界面选择在歌曲回放期间使用的特定节奏。虚拟对象484包括用于识别由相机114捕获的图像中的对象或特征的图像数据。这些对象可以是物理特征,诸如用于在环境内定位眼戴设备100的已知的绘画或物理标记。
存储器434还包括由处理器432执行的定位检测程序460、标记配准程序462、定位程序464、虚拟对象渲染程序466、物理引擎468和预测引擎470。定位检测程序460将处理器432配置为例如使用定位程序464来确定在环境内的定位(位置和定向)。标记配准程序462将处理器432配置为在环境内配准标记。标记可以是在环境内具有已知位置的预定义物理标记,或者由处理器432指定到相对于眼戴设备100正在其中操作的环境或相对于眼戴器本身的特定位置。定位程序464将处理器432配置为获得定位数据,以用于确定眼戴设备100、由眼戴设备呈现的虚拟对象或它们的组合的定位。位置数据可以从一系列图像、IMU单元472、GPS单元473或它们的组合中导出。虚拟对象渲染程序466将处理器432配置为渲染用于由图像显示器180在图像显示器驱动器442和图像处理器412的控制下显示的虚拟图像。物理引擎468将处理器432配置为以将物理定律(诸如重力和摩擦)应用于例如虚拟游戏件之间的虚拟单词。预测引擎470将处理器432配置为基于对象(诸如眼戴设备100)的当前航向、来自传感器(诸如IMU 472)的输入、环境的图像或它们组合来预测该对象的预期移动。
图5是示例性移动设备401的高级功能框图。移动设备401包括闪存存储器540A,其存储要由CPU 530执行以运行本文所述的所有功能或功能子集的程序。
移动设备401可包括相机570,其包括至少两个可见光相机(具有重叠的视场的第一和第二可见光相机)或具有基本上重叠的视场的至少一个可见光相机和深度传感器。闪存存储器540A可进一步包括经由相机570生成的多个图像或视频。
如图所示,移动设备401包括图像显示器580、控制图像显示器580的移动显示器驱动器582和显示控制器584。在图5的示例中,图像显示器580包括用户输入层591(例如,触摸屏),其层叠在由图像显示器580使用的屏幕的顶部之上或以其他方式集成到该屏幕中。
可使用的触摸屏式的移动设备的示例包括(但不限于)智能电话、个人数字助理(PDA)、平板电脑、笔记本电脑或其他便携式设备。然而,触摸屏式的设备的结构和操作是以示例的方式提供的;如本文所述的主题技术并不旨在局限于此。出于该讨论的目的,图5因此提供了具有用户界面的示例性移动设备401的框图图示,该用户界面包括用于接收输入(通过手、触笔或其他工具的触摸、多点触摸或手势等)的触摸屏输入层891和用于显示内容的图像显示器580。
如图5所示,移动设备401包括用于经由广域无线移动通信网络进行数字无线通信的至少一个数字收发器(XCVR)510,示为WWAN XCVR。移动设备401还包括额外的数字或模拟收发器,诸如用于诸如经由NFC、VLC、DECT、ZigBee、BluetoothTM或Wi-Fi进行短距离网络通信的短距离收发器(XCVR)520。例如,短距离XCVR 520可采用任何可用的双向无线局域网(WLAN)收发器的形式,该类型与无线局域网中实施的一个或多个标准通信协议(例如,符合IEEE 802.11的Wi-Fi标准之一)兼容。
为了生成用于定位移动设备401的位置坐标,移动设备401可包括全球定位系统(GPS)接收器。另选地或附加地,移动设备401可利用短距离XCVR 520和WWAN XCVR 510中的任一者或两者来生成用于定位的位置坐标。例如,基于蜂窝网络、Wi-Fi或BluetoothTM的定位系统可生成非常准确的位置坐标,尤其是当它们组合使用时。此类位置坐标可经由XCVR510、520通过一个或多个网络连接传输到眼戴设备。
收发器510、520(即,网络通信接口)符合现代移动网络所利用的各种数字无线通信标准中的一个或多个标准。WWAN收发器510的示例包括(但不限于)被配置为根据码分多址(CDMA)和第3代合作伙伴计划(3GPP)网络技术操作的收发器,所述技术包括例如但不限于3GPP类型2(或3GPP2)和LTE,有时被称为“4G”。例如,收发器510、520提供信息的双向无线通信,所述信息包括数字化音频信号、静止图像和视频信号、用于显示的网页信息以及web相关输入,以及去往/来自移动设备401的各种类型的移动消息通信。
移动设备401进一步包括用作中央处理单元(CPU)的微处理器;如图4中的CPU 530所示。处理器是一种电路,其具有的元件被构造并布置成执行一个或多个处理功能(通常是各种数据处理功能)。尽管可使用离散的逻辑部件,但是这些示例利用形成可编程CPU的部件。微处理器例如包括一个或多个集成电路(IC)芯片,其结合了执行CPU的功能的电子元件。例如,CPU 530可基于任何已知或可用的微处理器架构,诸如使用ARM架构的精简指令集计算(RISC),正如现今在移动设备和其他便携式电子设备中通常使用的。当然,处理器电路的其他布置可用于形成智能电话、笔记本电脑和平板电脑中的CPU 530或处理器硬件。
通过将移动设备401配置为例如根据CPU 530可执行的指令或程序来执行各种操作,CPU 530用作移动设备401的可编程主机控制器。例如,此类操作可包括移动设备的各种一般操作,以及与用于移动设备上的应用的程序相关的操作。尽管处理器可使用硬连线逻辑来配置,但是移动设备中的典型处理器是通过执行程序来配置的通用处理电路。
移动设备401包括用于存储程序和数据的存储器或存储系统。在示例中,存储器系统可根据需要包括闪存存储器540A、随机存取存储器(RAM)540B和其他存储器部件540C。RAM 540B用作由CPU 530处理的指令和数据的短期存储装置,例如,用作工作数据处理存储器。闪存存储器540A通常提供长期存储。
因此,在移动设备401的示例中,闪存存储器540A用于存储由CPU 530执行的程序或指令。根据设备的类型,移动设备401存储并运行移动操作系统,特定应用通过该移动操作系统执行。移动操作系统的示例包括Google Android、Apple iOS(用于iPhone或iPad设备)、Windows Mobile、Amazon Fire OS、RIM BlackBerry OS等。
眼戴设备100内的处理器432构建眼戴设备100周围的环境的地图,确定眼戴设备在映射的环境内的位置,并且确定眼戴设备相对于映射的环境中的一个或多个对象的相对定位。在一个示例中,处理器432构建地图,并且使用应用于从一个或多个传感器接收的数据的即时定位与地图构建(SLAM)算法来确定位置和定位信息。在增强现实的场景下,SLAM算法用于构建并更新环境的地图,同时追踪并更新设备(或用户)在映射的环境中的位置。数学解可使用各种统计方法来近似,诸如粒子滤波、卡尔曼滤波、扩展卡尔曼滤波和协方差交集。
传感器数据包括从相机114A、114B中的一者或两者接收的图像、从激光测距仪接收的距离、从GPS单元473接收的定位信息、或两个或更多个此类传感器数据的组合,或来自提供用于确定定位信息的数据的其他传感器的数据。
图6描绘了连同用于自然特征追踪(NFT;例如,使用SLAM算法的追踪应用)的元素一起的示例性环境600。眼戴设备100的用户602存在于示例性物理环境600(在图6中为室内房间)中。眼戴设备100的处理器432使用所捕获的图像来确定其相对于环境600内的一个或多个对象604的定位,使用环境600的坐标系(x,y,z)来构建环境600的地图,并且确定其在坐标系内的位置。另外,处理器432通过使用与单个对象604a相关联的两个或更多个位置点(例如,三个位置点606a、606b和606c)或者通过使用与两个或更多个对象604a、604b、604c相关联的一个或更多个位置点606来确定眼戴设备100在环境内的头部姿态(滚转、俯仰和偏航)。在一个示例中,眼戴设备100的处理器432定位环境600内的虚拟对象408(诸如图6中所示的钥匙),以经由图像显示器180进行增强现实观看。
图7是描绘用于对具有本文所述的第一卷帘快门相机的可穿戴设备(例如,眼戴设备)进行视觉惯性追踪的方法的流程图700。尽管如本文所述,这些步骤是基于眼戴设备100进行描述,但对其他类型的设备,本领域技术人员根据本文描述将理解所描述的步骤的其他具体实施方式。另外,可以设想,在图7中以及在其他附图中示出的并且在本文中描述的一个或多个步骤可省略、同时或依序执行、以不同于所示和所述的次序执行、或结合附加步骤执行。
在框702处,眼戴设备100捕获在眼戴设备100附近的物理环境600的一个或多个输入图像。处理器432可连续地从可见光相机114接收输入图像,并且将这些图像存储在存储器434中以供处理。另外,眼戴设备100可以从其他传感器捕获信息(例如,来自GPS单元473的位置信息、来自IMU 472的定向信息、或来自深度传感器的距离信息)。
在框704处,眼戴设备100将所捕获的图像中的对象与存储在图像库中的对象进行比较以识别匹配。在一些具体实施中,处理器432将所捕获的图像存储在存储器434中。已知对象的图像库存储在虚拟对象数据库484中。
在一个示例中,处理器432被编程为识别预定义的特定对象(例如,悬挂在墙壁上的已知位置处的特定照片604a、另一墙壁上的窗口604b、或定位在地板上的对象诸如保险箱604c)。其他传感器数据诸如GPS数据可用于缩小在比较中使用的已知对象(例如,仅与通过GPS坐标识别出的房间相关联的图像)的数量。在另一示例中,处理器432被编程为识别预定义的一般对象(诸如公园内的一棵或多棵树)。
在框706处,眼戴设备100确定其相对于对象的定位。处理器432可通过将所捕获的图像中的两个或更多个点之间(例如,一个对象604上的两个或更多个位置点之间或者两个对象604中的每个对象上的位置点606之间)的距离与所识别的对象中的对应点之间的已知距离进行比较和处理,来确定其相对于对象的定位。所捕获的图像的点之间的距离大于所识别的对象的点之间的距离的指示眼戴设备100比捕获包括所识别的对象的图像的成像器更靠近所识别的对象。另一方面,所捕获的图像的点之间的距离小于所识别的对象的点之间的距离的指示眼戴设备100比捕获包括所识别的对象的图像的成像器更远离所识别的对象。通过处理相对距离,处理器432能够确定相对于对象的定位。另选地或附加地,可使用其他传感器信息(诸如激光距离传感器信息)来确定相对于对象的定位。
在框708处,眼戴设备100构建围绕眼戴设备100的环境600的地图,并且确定其在环境内的位置。在一个示例中,在所识别的对象(框704)具有预定义坐标系(x,y,z)的情况下,眼戴设备100的处理器432使用该预定义坐标系来构建地图,并且基于相对于所识别的对象的所确定的定位(框706)来确定其在该坐标系内的定位。在另一示例中,眼戴设备使用环境内的永久或半永久对象604的图像(例如,公园内的树或公园长凳)来构建地图。根据该示例,眼戴设备100可限定用于环境的坐标系(x′,y′,z′)。
在框710处,眼戴设备100确定眼戴设备100在环境内的头部姿态(滚转、俯仰和偏航)。处理器432通过使用一个或多个对象604上的两个或更多个位置点(例如,三个位置点606a、606b和606c)或通过使用两个或更多个对象604上的一个或多个位置点606来确定头部姿态。使用常规图像处理算法,处理器432通过比较在所捕获的图像与已知图像的位置点之间延伸的线的角度和长度来确定滚转、俯仰和偏航。
在框712处,眼戴设备100向用户呈现视觉图像。处理器432使用图像处理器412和图像显示器驱动器442在图像显示器180上向用户呈现图像。处理器响应于眼戴设备100在环境600内的位置而经由图像显示器显影并呈现视觉图像。
在框714处,随着用户在环境600中移动,重复以上参考框706-712所述的步骤,以更新眼戴设备100的定位以及用户602所观看的内容。
再次参考图6,在该示例中,实施本文所述的增强现实虚拟引导应用的方法包括与物理对象(例如,绘画604a)相关联的虚拟标记(例如,虚拟标记610a)和与虚拟对象(例如,钥匙608)相关联的虚拟标记。在一个示例中,眼戴设备100使用与物理对象相关联的标记来确定眼戴设备100在环境中的定位,并且使用与虚拟对象相关联的标记来生成叠层图像,这些叠层图像在眼戴设备100的显示器上的虚拟标记定位处呈现环境600中的相关联虚拟对象608。例如,标记被配准在环境中的位置处,以用于追踪和更新用户、设备和对象(虚拟的和物理的)在映射的环境中的位置。有时将标记与高对比度物理对象(诸如安装在较浅色的墙壁上的相对较暗的对象604a)配准,以帮助相机和其他传感器进行检测标记的任务。标记可以是预先指定的,或者可以由眼戴设备100在进入环境时指定。标记也被配准在环境中的位置处,以用于在映射的环境中的那些位置处呈现虚拟图像。
标记可以用信息编码或以其他方式与信息链接。标记可能包括定位信息、物理代码(诸如条形码或QR码;对用户可见或隐藏)或它们的组合。与标记相关联的一组数据被存储在眼戴设备100的存储器434中。该组数据包括关于标记610a、标记的定位(位置和定向)、一个或多个虚拟对象或它们的组合的信息。标记位置可包括一个或多个标记界标616a的三维坐标,诸如图6所示的大致矩形的标记610a的角部。标记定位可以相对于真实世界地理坐标、标记坐标系、眼戴设备100的定位或其他坐标系来表示。一个或多个与标记610a相关联的虚拟对象可包括各种材料中的任何一种,包括静止图像、视频、音频、触觉反馈、可执行应用、交互式用户界面和体验、以及此类材料的组合或序列。在该上下文中,能够被存储在存储器中并且在遇到标记610a时被检索或与所指定的标记相关联的任何类型的内容都可以被分类为虚拟对象。例如,图6所示的钥匙608是在标记位置处显示为2D或3D静止图像的虚拟对象。
在一个示例中,标记610a可在存储器中配准为位于物理对象604a(例如,图6所示的装裱艺术品)附近并与其相关联。在另一示例中,标记可在存储器中配准为相对于眼戴设备100的特定定位。
图8A是描绘用于对眼戴设备100进行视觉惯性追踪的方法的流程图800,该眼戴设备使用包括第一卷帘快门相机的相机系统。在框802处,眼戴设备100通过确定眼戴设备100在环境内的头部姿态(滚转、俯仰和偏航)来获得第一卷帘快门相机的初始头部姿态。在一些示例中,姿态由处理器432存储在存储器(例如,存储器434)中。在一个示例中,处理器432将姿态存储在存储器434中的查找表中。处理器432可以在存储器中建立查找表,并且在眼戴设备100的视觉惯性追踪过程期间维持该查找表。查找表包括一个条目,对应于由至少一个卷帘快门相机捕获的图像的每行(或者,例如,由于相机运动而具有与前一行不同的姿态的每行的条目),其中第一姿态存储在查找表的第一行中。
在框804处,眼戴设备100在捕获时段期间使用第一卷帘快门相机捕获环境的图像。图像包括特征点,并且每个特征点在捕获时段期间的特定时间被捕获。处理器432连续地从至少一个可见光相机114接收输入图像,并且将这些图像存储在存储器434中以供处理。在一些示例中,眼戴设备100可以将所捕获图像中的对象与存储在图像库中的对象进行比较以识别匹配,例如,以用于通过视觉惯性追踪(下文描述)来确定眼戴设备的定位。已知对象的图像库存储在虚拟对象数据库484中以用于比较。
在框806处,眼戴设备100通过从各种传感器获得来自设备100附近的物理环境600的运动信息来在捕获时段期间感测移动设备的移动,例如,来自GPS单元473的位置或定位信息、来自IMU 472的运动或定向信息或来自激光距离传感器的距离信息或它们的组合。在一个示例中,处理器432检索从传感器中的至少一个传感器所感测到的参数。然后,处理器432使用本文所述技术从所感测到的参数确定运动和定位信息。
在框808处,眼戴设备100计算第一卷帘快门相机的多个姿态。要由卷帘快门相机计算出的姿态的数量响应于眼戴设备的所感测到的运动,使得当眼戴设备缓慢地移动时(例如,基于来自运动传感器的输入来确定)计算出相对较少的姿态,并且当眼戴设备较快地移动时计算出相对较多的姿态。在一个示例中,基于预定义阈值来选择姿态的数量。根据该示例,当眼戴设备以等于或低于第一预定义阈值(例如,等于或低于1英尺每秒)的速率移动时,眼戴设备针对每个卷帘快门周期计算出相对低数量(例如,3个或更少)的姿态;当眼戴设备以第一预定义阈值(例如,高于1英尺每秒)与第二预定义阈值(例如,低于3英尺每秒)之间的速率移动时,眼戴设备针对每个卷帘快门周期计算出中等数量(例如,4-6个)的姿态;并且当眼戴设备以等于或高于第二预定义阈值(例如,等于或高于3英尺每秒)的速率移动时,眼戴设备针对每个卷帘快门周期计算出相对高数量(例如,7个或更多)的姿态。通过调整响应于眼戴设备的移动而计算出的姿态的数量,可以在对产生可接受的结果不必要时节省处理资源。
为了计算出多个中的每个姿态,处理器432确定眼戴设备100在环境内的初始姿态并且获得由传感器输入提供的移动信息(参见框806)以计算出计算出的姿态。每个计算出的姿态对应于捕获时段内的特定时间。在一个示例中,处理器432使用即时定位与地图构建(SLAM)算法来确定针对行的姿态,该算法应用于在卷帘快门相机中的至少一个相机的第一行曝光期间从一个或多个传感器接收的用于第一姿态的数据。在一些示例中,计算出的姿态中的每个姿态由处理器432存储在存储器(例如,存储器434)中。在一个示例中,处理器432将计算出的姿态中的每个姿态存储在存储器434中的查找表中。
在一些示例中,针对图像中的每个特征点,从查找表检索该多个计算出的姿态中具有最接近对应特定计算出的时间的对应特定时间的一个姿态。在其他示例中,针对图像中的每个特征点,从查找表检索该多个计算出的姿态中具有紧接在对应特定计算出的时间之前的对应特定时间的一个姿态。
在一个示例中,在该多个姿态包括第一计算出的姿态和第二计算出的姿态的情况下,处理器432在查找表的第一定位中存储针对卷帘快门相机的第一行的第一计算出的姿态,并且如果针对第一卷帘快门相机的后续行计算出第二计算出的姿态,则存储针对第一卷帘快门相机的第二行的第一计算出的姿态。在一个示例中,计算出的姿态的数量少于特征点的数量。
在框810处,针对图像中的每个特征点,眼戴设备通过将特征点的特定捕获时间与计算出的姿态的特定计算出的时间进行匹配来选择该多个计算出的姿态中的一个姿态。在框812处,眼戴设备使用特征点和针对特征点的所选择的计算出的姿态来确定移动设备在环境内的定位。在一个示例中,通过使用检索到的查找表定位姿态来确定移动设备的定位。从存储器434检索对应于第一行的第一特征点的第一查找表定位姿态和对应于第二行的第二特征点的第二查找表定位姿态。在一个示例中,确定定位包括使用特征点和针对特征点的所选择的计算出的姿态来应用即时定位与地图构建(SLAM)算法。
图8B至图8D是列出增强现实引导体验的示例性方法中的步骤的流程图820、830和840。尽管如本文所述,参考眼戴设备100描述了这些步骤,但是本领域技术人员根据本文的描述将理解所描述的步骤针对其他类型的可穿戴移动设备的其他具体实施方式。另外,可以设想,在图8B至图8D中以及在其他附图中示出的并且在本文中描述的一个或多个步骤可省略、同时或依序执行、以不同于所示和所述的次序执行、或结合附加步骤执行。
在图8B中,在框822处,处理器432将每个计算出的姿态中存储在存储器434中的查找表中。在框824处,针对图像中的每个特征点,从查找表检索该多个计算出的姿态中在相应的最接近对应特定计算时间的特定时间的一个姿态。
在图8C中,在框832处,处理器432将每个计算出的姿态存储在存储器434中的查找表中。在框834处,针对图像中的每个特征点,从查找表检索该多个计算出的姿态中在相应的紧接在对应特定计算时间之前的特定时间的一个姿态。
图8D是描绘对眼戴设备100进行视觉惯性追踪的方法的流程图840,该眼戴设备使用包括第一卷帘快门相机和第二卷帘快门相机的相机系统。在一个示例中,相机系统是立体相机系统。图8A示出了针对第一卷帘快门相机执行的步骤802至812。针对第二卷帘快门相机执行的步骤如下。
在步骤842处,眼戴设备100获得第二卷帘快门相机的初始姿态。在一些示例中,姿态由处理器432存储在存储器(例如,存储器434)中。在一个示例中,处理器432将姿态存储在存储器434中的查找表中。处理器432可以在存储器中建立查找表,并且在眼戴设备100的视觉惯性追踪过程期间维持该查找表。查找表可包括对应于卷帘快门相机的每行的条目(或者,例如,由于相机运动而具有与前一行不同的姿态的每行的条目),其中第一姿态存储在查找表的第一行中。
在步骤844处,眼戴设备100在捕获时段期间使用相机系统捕获环境的第二图像。第二图像包括特征点,每个特征点在捕获时段期间的特定捕获时间被捕获。处理器432可连续地从第二可见光相机114接收输入图像,并且将这些图像存储在存储器434中以供处理。在一些示例中,眼戴设备100可以将所捕获的图像中的对象与存储在图像库中的对象进行比较以识别匹配,例如,以用于通过视觉惯性追踪(下文描述)来确定眼戴设备的定位。已知对象的图像库存储在虚拟对象数据库484中以用于比较。
在框846处,眼戴设备100通过从各种传感器获得来自设备100附近的物理环境600的运动信息在捕获时段期间的多个时间感测移动设备的移动,例如,来自GPS单元473的位置信息、来自IMU 472的定向信息或来自激光距离传感器的距离信息。在示例中,处理器432从GPS 473、IMU 472、激光距离传感器、相机114或它们的组合中的至少一者检索所感测到的参数。然后,处理器使用本文所述技术根据所感测到的参数确定运动和定位信息。
在框848处,眼戴设备100基于初始姿态和所感测到的移动来计算第二卷帘快门相机的多个姿态,每个计算出的姿态对应于在捕获时段内的特定计算出的时间。第二卷帘快门相机的计算出的姿态的数量响应于移动设备的所感测到的移动。可如上文参考框808所述来确定要计算出的姿态的数量。为了计算出该多个姿态中的每个姿态,处理器432例如通过使用从传感器获得的运动和定位信息(参见框806)来确定眼戴设备100在环境内的头部姿态(滚转、俯仰和偏航)。在一个示例中,眼戴设备100的处理器432使用所捕获的图像来确定其相对于环境600内的一个或多个对象604的定位,使用环境600的坐标系(x,y,z)来构建环境600的地图,并且确定其在坐标系内的定位。例如,处理器432可以通过使用与单个对象604a相关联的两个或更多个位置点(例如,三个位置点606a、606b和606c)或者通过使用与两个或更多个对象604a、604b、604c相关联的一个或更多个位置点606来确定眼戴设备100在环境内的头部姿态(滚转、俯仰和偏航)。在另一示例中,除了或代替所捕获的图像,处理器432使用其他传感器(例如,IMU 473或GPS 472)来确定头部姿态。在一个示例中,处理器432使用即时定位与地图构建(SLAM)算法来确定针对行的姿态,该算法应用于在第二卷帘快门相机的第一行曝光期间从一个或多个传感器接收的用于第一姿态的数据。
在框850处,针对第二图像中的每个特征点,眼戴设备100通过将特征点的特定捕获时间与计算出的姿态的特定计算出的时间进行匹配来选择该多个第二相机计算出的姿态中的一个姿态。
在框852处,眼戴设备100使用特征点和针对第二图像的特征点的所选择的第二相机计算出的姿态来确定移动设备在环境内的定位。
如本文所述,本文所述功能中的任何功能可以被体现在一个或多个计算机软件应用或编程指令集中。根据一些示例,“功能”、“应用”、“指令”或“程序”是执行在程序中定义的功能的程序。可采用各种程序设计语言来实施以各种方式结构化的应用中的一个或多个应用,诸如面向对象的程序设计语言(例如,Objective-C、Java或C++)或面向过程程序设计语言(例如,C语言或汇编语言)。在特定示例中,第三方应用(例如,由除特定平台的供应商之外的实体使用ANDROIDTM或IOSTM软件开发工具包(SDK)开发的应用)可包括在移动操作系统(诸如IOSTM、ANDROIDTM、
Figure BDA0004027478050000231
电话或另一移动操作系统)上运行的移动软件。在该示例中,第三方应用可调用由操作系统提供的API调用,以促进本文所述的功能。
因此,机器可读介质可采取许多形式的有形存储介质。非易失性存储介质包括例如光盘或磁盘,诸如任何计算机设备等中的任何存储设备,诸如可用于实施附图中所示的客户端设备、媒体网关、代码转换器等。易失性存储介质包括动态存储器,诸如此类计算机平台的主存储器。有形传输介质包括同轴电缆;铜线和光纤,包括构成计算机系统内的总线的导线。载波传输介质可采取电信号或电磁信号、或声波或光波的形式,诸如在射频(RF)和红外(IR)数据通信期间生成的那些。因此,计算机可读介质的常见形式包括例如:软盘、软磁盘、硬盘、磁带、任何其他磁介质、CD-ROM、DVD或DVD-ROM、任何其他光学介质、穿孔卡片纸带、任何其他具有孔图案的物理存储介质、RAM、PROM和EPROM、FLASH-EPROM、任何其他存储器芯片或盒、传输数据或指令的载波、传输此类载波的电缆或链路、或计算机可以从其中读取程序代码或数据的任何其他介质。许多这些形式的计算机可读介质可参与将一个或多个指令的一个或多个序列承载到处理器以供执行。
除了上文刚刚陈述的,无论是否在权利要求书中陈述,已陈述或说明的内容都不旨在或不应解释为导致任何部件、步骤、特征、对象、益处、优点或等效物献给公众。
应当理解,除非本文另外阐述了特定的含义,否则本文所用的术语和表达具有与关于它们对应的相应调查和研究领域的此类术语和表达一致的通常含义。诸如“第一”和“第二”等的关系术语仅可用于将一个实体或动作与另一个实体或动作区分开,而不一定要求或暗示这些实体或动作之间的任何实际的此类关系或顺序。术语“包括”、“包含”、“含有”、“具有”或其任何其他变型形式旨在涵盖非排他性的包括,使得包括或包含一系列元素或步骤的过程、方法、制品或装置不仅包括那些元素或步骤,而是还可以包括未明确列出的或对于此类过程、方法、制品或装置固有的其他元素或步骤。在没有进一步限制的情况下,前缀为“一”或“一个”的元素并不排除在包括该元素的过程、方法、制品或装置中另外的相同元素的存在。
除非另有说明,否则本说明书中,包括所附权利要求书中阐述的任何和所有测量、值、额定值、定位、量值、尺寸和其他规格是近似的,而不是精确的。此类量旨在具有与它们涉及的功能和它们所属的领域中的惯例一致的合理范围。例如,除非另外明确说明,否则参数值等可以从所述量变化多达±10%。
此外,在前述具体实施方式中可看出,出于使本公开简化的目的,各种特征在各种示例中被组合在一起。公开的本方法不应被解释为反映所要求保护的示例需要比每个权利要求中明确记载的特征更多的特征的意图。相反,如以下权利要求所反映的,要求保护的本主题在于少于任何单个公开的示例的所有特征。因此,将以下权利要求据此并入到具体实施方式中,其中每个权利要求作为独立要求保护的主题而独立存在。
虽然前文已描述了被认为是最佳模式的示例和其他示例,但应当理解,可在其中作出各种修改且本文所公开的主题可以各种形式和示例来实施,并且其可应用于许多应用中,本文仅描述了其中的一些应用。所附权利要求书旨在要求保护落入本发明构思的真实范围内的任何和所有修改和变型。

Claims (20)

1.一种用移动设备进行视觉惯性追踪的方法,所述移动设备具有运动检测器和包括第一卷帘快门相机的相机系统,所述方法包括:
获得所述第一卷帘快门相机的初始姿态;
在捕获时段期间,使用所述相机系统捕获环境的图像,所述图像包括特征点,每个特征点在所述捕获时段期间的特定捕获时间被捕获;
在所述捕获时段期间,用所述运动检测器感测所述移动设备的移动;
基于所述初始姿态和所感测到的移动来计算所述第一卷帘快门相机的多个姿态,每个计算出的姿态对应所述捕获时段内的一个特定计算出的时间,其中计算出的姿态的数量响应于所述移动设备的所感测到的移动;
针对所述图像中的每个特征点,通过将所述特征点的所述特定捕获时间与所述计算出的姿态的所述特定计算出的时间进行匹配来选择所述多个计算出的姿态中的一个姿态;以及
使用所述特征点和针对所述特征点的所选择的计算出的姿态来确定所述移动设备在所述环境内的定位。
2.根据权利要求1所述的方法,进一步包括:
将所述计算出的多个姿态中的每个姿态存储在查找表中;
其中所述选择包括:针对所述图像中的每个特征点,从所述查找表检索所述多个计算出的姿态中在相应的最接近对应特定计算时间的特定时间的一个姿态。
3.根据权利要求1所述的方法,进一步包括:
将所述计算出的多个姿态中的每个姿态存储在查找表中;
其中所述选择包括:针对所述图像中的每个特征点,从所述查找表检索所述多个计算出的姿态中在相应的紧接在对应特定计算时间之前的特定时间的一个姿态。
4.根据权利要求1所述的方法,其中所述相机系统是多相机相机系统,所述多相机相机系统还包括至少一个第二卷帘快门相机。
5.根据权利要求4所述的方法,进一步包括以下步骤:
获得所述第二卷帘快门相机的另一初始姿态;
在另一捕获时段期间,使用所述第二卷帘快门相机捕获所述环境的第二图像,所述图像包括特征点,每个特征点在所述另一捕获时段期间的特定捕获时间被捕获;
在所述另一捕获时段期间的多个时间,用所述运动检测器感测所述移动设备的移动;
基于所述初始姿态和所感测到的移动来计算所述第二相机的多个姿态,每个第二相机计算出的姿态对应所述另一捕获时段内的一个特定计算出的时间,其中第二相机计算出的姿态的数量响应于所述另一捕获时段期间所述移动设备的所感测到的移动;
针对所述第二图像中的每个特征点,通过将所述特征点的所述特定捕获时间与所述计算出的姿态的所述特定计算出的时间进行匹配来选择所述多个第二相机计算出的姿态中的一个姿态;以及
使用所述第一图像的所述特征点、所述第二图像的所述特征点和针对所述特征点的所选择的计算出的姿态来确定所述移动设备在所述环境内的所述定位。
6.根据权利要求5所述的方法,所述方法进一步包括以下步骤:
将所述第二相机计算出的多个姿态中的每个姿态存储在查找表中;
其中所述选择包括:针对所述图像中的每个特征点,从所述查找表检索所述多个第二相机计算出的姿态中具有最接近对应特定计算出的时间的对应特定时间的一个姿态。
7.根据权利要求5所述的方法,其中所述确定步骤包括:
将所述第二相机计算出的多个姿态中的每个姿态存储在查找表中;
其中所述选择包括:针对所述图像中的每个特征点,从所述查找表检索所述多个第二相机计算出的姿态中具有紧接在对应特定计算出的时间之前的对应特定时间的一个姿态。
8.根据权利要求1所述的方法,其中所述确定所述定位包括使用所述特征点和针对所述特征点的被选择的计算出的姿态来应用即时定位与地图构建(SLAM)算法。
9.根据权利要求1所述的方法,其中所感测到的移动包括以下项中的至少一者:
用惯性测量单元(IMU)感测运动;或
响应于来自全球定位系统(GPS)的坐标而感测所述移动设备的定位的变化速率。
10.根据权利要求1所述的方法,其中所述计算出的姿态的数量少于特征点的数量。
11.一种用于确定眼戴设备在环境内的定位的视觉惯性追踪系统,所述系统包括:
运动检测器;
第一卷帘快门相机;
眼戴设备,所述眼戴设备包括所述运动检测器、所述第一卷帘快门相机、处理器和存储器;以及
所述存储器中的程序,其中由所述处理器执行所述程序将所述眼戴设备配置为:获得所述第一卷帘快门相机的初始姿态;在捕获时段期间,使用所述相机系统捕获环境的图像,所述图像包括特征点,每个特征点在所述捕获时段期间的特定捕获时间被捕获;在所述捕获时段期间,用所述运动检测器感测所述移动设备的移动;基于所述初始姿态和所感测到的移动来计算所述第一卷帘快门相机的多个姿态,每个计算出的姿态对应于所述捕获时段内的特定计算出的时间,其中计算出的姿态的数量响应于所述移动设备的所感测到的移动;针对所述图像中的每个特征点,通过将所述特征点的所述特定捕获时间与所述计算出的姿态的所述特定计算出的时间进行匹配来选择所述多个计算出的姿态中的一个姿态;以及使用所述特征点和针对所述特征点的所选择的计算出的姿态来确定所述移动设备在所述环境内的定位。
12.根据权利要求11所述的系统,进一步包括:
查找表,所述查找表存储在存储器中,其中所述计算出的多个姿态中的每个姿态存储在所述查找表中。
13.根据权利要求12所述的系统,进一步包括:
在存储器中将所述计算出的多个姿态中的每个姿态存储在查找表中;以及
针对所述图像中的每个特征点,从存储器从所述查找表检索所述多个计算出的姿态中具有最接近对应特定计算出的时间的对应特定时间的一个姿态。
14.根据权利要求12所述的系统,进一步包括:
在存储器中将所述计算出的多个姿态中的每个姿态存储在查找表中;以及
针对所述图像中的每个特征点,从存储器从所述查找表检索所述多个计算出的姿态中具有紧接在对应特定计算出的时间之前的对应特定时间的一个姿态。
15.根据权利要求11所述的系统,其中所述系统进一步包括多相机相机系统,所述多相机相机系统包括第二卷帘快门相机。
16.根据权利要求15所述的系统,其中所述存储器中的所述程序在被所述处理器执行时进一步将所述眼戴设备配置为:获得所述第二卷帘快门相机的另一初始姿态;在另一捕获时段期间,使用所述第二卷帘快门相机捕获所述环境的第二图像,所述图像包括特征点,每个特征点在所述另一捕获时段期间的特定捕获时间被捕获;在所述另一捕获时段期间的多个时间,用所述运动检测器感测所述移动设备的移动;基于所述初始姿态和所感测到的移动来计算所述第二相机的多个姿态,每个第二相机计算出的姿态对应于所述另一捕获时段内的特定计算出的时间,其中第二相机计算出的姿态的数量响应于所述另一捕获时段期间所述移动设备的所感测到的移动;针对所述第二图像中的每个特征点,通过将所述特征点的所述特定捕获时间与所述计算出的姿态的所述特定计算出的时间进行匹配来选择所述多个第二相机计算出的姿态中的一个姿态;以及使用所述第一图像的所述特征点、所述第二图像的所述特征点和针对所述特征点的所选择的计算出的姿态来确定所述移动设备在所述环境内的所述定位。
17.根据权利要求15所述的系统,其中所述存储器中的所述程序在被所述处理器执行时进一步将所述眼戴设备配置为
在存储器中将所述第二相机计算出的多个姿态中的每个姿态存储在查找表中;
针对所述图像中的每个特征点,从存储器从所述查找表检索所述多个第二相机计算出的姿态中具有最接近对应特定计算出的时间的对应特定时间的一个姿态。
18.根据权利要求15所述的系统,其中所述存储器中的所述程序在被所述处理器执行时进一步将所述眼戴设备配置为
在存储器中将所述第二相机计算出的多个姿态中的每个姿态存储在查找表中;
针对所述图像中的每个特征点,从存储器从所述查找表检索所述多个第二相机计算出的姿态中具有紧接在对应特定计算出的时间之前的对应特定时间的一个姿态。
19.根据权利要求11所述的系统,其中所述计算出的姿态的数量少于特征点的数量。
20.一种存储程序代码的非暂态计算机可读介质,所述程序代码在被具有至少一个卷帘快门相机、处理器、存储器和运动检测器的眼戴设备执行时用于在视觉惯性追踪期间平衡姿态精度和计算负载,所述程序代码在被执行时运行以使电子处理器执行以下步骤:
获得所述至少一个卷帘快门相机的初始姿态;
在捕获时段期间,使用所述至少一个卷帘快门相机捕获环境的图像,所述图像包括特征点,每个特征点在所述捕获时段期间的特定捕获时间被捕获;
在所述捕获时段期间,用所述运动检测器感测所述移动设备的移动;
基于所述初始姿态和所感测到的移动来计算所述至少一个卷帘快门相机的多个姿态,每个计算出的姿态对应于所述捕获时段内的特定计算出的时间,其中计算出的姿态的数量响应于所述移动设备的所感测到的移动;
针对所述图像中的每个特征点,通过将所述特征点的所述特定捕获时间与所述计算出的姿态的所述特定计算出的时间进行匹配来选择所述多个计算出的姿态中的一个姿态;以及
使用所述特征点和针对所述特征点的所选择的计算出的姿态来确定所述移动设备在所述环境内的定位。
CN202180046772.7A 2020-06-29 2021-06-07 使用卷帘快门相机的视觉惯性追踪 Pending CN115917465A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US202063045568P 2020-06-29 2020-06-29
US63/045,568 2020-06-29
US17/161,937 2021-01-29
US17/161,937 US11582409B2 (en) 2020-06-29 2021-01-29 Visual-inertial tracking using rolling shutter cameras
PCT/US2021/036096 WO2022005698A1 (en) 2020-06-29 2021-06-07 Visual-inertial tracking using rolling shutter cameras

Publications (1)

Publication Number Publication Date
CN115917465A true CN115917465A (zh) 2023-04-04

Family

ID=79030748

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180046772.7A Pending CN115917465A (zh) 2020-06-29 2021-06-07 使用卷帘快门相机的视觉惯性追踪

Country Status (5)

Country Link
US (2) US11582409B2 (zh)
EP (1) EP4172708A1 (zh)
KR (1) KR20230029923A (zh)
CN (1) CN115917465A (zh)
WO (1) WO2022005698A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113196139B (zh) 2018-12-20 2023-08-11 美国斯耐普公司 用于生成立体图像的具有双摄像头的柔性眼戴设备
US10965931B1 (en) 2019-12-06 2021-03-30 Snap Inc. Sensor misalignment compensation
US11582409B2 (en) * 2020-06-29 2023-02-14 Snap Inc. Visual-inertial tracking using rolling shutter cameras
JP2023003033A (ja) * 2021-06-23 2023-01-11 キヤノン株式会社 電子機器および電子機器の制御方法
US11949527B2 (en) 2022-04-25 2024-04-02 Snap Inc. Shared augmented reality experience in video chat

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6064749A (en) * 1996-08-02 2000-05-16 Hirota; Gentaro Hybrid tracking for augmented reality using both camera motion detection and landmark tracking
US10012504B2 (en) 2014-06-19 2018-07-03 Regents Of The University Of Minnesota Efficient vision-aided inertial navigation using a rolling-shutter camera with inaccurate timestamps
US10204395B2 (en) * 2016-10-19 2019-02-12 Microsoft Technology Licensing, Llc Stereoscopic virtual reality through caching and image based rendering
WO2018201067A1 (en) * 2017-04-27 2018-11-01 Magic Leap, Inc. Light-emitting user input device
CN107607111A (zh) 2017-09-07 2018-01-19 驭势科技(北京)有限公司 加速度偏置估计方法和装置、视觉惯性里程计及其应用
US10964030B2 (en) * 2018-02-12 2021-03-30 Samsung Electronics Co., Ltd. Device and method with pose estimator based on current predicted motion state array
US10861242B2 (en) * 2018-05-22 2020-12-08 Magic Leap, Inc. Transmodal input fusion for a wearable system
US11940277B2 (en) * 2018-05-29 2024-03-26 Regents Of The University Of Minnesota Vision-aided inertial navigation system for ground vehicle localization
US10719944B2 (en) * 2018-09-13 2020-07-21 Seiko Epson Corporation Dynamic object tracking
US11016560B1 (en) * 2019-04-08 2021-05-25 Rockwell Collins, Inc. Video timewarp for mixed reality and cloud rendering applications
US11582409B2 (en) * 2020-06-29 2023-02-14 Snap Inc. Visual-inertial tracking using rolling shutter cameras

Also Published As

Publication number Publication date
US20230156357A1 (en) 2023-05-18
EP4172708A1 (en) 2023-05-03
US11582409B2 (en) 2023-02-14
KR20230029923A (ko) 2023-03-03
US20210409628A1 (en) 2021-12-30
WO2022005698A1 (en) 2022-01-06

Similar Documents

Publication Publication Date Title
US20210405761A1 (en) Augmented reality experiences with object manipulation
CN115917498A (zh) 使用语音和文字字幕的增强现实体验
US11520399B2 (en) Interactive augmented reality experiences using positional tracking
US11854147B2 (en) Augmented reality guidance that generates guidance markers
US11582409B2 (en) Visual-inertial tracking using rolling shutter cameras
CN115735183A (zh) 增强现实眼戴器3d绘画
US20210405363A1 (en) Augmented reality experiences using social distancing
CN115735178A (zh) 具有对话气泡和翻译的增强现实眼戴器
US11508130B2 (en) Augmented reality environment enhancement
US20240004197A1 (en) Dynamic sensor selection for visual inertial odometry systems
US20210406542A1 (en) Augmented reality eyewear with mood sharing
KR20230073336A (ko) 가상 아이웨어 빔들을 사용한 증강 현실 게이밍
CN116685934A (zh) 增强现实精确追踪和显示

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