CN110954083A - 移动设备的定位 - Google Patents
移动设备的定位 Download PDFInfo
- Publication number
- CN110954083A CN110954083A CN201910767981.5A CN201910767981A CN110954083A CN 110954083 A CN110954083 A CN 110954083A CN 201910767981 A CN201910767981 A CN 201910767981A CN 110954083 A CN110954083 A CN 110954083A
- Authority
- CN
- China
- Prior art keywords
- feature point
- maps
- point maps
- coarse
- server
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 claims abstract description 94
- 230000033001 locomotion Effects 0.000 claims abstract description 85
- 238000012545 processing Methods 0.000 claims description 73
- 238000004891 communication Methods 0.000 claims description 60
- 230000004807 localization Effects 0.000 claims description 29
- 238000005192 partition Methods 0.000 claims description 19
- 230000005540 biological transmission Effects 0.000 claims description 15
- 230000004044 response Effects 0.000 claims description 9
- 238000005259 measurement Methods 0.000 claims description 7
- 230000008569 process Effects 0.000 description 74
- 230000003190 augmentative effect Effects 0.000 description 35
- 238000013500 data storage Methods 0.000 description 25
- 230000003287 optical effect Effects 0.000 description 22
- 238000010586 diagram Methods 0.000 description 14
- 230000001953 sensory effect Effects 0.000 description 9
- 230000001413 cellular effect Effects 0.000 description 7
- 230000036541 health Effects 0.000 description 7
- 230000008859 change Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000013507 mapping Methods 0.000 description 5
- 238000003384 imaging method Methods 0.000 description 4
- 239000000835 fiber Substances 0.000 description 3
- 210000003128 head Anatomy 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 238000004088 simulation Methods 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 238000001429 visible spectrum Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 238000013503 de-identification Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000002329 infrared spectrum Methods 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 229910044991 metal oxide Inorganic materials 0.000 description 2
- 150000004706 metal oxides Chemical class 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 239000004984 smart glass Substances 0.000 description 2
- 238000001228 spectrum Methods 0.000 description 2
- 230000004931 aggregating effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 229940079593 drug Drugs 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 210000001525 retina Anatomy 0.000 description 1
- 230000004270 retinal projection Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000009528 vital sign measurement Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/005—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 with correlation of navigation data from several sources, e.g. map or contour matching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C1/00—Measuring angles
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO 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
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
- G01S19/14—Receivers specially adapted for specific applications
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/017—Head mounted
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
- G06F18/2148—Generating training patterns; Bootstrap methods, e.g. bagging or boosting characterised by the process organisation or structure, e.g. boosting cascade
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/0346—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/038—Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04815—Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/017—Head mounted
- G02B2027/0178—Eyeglass type
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/0179—Display position adjusting means not related to the information to be displayed
- G02B2027/0187—Display position adjusting means not related to the information to be displayed slaved to motion of at least a part of the body of the user, e.g. head, eye
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20016—Hierarchical, coarse-to-fine, multiscale or multiresolution image processing; Pyramid transform
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30244—Camera pose
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Human Computer Interaction (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Optics & Photonics (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Automation & Control Theory (AREA)
- Computer Graphics (AREA)
- User Interface Of Digital Computer (AREA)
- Processing Or Creating Images (AREA)
- Image Analysis (AREA)
Abstract
本公开涉及移动设备的定位。本公开描述了用于移动设备的定位的系统和方法。一些具体实施可包括访问使用一个或多个运动传感器捕获的运动数据;基于运动数据来确定粗略定位,其中粗略定位包括对位置的第一估计;获得一个或多个特征点地图,其中特征点地图与粗略定位的位置相关联;访问使用一个或多个图像传感器捕获的图像;基于图像,通过定位到一个或多个特征点地图的特征点地图中来确定精细定位姿态,其中精细定位姿态包括对位置的第二估计和对取向的估计;基于精细定位姿态生成包括虚拟对象的视图的虚拟对象图像;以及显示虚拟对象图像。
Description
技术领域
本公开涉及移动设备的定位。
背景技术
头戴式显示器用于为用户提供虚拟现实、增强现实和/或混合现实体验。虚拟环境的对象可在头戴式显示器的坐标系中的位置处被呈现。
发明内容
本文公开了移动设备的定位的具体实施。
在第一方面中,本说明书中描述的主题可具体体现在系统中,该系统包括头戴式显示器、耦接到头戴式显示器的一个或多个图像传感器,以及耦接到头戴式显示器的一个或多个运动传感器。该系统包括处理装置,该处理装置被配置为访问使用一个或多个运动传感器捕获的运动数据;基于运动数据来确定粗略定位姿态,其中粗略定位姿态包括对头戴式显示器的位置的第一估计和对头戴式显示器的取向的第一估计;获得一个或多个特征点地图,其中特征点地图与粗略定位姿态的位置相关联;访问使用一个或多个图像传感器捕获的图像;基于图像通过定位到一个或多个特征点地图的特征点地图中来确定精细定位姿态,其中精细定位姿态包括对头戴式显示器的位置的第二估计和对头戴式显示器的取向的第二估计;基于精细定位姿态生成包括虚拟对象的视图的虚拟对象图像;以及使用头戴式显示器来显示虚拟对象图像。
在第二方面中,本说明书中描述的主题可体现在方法中,该方法包括,在具有一个或多个运动传感器的电子设备处,访问使用一个或多个运动传感器捕获的运动数据;基于运动数据来确定粗略定位,其中粗略定位包括对电子设备的位置的第一估计;获得一个或多个特征点地图,其中特征点地图与粗略定位的位置相关联;访问使用一个或多个图像传感器捕获的图像;基于图像,通过定位到一个或多个特征点地图的特征点地图中来确定精细定位姿态,其中精细定位姿态包括对位置的第二估计和对取向的估计;基于精细定位姿态生成包括虚拟对象的视图的虚拟对象图像;以及显示虚拟对象图像。
在第三方面中,本说明书中描述的主题可具体体现在系统中,该系统包括服务器—该服务器被配置为访问存储在空间分区数据结构中的特征点地图,并且基于对位置的估计从空间分区数据结构中选择一个或多个特征点地图;以及移动计算设备,该移动计算设备被配置为基于运动传感器数据确定包括位置估计的粗略定位,向服务器发送包括粗略定位的请求,以及从服务器基于粗略定位选择的服务器接收一个或多个特征点地图,通过使用捕获的图像定位到一个或多个特征点地图的特征点地图中来确定精细定位姿态,其中精细定位姿态包括对位置的第二估计和对取向的估计,基于精细定位姿态生成包括虚拟对象的视图的虚拟对象图像,以及显示虚拟对象图像。
在第四方面中,本说明书中描述的主题可体现在一种非暂态计算机可读存储介质中。该非暂态计算机可读存储介质可包括可执行指令,该可执行指令在由处理器执行时,帮助执行操作,包括访问使用一个或多个运动传感器捕获的运动数据;基于运动数据来确定粗略定位,其中粗略定位包括对位置的第一估计;获得一个或多个特征点地图,其中特征点地图与粗略定位的位置相关联;访问使用一个或多个图像传感器捕获的图像;基于图像,通过定位到一个或多个特征点地图的特征点地图中来确定精细定位姿态,其中精细定位姿态包括对位置的第二估计和对取向的估计;基于精细定位姿态生成包括虚拟对象的视图的虚拟对象图像;以及显示虚拟对象图像。
附图说明
在阅读本公开时通过结合附图对以下具体实施方式得以最佳理解。应当强调的是,根据惯例,附图的各种特征结构不是成比例的。相反,为了清楚起见,各种特征结构的尺寸被任意扩大或缩小。
图1是被配置为针对增强现实应用启用定位的系统的示例的框图。
图2是被配置为针对增强现实应用启用定位的系统的示例的框图。
图3是被配置为针对增强现实应用启用定位的移动计算设备300的示例的框图。
图4是被配置为针对增强现实应用启用定位的系统的示例的框图。
图5是被配置为针对增强现实应用启用定位的定位服务器的示例的框图。
图6是用于增强现实应用的定位过程的示例的流程图。
图7是用于获得与粗略定位相关联的特征点地图的过程的示例的流程图。
图8是用于迭代地获得与粗略定位相关联的特征点地图以确定精细定位的过程的示例的流程图。
图9是用于基于粗略定位识别一个或多个特征点地图进行传输的过程的示例的流程图。
具体实施方式
本文描述了系统和方法,该系统和方法提供了一种方式,供移动设备以高度的准确性和稳定性来确定其在坐标系(例如,相对于地球的全球坐标系)中的位置和取向。例如,这些系统和方法可用于具有真实世界语义的增强现实应用的上下文中,其中由于准确性和噪声问题,仅仅GPS可能是不够的。
全球坐标系是这样一种系统,其中地球表面之上和上方的点与相对于地球中心的唯一坐标元组(例如笛卡尔坐标(x,y,z)或球形坐标或(lat,long,altitude))相关联。全球位置是距全球坐标系原点的平移变化量。全球取向是全球坐标系中的标识转换的旋转变化量。例如,可将取向编码为四元数或3x3旋转矩阵。姿态包括坐标系中的位置和取向。姿态可具有六个自由度。全球姿态是组合的全球位置和全球取向。例如,姿态可被编码为4x4矩阵或被编码为三个浮点值(例如,全球位置)和四元数或3x3矩阵(例如,全球取向)的组合。
粗略定位是一种快速确定设备坐标(例如,全球坐标)的过程,但具有一定程度的不确定性、噪声和/或不稳定性。例如,可通过处理来自以下类型的运动传感器中的一者或多者的测量值或传感器读数来执行粗略定位:GPS接收器、Wi-Fi或蜂窝三角测量、罗盘、气压计和/或惯性测量单元。粗略定位也可指粗略定位过程的结果,其可包括位置和/或取向(例如,包括位置和取向两者的粗略定位姿态)。
精细定位是一种以比粗略定位更高程度的准确度和稳定性确定设备的坐标(例如,全球坐标)的方法。精细定位可将从感兴趣设备捕获的空间的图像与已知存在于空间区域中的物理对象的模型进行比较,以找到与来自感兴趣设备的视角的匹配,该匹配可指示当捕获图像时感兴趣设备的姿态。例如,可应用束调节处理(例如,使用SLAM(同时定位和标测)算法)来定位到特征点地图中,从而以高准确度和稳定性确定设备的姿态。例如,在呈现真实世界位置中的虚拟对象的图形表示(例如,作为3D图形)的一些增强现实应用中,精细定位的准确度通常可以达到小于10cm的全球位置误差和小于0.1度的全球取向误差的量级。精细定位也可指精细定位过程的结果,其可包括位置和/或取向(例如,包括位置和取向两者的精细定位姿态)。
特征点地图是可由计算机视觉算法使用的特征点的集合(例如,存储为特征点列表)。特征点具有位置(例如,全球坐标系中的位置)。例如,特征点可包括指定其位置的三元浮点数。在一些具体实施中,特征点可包括描述特征点的属性(例如,颜色或局部纹理)的一个或多个附加数据通道。特征点地图可与空间的区域相关联,并且可包括出现在该空间区域(例如,立方体、球体或房间)内的特征点。特征点扫描是用于收集特征点和生成真实世界中的位置的特征点地图的过程(例如,手动过程)。例如,可使用相同类型的设备来执行特征点扫描,该设备稍后将把特征点地图用于增强现实应用。例如,可使用包括图像传感器阵列和用于测量的高精度传感器的专用扫描硬件来执行特征点扫描,以确定图像传感器阵列的变化姿态的轨道。
定位是一个过程,通过该过程,增强现实应用尝试在给定现有特征点地图的情况下对自身进行精细定位。例如,可应用束调节处理(例如,使用SLAM(同时定位和标测)算法)来定位到特征点地图中,以确定精细定位姿态。例如,如果设备实际上不在那些特征点所存在的空间区域中,或者该区域已改变,或者如果该区域未被充分扫描,则定位过程可能会失败。移动计算设备是通常在日常生活中移动或携带的计算设备。移动计算设备的一些示例包括智能电话、智能手表、平板电脑或头戴式显示器(例如,智能眼镜)。为了有利于增强现实应用的操作,移动计算设备可具有两种功能:定位服务,其可包括正在运行并可经由互联网访问以帮助移动计算设备进行粗略定位和/或精细定位的服务或服务器或云资产;以及内容服务,其可包括正在运行并且可经由互联网访问的服务或服务器或云资产,该服务或服务器或云资产基于全球姿态向应用出售内容。一些具体实施使用世界地图数据库,该数据库是作为定位服务的一部分而存在的数据库,该数据库包含特征点地图的空间分区高速缓存。
例如,系统的操作可包括1)应用在移动计算设备(例如,头戴式显示器)上启动并查询其粗略定位全球姿态。2)可以与定位服务建立连接。3)移动计算设备的粗略定位姿态可被传输到定位服务。4)定位服务可以使用特定于应用的搜索试探法来搜索世界地图数据库以查找相关的潜在特征点地图。5)定位服务可开始将潜在特征点地图流传输回到移动计算设备。6)移动计算设备尝试定位到定位服务正在向其流传输的特征点地图中。在步骤6)处成功的情况下,移动计算设备现在被精细地定位。移动计算设备然后可利用精细定位全球姿态来联系内容服务,以开始流传输与设备所在的真实世界位置相关联的内容,使得能够向用户呈现内容。在步骤6)处失败的情况下,不能定位到任何候选的特征点地图中。移动计算设备此时可告知定位服务尝试不同的搜索试探法或者将搜索扩展到附加特征点地图,最终在定位不成功时放弃并显示某种“定位失败”的消息。
一些具体实施可提供优于针对增强现实应用的定位的较早系统的优点,诸如减少延迟和/或处理资源(例如,处理器周期、存储器和/或功率)以执行对全球坐标系的精细定位。一些具体实施可允许使用特征点地图的集中集合,这些特征点地图可频繁地按比例更新以考虑空间布局的频繁变化。
物理环境
a.物理环境是指人们在没有电子系统帮助的情况下能够感测和/或交互的物理世界。物理环境诸如物理公园包括物理物品,诸如物理树木、物理建筑物和物理人。人们能够诸如通过视觉、触觉、听觉、味觉和嗅觉来直接感测物理环境和/或与物理环境交互。
计算机生成的现实
a.相反,计算机生成的现实(CGR)环境是指人们经由电子系统感测和/或交互的完全或部分模拟的环境。在CGR中,跟踪人的物理运动的一个子组或其表示,并且作为响应,以符合至少一个物理定律的方式调节在CGR环境中模拟的一个或多个虚拟对象的一个或多个特征。例如,CGR系统可以检测人的头部转动,并且作为响应,以与此类视图和声音在物理环境中变化的方式类似的方式调节呈现给人的图形内容和声场。在一些情况下(例如,出于可达性原因),对CGR环境中虚拟对象的特征的调节可以响应于物理运动的表示(例如,声音命令)来进行。
b.人可以利用其感官中的任一者来感测CGR对象和/或与CGR对象交互,包括视觉、听觉、触觉、味觉和嗅觉。例如,人可以感测音频对象和/或与音频对象交互,该音频对象创建3D或空间音频环境,该3D或空间音频环境提供3D空间中点音频源的感知。又如,音频对象可以使能音频透明度,该音频透明度在有或者没有计算机生成的音频的情况下选择性地引入来自物理环境的环境声音。在某些CGR环境中,人可以感测和/或只与音频对象交互。
c.CGR的示例包括虚拟现实和混合现实。
虚拟现实
a.虚拟现实(VR)环境是指被设计成对于一个或多个感官完全基于计算机生成的感官输入的模拟环境。VR环境包括人可以感测和/或交互的多个虚拟对象。例如,树木、建筑物和代表人的化身的计算机生成的图像是虚拟对象的示例。人可以通过在计算机生成的环境内人的存在的模拟、和/或通过在计算机生成的环境内人的物理运动的一个子组的模拟来感测和/或与VR环境中的虚拟对象交互。
混合现实
a.与被设计成完全基于计算机生成的感官输入的VR环境相比,混合现实(MR)环境是指被设计成除了包括计算机生成的感官输入(例如,虚拟对象)之外还引入来自物理环境的感官输入或其表示的模拟环境。在虚拟连续体上,混合现实环境是完全物理环境作为一端和虚拟现实环境作为另一端之间的任何状况,但不包括这两端。
b.在一些MR环境中,计算机生成的感官输入可以对来自物理环境的感官输入的变化进行响应。另外,用于呈现MR环境的一些电子系统可以跟踪相对于物理环境的位置和/或取向,以使虚拟对象能够与真实对象(即,来自物理环境的物理物品或其表示)交互。例如,系统可以导致运动使得虚拟树木相对于物理地面看起来是静止的。
c.混合现实的示例包括增强现实和增强虚拟。
d.增强现实
i.增强现实(AR)环境是指其中一个或多个虚拟对象叠加在物理环境或其表示之上的模拟环境。例如,用于呈现AR环境的电子系统可具有透明或半透明显示器,人可以透过该显示器直接查看物理环境。该系统可以被配置为在透明或半透明显示器上呈现虚拟对象,使得人利用该系统感知叠加在物理环境之上的虚拟对象。另选地,系统可以具有不透明显示器和一个或多个成像传感器,成像传感器捕获物理环境的图像或视频,这些图像或视频是物理环境的表示。系统将图像或视频与虚拟对象组合,并在不透明显示器上呈现组合物。人利用系统经由物理环境的图像或视频而间接地查看物理环境,并且感知叠加在物理环境之上的虚拟对象。如本文所用,在不透明显示器上显示的物理环境的视频被称为“透传视频”,意味着系统使用一个或多个图像传感器捕获物理环境的图像,并且在不透明显示器上呈现AR环境时使用那些图像。进一步另选地,系统可以具有投影系统,该投影系统将虚拟对象投射到物理环境中,例如作为全息图或者在物理表面上,使得人利用该系统感知叠加在物理环境之上的虚拟对象。
ii.增强现实环境也是指其中物理环境的表示被计算机生成的感官信息进行转换的模拟环境。例如,在提供透传视频中,系统可以对一个或多个传感器图像进行转换以施加与成像传感器所捕获的视角不同的选择视角(例如,视点)。又如,物理环境的表示可以通过图形地修改(例如,放大)其部分而进行转换,使得修改后的部分可以是原始捕获图像的代表性的但不是真实的版本。再如,物理环境的表示可以通过以图形方式消除或模糊其部分而进行转换。
e.增强虚拟
i.增强虚拟(AV)环境是指虚拟或计算机生成的环境结合了来自实体环境的一项或多项感官输入的模拟环境。感官输入可以是物理环境的一个或多个特征的表示。例如,AV公园可以具有虚拟树木和虚拟建筑物,但人的脸部是从对物理人拍摄的图像逼真再现的。又如,虚拟对象可以采用一个或多个成像传感器所成像的物理物品的形状或颜色。再如,虚拟对象可以采用符合太阳在物理环境中的位置的阴影。
硬件
a.有许多不同类型的电子系统使人能够感测各种CGR环境和/或与各种CGR环境交互。示例包括头戴式系统、基于投影的系统、平视显示器(HUD)、集成有显示能力的车辆挡风玻璃、集成有显示能力的窗户、被形成为被设计用于放置在人眼睛上的透镜的显示器(例如,类似于隐形眼镜)、耳机/听筒、扬声器阵列、输入系统(例如,具有或没有触觉反馈的可穿戴或手持控制器)、智能电话、平板电脑、和台式/膝上型计算机。头戴式系统可以具有一个或多个扬声器和集成的不透明显示器。另选地,头戴式系统可以被配置为接受外部不透明显示器(例如,智能电话)。头戴式系统可以结合用于捕获物理环境的图像或视频的一个或多个成像传感器、和/或用于捕获物理环境的音频的一个或多个麦克风。头戴式系统可以具有透明或半透明显示器,而不是不透明显示器。透明或半透明显示器可以具有媒介,代表图像的光通过该媒介被引导到人的眼睛。显示器可以利用数字光投影、OLED、LED、uLED、硅基液晶、激光扫描光源或这些技术的任意组合。媒介可以是光学波导、全息图媒介、光学组合器、光学反射器、或它们的任意组合。在一个实施方案中,透明或半透明显示器可被配置为选择性地变得不透明。基于投影的系统可以采用将图形图像投影到人的视网膜上的视网膜投影技术。投影系统也可以被配置为将虚拟对象投影到物理环境中,例如作为全息图或在物理表面上。
图1是被配置为针对增强现实应用启用定位的系统100的示例的框图。系统100包括移动计算设备110,该移动计算设备包括用于捕获本地环境112的图像的一个或多个图像传感器。移动计算设备110被配置为经由通信网络106(例如,互联网或另一个广域网,或者局域网)与定位服务器120和内容服务器130通信,其中定位服务器120被配置为特征点地图以帮助移动计算设备110进行精细定位,并且内容服务器通信130被配置为基于精细定位(例如,包括全球位置和/或全球取向)向在移动计算设备110上运行的增强现实应用提供与本地环境112相关联的内容。
系统100包括定位服务器120,该定位服务器被配置为访问存储在空间分区数据结构中的特征点地图,并且基于对位置的估计来从空间分区数据结构中选择一个或多个特征点地图。例如,对位置的估计可被确定为基于移动计算设备110的运动传感器数据的粗略定位。例如,定位服务器120可实现图9的过程900。例如,可能已使用特征提取过程,基于从已知位置捕获的空间区域的图像生成了存储在空间分区数据结构中的特征点地图。例如,定位服务器120可在图5的定位服务器500上实现。在一些具体实施中,空间分区数据结构由定位服务器(例如,在数据存储设备520中)存储。在一些具体实施中,空间分区数据结构存储在单独的数据库服务器(未示出)中,并且由定位服务器经由通信网络106访问。
系统100包括移动计算设备110,该移动计算设备被配置为确定粗略定位,包括基于运动传感器数据对位置的估计。例如,运动传感器数据可包括来自附接至移动计算设备110的全球定位系统(GPS)接收器的运动传感器数据。例如,运动传感器数据可包括来自附接到移动计算设备110的惯性测量单元的运动传感器数据。例如,运动传感器数据可包括来自无线信号接收器的运动传感器数据,该无线信号接收器被配置为基于由移动计算设备110传输的无线信号(例如,Wi-Fi信号或蜂窝信号)对移动计算设备110的位置进行三角测量。在一些具体实施中,移动计算设备的粗略定位还包括对移动计算设备110的取向的估计。移动计算设备110可被配置为向定位服务器120传输包括粗略定位的请求,并且从定位服务器120接收由定位服务器120基于粗略定位选择的一个或多个特征点地图。移动计算设备110可被配置为通过使用所捕获的本地环境112的图像定位到一个或多个特征点地图的特征点地图中来确定精细定位姿态。例如,可应用束调节处理(例如,使用SLAM(同时定位和标测)算法)来定位到特征点地图中,以确定精细定位姿态。精细定位姿态可包括对位置的第二估计和对取向的估计。
系统100包括内容服务器130,该内容服务器被配置为接收对包括来自移动计算设备110的精细定位姿态的内容的请求,并且将内容传输至移动计算设备110,其中该内容由内容服务器130基于对包括精细定位姿态的内容的请求来选择。例如,内容可描述与本地环境112中的位置相关联的一个或多个虚拟对象。在一些具体实施(图1中未示出)中,可将定位服务器120和内容服务器130组合在单个设备中。例如,内容服务器130可在图5的定位服务器500上实现。
移动计算设备110可被配置为基于精细定位姿态生成包括虚拟对象的视图的虚拟对象图像,并且显示虚拟对象图像。在一些具体实施中,移动计算设备110可将对包括精细定位姿态的内容的请求传输到内容服务器130,并且响应于该消息来接收与本地环境112中的位置相关联的内容(例如,描述一个或多个虚拟对象的数据)。例如,虚拟对象图像(例如左眼图像和/或右眼图像)可被呈现在移动计算设备110的显示器中。例如,移动计算设备110可为智能电话、智能手表、平板电脑或头戴式显示器。例如,移动计算设备110可包括图3的移动计算设备300。例如,移动计算设备110可包括图4的系统400。
图2是被配置为针对增强现实应用启用定位的系统200的示例的框图。在系统200中,移动计算设备包括头戴式显示器210。在用户查看本地环境212时,头戴式显示器210由用户216穿戴。头戴式显示器210可被配置为经由通信网络106与定位服务器120和内容服务器130通信,以便确定头戴式显示器210的精细定位,并基于精细定位(例如,全球坐标系中的精细定位姿态)生成并显示虚拟对象图像。例如,头戴式显示器210可实现图6的过程600。例如,头戴式显示器210可包括图3的移动计算设备300。例如,头戴式显示器210可包括图4的头戴式显示器410。
图3是被配置为针对增强现实应用启用定位的移动计算设备300的示例的框图。移动计算设备300包括处理装置310、数据存储设备320、一个或多个运动传感器330、一个或多个图像传感器340、显示器350以及处理装置310可通过其访问其他部件的互连件370。移动计算设备300可被配置为通过定位到基于根据运动传感器数据确定的粗略定位所选择的特征点地图中来确定精细定位(例如,包括全球位置和/或全球取向)。例如,移动计算设备300可被配置为实现图6的过程600。例如,移动计算设备300可被配置为实现图7的过程700。例如,移动计算设备300可被配置为实现图8的过程800。
处理装置310可操作为执行已存储在数据存储设备320中的指令。在一些具体实施中,处理装置310是具有随机存取存储器的处理器,用于在执行指令时临时存储从数据存储设备320读取的指令。处理装置310可包括单个或多个处理器,每个处理器具有单个或多个处理核。另选地,处理装置310可包括能够操纵或处理数据的另一类型的设备或多个设备。例如,数据存储设备320可是非易失性信息存储设备,诸如硬盘驱动器、固态驱动器、只读存储器设备(ROM)、光盘、磁盘或任何其他合适类型的存储设备,诸如非暂态计算机可读存储器。数据存储设备320可包括能够存储用于由处理装置310检索或处理的数据的另一类型的设备或多个设备。处理装置310可经由互连件370访问和操纵存储在数据存储设备320中的数据。例如,数据存储设备320可存储可由处理装置310执行的指令,该指令在由处理装置310执行时使处理装置310执行操作(例如,实现图6的过程600的操作)。在一些具体实施中,处理装置310和数据存储设备320附接到显示器350。
一个或多个运动传感器330可被配置为检测移动计算设备300的运动。例如,一个或多个运动传感器330可包括一个或多个加速度计、陀螺仪和/或磁力仪。例如,一个或多个运动传感器330可包括全球定位系统(GPS)接收器。在一些具体实施中,一个或多个运动传感器330耦接(例如,附接)到显示器350(例如,头戴式显示器)。在一些具体实施中,可基于来自一个或多个运动传感器330的运动传感器数据来确定移动计算设备300在实际空间中的取向和/或位置。例如,移动计算设备300的取向和/或位置的变化可被用作控制界面,供用户改变使用显示器350呈现的增强现实应用的虚拟环境的视图。
一个或多个图像传感器340可被配置为捕获图像,将入射在一个或多个图像传感器340上的光转换成一个或多个数字图像。在一些具体实施中,一个或多个图像传感器340耦接(例如,附接)到显示器350(例如,头戴式显示器)。一个或多个图像传感器340可检测特定光谱(例如,可见光谱和/或红外光谱)的光,并将构成图像的信息作为电信号(例如,模拟或数字信号)传送。例如,一个或多个图像传感器340可包括互补金属氧化物半导体(CMOS)中的电荷耦合器件(CCD)或有源像素传感器。在一些具体实施中,一个或多个图像传感器340包括模数转换器。例如,一个或多个图像传感器340可包括红外相机和可见光相机。一个或多个图像传感器340可包括被配置为捕获移动计算设备300附近的图像的图像传感器。在一些具体实施中,一个或多个图像传感器340包括围绕设备(例如,头戴式显示器210)布置的图像传感器阵列,以提供跨越广角的集体视野。例如,一个或多个图像传感器340可被布置成提供头戴式显示器周围区域的全景视图(例如,360度全景视图)。例如,一个或多个图像传感器340可通过相应的透镜(例如,鱼眼透镜或直线透镜)接收光。
显示器350包括屏幕、镜头或其他类型的光学组件,其被配置为将光引导到用户的眼睛,以使得能够向用户呈现图像(例如,视频帧)。例如,显示器350可包括触摸屏显示器,其中移动计算设备300为智能电话或平板电脑。在一些具体实施中,显示器350包括可通过紧固件(例如,头带或框架)保持在用户面部的适当位置的头戴式显示器(例如,智能眼镜)。在一些具体实施中,显示器350的屏幕直接定位在用户眼睛的前方。在一些具体实施中,显示器350包括光学组件(例如,镜头和/或镜子),其直接定位在用户眼睛的前方并且被配置为将来自显示器350的屏幕或投影仪的光引导到用户的眼睛。光学组件还可将来自用户周围环境的光引导到用户的眼睛。例如,光学组件可包括应用于透明遮阳板内表面的部分反射偏振膜。光学组件可用作光学组合器。例如,光学组件的透镜还可让来自用户前方环境的光通过以到达用户的眼睛并允许用户在他前面看到,同时具有由覆盖在用户前面的物理环境的视图上的显示器350呈现的图像中描绘的虚拟环境的对象。
网络接口360帮助与其他设备,例如定位服务器120或内容服务器130进行通信。例如,网络接口360可帮助经由通信网络106进行通信。例如,网络接口360可帮助经由Wi-Fi网络、蜂窝网络或有线网络进行通信。例如,网络接口360可帮助经由WiMAX网络进行通信。例如,网络接口360可帮助经由光纤网络进行通信。
例如,互连件370可以是系统总线,或者有线或无线网络(例如,体域网)。
处理装置310可被配置为针对增强现实应用启用定位。例如,处理装置310可被配置为访问使用一个或多个运动传感器330捕获的运动数据,并且基于运动数据来确定粗略定位姿态。例如,粗略定位姿态可包括对显示器350的头戴式显示器的位置的第一估计和对头戴式显示器的取向的第一估计。例如,处理装置310可被配置为获得一个或多个特征点地图。特征点地图可与粗略定位姿态的位置相关联。例如,处理装置310可被配置为访问使用一个或多个图像传感器340捕获的图像,并且基于图像通过定位到一个或多个特征点地图的特征点地图来确定精细定位姿态。例如,精细定位姿态可包括对头戴式显示器的位置的第二估计和对头戴式显示器的取向的第二估计。例如,处理装置310可被配置为基于精细定位姿态生成包括虚拟对象的视图的虚拟对象图像,并且使用头戴式显示器来显示虚拟对象图像。例如,处理装置310可被配置为通过经由通信网络(例如,通信网络106)向定位服务器(例如,定位服务器120)传输粗略定位姿态,并经由通信网络从定位服务器接收一个或多个特征点地图,来获得一个或多个特征点地图。在一些具体实施中,来自定位服务器的一个或多个特征点地图包括连续接收的多个特征点地图,并且处理装置310可被配置为通过在接收多个特征点地图时迭代地尝试定位到多个特征点地图的特征点地图中,在无法定位到多个特征点地图的当前特征点地图中之后从定位服务器请求多个特征点地图的下一特征点地图,并响应于成功定位到多个特征点地图的当前特征点地图中而终止从定位服务器接收多个特征点地图的特征点地图,从而确定精细定位姿态。例如,一个或多个特征点地图可被存储在标测物理空间的八叉树数据结构中。例如,一个或多个特征点地图可与全球坐标系中的相应坐标相关联。
图4是被配置为针对增强现实应用启用定位的系统400的示例的框图。系统400包括头戴式显示器410和经由无线通信链路425通信的计算设备450。头戴式显示器410包括一个或多个运动传感器412、一个或多个图像传感器414、无线通信接口416、显示器422、头戴式显示器的部件可通过其交换信息的互连件418(例如,在头戴式显示器410中的微控制器或其他处理装置的控制下,图4中未示出),以及紧固件420,其被配置为将头戴式显示器410保持在佩戴头戴式显示器410的用户的头部的适当位置。计算设备450包括处理装置460、数据存储设备470、无线通信接口480、用户接口490、网络接口492,以及处理装置460可通过其访问计算设备450的其他部件的互连件494。计算设备450可位于佩戴头戴式显示器410的用户附近,并且可执行计算任务以控制头戴式显示器410。例如,计算设备450可以是用户所在的房间中的桌子上的智能电话、平板计算机、台式计算机或家电(例如,智能电视或智能扬声器),或者计算设备450可以是佩戴在用户的不同身体部位(例如,与胸部所穿的背心集成)的另一可穿戴设备。系统400可被配置为通过定位到基于根据运动传感器数据确定的粗略定位所选择的特征点地图中来确定精细定位(例如,包括全球位置和/或全球取向)。例如,系统400可被配置为实现图6的过程600。例如,系统400可被配置为实现图7的过程700。例如,系统400可被配置为实现图8的过程800。
头戴式显示器410包括一个或多个运动传感器412。一个或多个运动传感器412可被配置为检测头戴式显示器410的运动。例如,一个或多个运动传感器412可包括一个或多个加速度计、陀螺仪和/或磁力仪。例如,一个或多个运动传感器412可包括全球定位系统(GPS)接收器。一个或多个运动传感器412可被耦接(例如,附接)到头戴式显示器410。在一些具体实施中,可基于来自一个或多个运动传感器412的传感器数据来确定头戴式显示器410在实际空间中的取向和/或位置。例如,头戴式显示器410的取向和/或位置的变化可被用作控制界面,供用户改变使用头戴式显示器410呈现的增强现实应用的虚拟环境的视图。
头戴式显示器410包括一个或多个图像传感器414。一个或多个图像传感器414可被配置为捕获图像,将入射在一个或多个图像传感器414上的光转换成一个或多个数字图像。一个或多个图像传感器414被耦接(例如,附接)到头戴式显示器410。一个或多个图像传感器414可检测特定光谱(例如,可见光谱和/或红外光谱)的光,并将构成图像的信息作为电信号(例如,模拟或数字信号)传送。例如,一个或多个图像传感器414可包括互补金属氧化物半导体(CMOS)中的电荷耦合器件(CCD)或有源像素传感器。在一些具体实施中,一个或多个图像传感器414包括模数转换器。例如,一个或多个图像传感器414可包括红外相机和可见光相机。一个或多个图像传感器414可包括被配置为捕获头戴式显示器410附近的图像的图像传感器。在一些具体实施中,一个或多个图像传感器414包括围绕头戴式显示器410布置的图像传感器阵列,以提供跨越广角的集体视野。例如,一个或多个图像传感器414可被布置为提供头戴式显示器410周围区域的全景视图(例如,360度全景视图)。例如,一个或多个图像传感器414可通过相应的透镜(例如,鱼眼透镜或直线透镜)接收光。
头戴式显示器410包括无线通信接口416。无线通信接口416促进与包括计算设备450的其他设备的通信。例如,无线通信接口416可帮助经由Wi-Fi网络、蓝牙链路或ZigBee链路的通信。在一些具体实施中,无线通信接口416可用于从计算设备450接收数据和/或调用使用显示器422对虚拟环境的视图进行的呈现的指令。在一些具体实施中,无线通信接口416可用于将来自一个或多个运动传感器412的传感器数据和/或使用一个或多个图像传感器414捕获的图像传输至计算设备450。
头戴式显示器410包括显示器422。显示器422可被配置为呈现图像,将数字图像转换为从显示器422投射的光。显示器422可使用投射可见光谱中的光的像素阵列来投射光。显示器422可包括屏幕、镜头或其他类型的光学组件,其被配置为将光引导到佩戴头戴式显示器410的用户的眼睛,以使得能够向用户呈现图像(例如,视频帧)。例如,显示器422可包括屏幕,诸如液晶显示器(LCD)、发光二极管(LED)显示器(例如,OLED显示器)或其他合适的屏幕。例如,显示器422可包括投影仪。在一些具体实施中,显示器422的屏幕直接定位在用户眼睛的前方。在一些具体实施中,显示器422包括光学组件(例如,镜头和/或镜子),其直接定位在用户眼睛的前方并且被配置为将来自显示器422的屏幕或投影仪的光引导到用户的眼睛。光学组件还可将来自用户周围环境的光引导到用户的眼睛。例如,光学组件可包括应用于透明遮阳板内表面的部分反射偏振膜。光学组件可用作光学组合器。例如,光学组件的透镜还可让来自用户前方物理环境的光通过以到达用户的眼睛并允许用户在他前面看到,同时具有由覆盖在用户前面的物理环境的视图上的显示器422呈现的图像中描绘的虚拟环境的对象。在一些具体实施中,可调整光学组件(例如,镜头)的透明度以适合计算机生成的现实应用(例如,虚拟现实应用或增强现实应用)。
例如,互连件418可以是系统总线,或者有线或无线网络(例如,体域网)。
头戴式显示器410包括紧固件420。紧固件420可被配置为当用户佩戴头戴式显示器410时将头戴式显示器410保持在用户头部上的适当位置。例如,紧固件420可包括头带。例如,紧固件420可包括具有臂的框架,该臂搁置在用户的耳朵上并且将显示器422的镜头或屏幕保持在用户眼睛的前方。
计算设备450包括处理装置460。处理装置460可操作为执行已存储在数据存储设备470中的指令。在一些具体实施中,处理装置460是具有随机存取存储器的处理器,用于在执行指令时临时存储从数据存储设备470读取的指令。处理装置460可包括单个或多个处理器,每个处理器具有单个或多个处理核。另选地,处理装置460可包括能够操纵或处理数据的另一类型的设备或多个设备。例如,数据存储设备470可是非易失性信息存储设备,诸如硬盘驱动器、固态驱动器、只读存储器设备(ROM)、光盘、磁盘或任何其他合适类型的存储设备,诸如非暂态计算机可读存储器。数据存储设备470可包括能够存储用于由处理装置460检索或处理的数据的另一类型的设备或多个设备。处理装置460可经由互连件494访问和操纵存储在数据存储设备470中的数据。例如,数据存储设备470可存储可由处理装置460执行的指令,该指令在由处理装置460执行时使处理装置460执行操作(例如,实现图6的过程600的操作)。
计算设备450包括无线通信接口480。无线通信接口480促进与包括头戴式显示器410的其他设备的通信。例如,无线通信接口480可帮助经由Wi-Fi网络、蓝牙链路或ZigBee链路的通信。无线通信接口480可用于与头戴式显示器410建立无线通信链路425。在一些具体实施中,无线通信接口480可用于从头戴式显示器410接收传感器数据(例如,运动传感器数据和/或图像)。在一些具体实施中,无线通信接口480可用于向头戴式显示器410传输数据和/或调用使用显示器422对虚拟环境的视图进行的呈现的指令。
计算设备450包括用户接口490。例如,用户接口490可包括触摸屏显示器。例如,用户接口490可包括被配置为接收语音命令的麦克风。例如,用户接口490可包括被配置为检测手势命令的图像传感器。例如,用户接口490可包括键盘、鼠标、操纵杆和/或另一种手持控制器。例如,用户接口490可使用户(例如,佩戴头戴式显示器410的用户)向在计算设备450上运行的增强现实输入命令和/或改变与增强现实应用的虚拟环境的对象相关联的过程的配置。
计算设备450包括网络接口492。网络接口492帮助与其他设备,例如定位服务器120或内容服务器130进行通信。例如,网络接口492可帮助经由通信网络106进行通信。例如,网络接口492可帮助经由Wi-Fi网络、蜂窝网络或有线网络进行通信。例如,网络接口492可帮助经由WiMAX网络进行通信。例如,网络接口492可帮助经由光纤网络进行通信。
例如,互连件494可以是系统总线,或者有线或无线网络(例如,体域网)。
处理装置460可被配置为针对增强现实应用启用定位。例如,处理装置460可被配置为访问使用一个或多个运动传感器412捕获的运动数据,并且基于运动数据来确定粗略定位姿态。例如,粗略定位姿态可包括对头戴式显示器410的位置的第一估计和对头戴式显示器的取向的第一估计。例如,处理装置460可被配置为获得一个或多个特征点地图。特征点地图可与粗略定位姿态的位置相关联。例如,处理装置460可被配置为访问使用一个或多个图像传感器414捕获的图像,并且基于图像通过定位到一个或多个特征点地图的特征点地图来确定精细定位姿态。例如,精细定位姿态可包括对头戴式显示器的位置的第二估计和对头戴式显示器的取向的第二估计。例如,处理装置460可被配置为基于精细定位姿态生成包括虚拟对象的视图的虚拟对象图像,并且使用头戴式显示器来显示虚拟对象图像。例如,处理装置460可被配置为通过经由通信网络(例如,通信网络106)向定位服务器(例如,定位服务器120)传输粗略定位姿态,并经由通信网络从定位服务器接收一个或多个特征点地图,来获得一个或多个特征点地图。在一些具体实施中,来自定位服务器的一个或多个特征点地图包括连续接收的多个特征点地图,并且处理装置460可被配置为通过在接收多个特征点地图时迭代地尝试定位到多个特征点地图的特征点地图中,在无法定位到多个特征点地图的当前特征点地图中之后从定位服务器请求多个特征点地图的下一特征点地图,并响应于成功定位到多个特征点地图的当前特征点地图中而终止从定位服务器接收多个特征点地图的特征点地图,从而确定精细定位姿态。例如,一个或多个特征点地图可被存储在标测物理空间的八叉树数据结构中。例如,一个或多个特征点地图可与全球坐标系中的相应坐标相关联。
在一些具体实施中(图4中未示出),用于增强现实应用的处理可分布在头戴式显示器410中的处理装置和处理装置460之间。例如,可在头戴式显示器410的处理装置上运行模拟过程以减少对虚拟环境的视图的更新的延迟,而与虚拟环境中的对象相关联的一个或多个过程可在处理装置460上运行以更新对象的状态。在一些具体实施中,可经由头戴式显示器410和计算设备450之间的无线通信链路425来传输现实片段。因此,头戴式显示器410的处理装置和处理装置460可作为分布在头戴式显示器410和计算设备450之间的单个处理装置运行,该计算设备运行增强现实应用并实现本文所述的过程(例如,图6的过程600)。
图5是被配置为针对增强现实应用启用定位的定位服务器500的示例的框图。定位服务器500包括处理装置510、数据存储设备520、网络接口530、用户接口540和处理装置510可通过其访问其他部件的互连件570。定位服务器500可被配置为识别基于粗略定位(例如,包括全球位置和/或全球取向)而选择的一个或多个特征点地图,粗略定位可基于移动计算设备的运动传感器数据来确定。例如,定位服务器500可被配置为实现图9的过程900。
处理装置510可操作为执行已存储在数据存储设备520中的指令。在一些具体实施中,处理装置510是具有随机存取存储器的处理器,用于在执行指令时临时存储从数据存储设备520读取的指令。处理装置510可包括单个或多个处理器,每个处理器具有单个或多个处理核。另选地,处理装置510可包括能够操纵或处理数据的另一类型的设备或多个设备。例如,数据存储设备520可是非易失性信息存储设备,诸如硬盘驱动器、固态驱动器、只读存储器设备(ROM)、光盘、磁盘或任何其他合适类型的存储设备,诸如非暂态计算机可读存储器。数据存储设备520可包括能够存储用于由处理装置510检索或处理的数据的另一类型的设备或多个设备。处理装置510可经由互连件570访问和操纵存储在数据存储设备520中的数据。例如,数据存储设备520可存储可由处理装置510执行的指令,该指令在由处理装置510执行时使处理装置510执行操作(例如,实现图9的过程900的操作)。
网络接口530帮助与其他设备,例如移动计算设备110或头戴式显示器210进行通信。例如,网络接口530可帮助经由通信网络106进行通信。例如,网络接口530可帮助经由Wi-Fi网络、蜂窝网络或有线网络进行通信。例如,网络接口530可帮助经由WiMAX网络进行通信。例如,网络接口530可帮助经由光纤网络进行通信。
定位服务器500包括用户接口540。例如,用户接口540可包括触摸屏显示器。例如,用户接口540可包括键盘、鼠标、操纵杆和/或另一种手持控制器。例如,用户接口540可包括被配置为接收语音命令的麦克风。例如,用户接口540可包括被配置为检测手势命令的图像传感器。例如,用户接口540可使用户(例如,系统管理员)向定位服务器输入命令以配置和/或维护存储在空间分区数据结构和/或定位服务的其他方面中的集合特征点地图。例如,可以基于将特征提取算法应用于空间区域的图像的区域空间的新扫描来更新特征点地图。在一些具体实施中,可基于调查数据和/或建筑物或其他结构的详细设计蓝图来手动确定和输入与扫描图像相关联的全球姿态信息。
图6是用于增强现实应用的定位过程600的示例的流程图。过程600包括访问610使用一个或多个运动传感器捕获的运动数据;基于运动数据来确定620粗略定位,其中粗略定位包括对位置的第一估计;获得640与粗略定位的位置相关联的一个或多个特征点地图;访问650使用一个或多个图像传感器捕获的图像;基于图像通过定位到一个或多个特征点地图的特征点地图中确定660精细定位姿态;基于精细定位姿态生成670包括虚拟对象的视图的虚拟对象图像;以及显示680虚拟对象图像。例如,过程600可由图1的移动计算设备110来实现。例如,过程600可由图2的头戴式显示器210来实现。例如,过程600可由图3的移动计算设备300来实现。例如,过程600可由图4的系统400实现。
过程600包括在具有一个或多个运动传感器的电子设备处,访问610使用一个或多个运动传感器(例如,一个或多个运动传感器330或一个或多个运动传感器412)捕获的运动数据。例如,一个或多个运动传感器可包括一个或多个加速度计、陀螺仪和/或磁力仪。在一些具体实施中,一个或多个运动传感器耦接(例如,附接)到显示器(例如,显示器350或头戴式显示器410)。例如,一个或多个运动传感器可包括惯性测量单元。在一些具体实施中,一个或多个运动传感器包括全球定位系统接收器。在一些具体实施中,一个或多个运动传感器包括接收器,该接收器被配置为基于来自设备的无线信号的三角测量来估计包括一个或多个图像传感器的设备的位置。例如,可基于来自设备的Wi-Fi信号或蜂窝信号的三角测量来确定设备的位置。可以各种方式访问610运动数据。例如,可通过直接从传感器读取或经由互连件(例如,互连件370)从存储器访问610运动数据。例如,可经由通信链路(例如,无线通信链路425)接收传感器数据,访问610传感器数据。
过程600包括基于运动数据来确定620粗略定位,其中粗略定位包括对电子设备的位置(例如,移动计算设备的位置)的第一估计。在一些具体实施中,粗略定位包括全球姿态。例如,可基于运动数据来确定620粗略定位姿态。例如,粗略定位姿态可包括对头戴式显示器的位置的第一估计和对头戴式显示器的取向的第一估计。例如,粗略定位的位置可被确定为来自GPS接收器的纬度、经度和高度值。例如,粗略定位的位置可基于加速度计和/或陀螺仪读数的积分来确定。例如,可通过对通过远程无线传感器从移动计算设备接收的无线信号(例如,Wi-Fi信号或蜂窝信号)进行三角测量来确定粗略定位的位置。例如,可基于磁力仪和加速度计读数来确定粗略定位的取向。例如,可基于陀螺仪读数的积分来确定粗略定位的取向。
过程600包括获得640一个或多个特征点地图。一个或多个特征点地图可与粗略定位的位置相关联。例如,一个或多个特征点地图与粗略定位姿态的位置相关联。例如,一个或多个特征点地图可被存储在空间分区数据结构中,该数据结构基于粗略定位(例如,粗略定位姿态)进行搜索。在一些具体实施中,可从定位服务器(例如,定位服务器120)获得640一个或多个特征点地图。例如,可实现图7的过程700以获得640一个或多个特征点地图。在一些具体实施中,定位服务器被配置为搜索空间分区数据结构以查找接近对应于粗略定位的位置的候选特征点地图,并且基于与对应于粗略定位的位置的距离,对应于粗略定位的取向与从对应于粗略定位的位置的候选特征点地图的方向的比较,和/或特征点地图的点密度,确定候选特征点地图传输到移动计算设备的优先级。例如,从中获得640一个或多个特征点地图的定位服务器可实现图9的过程900。在一些具体实施中,可通过搜索世界地图数据库获得640一个或多个特征点地图。例如,可通过从存储器(例如,从数据存储设备320或从数据存储设备470)读取一个或多个特征点地图来获得640一个或多个特征点地图,其中世界地图数据库在本地存储在移动计算设备中。例如,一个或多个特征点地图可被存储在标测物理空间的八叉树数据结构中。例如,一个或多个特征点地图可与全球坐标系中的相应坐标相关联。
过程600包括访问650使用一个或多个图像传感器(例如,一个或多个图像传感器340或一个或多个图像传感器414)捕获的图像。在一些具体实施中,一个或多个图像传感器耦接(例如,附接)到一个或多个运动传感器,该一个或多个运动传感器可包括惯性测量单元。一个或多个图像可描绘佩戴头戴式显示器(例如,头戴式显示器410)的用户附近的空间区域。例如,可通过直接从图像传感器读取,通过从存储器或另一存储设备读取图像,或者通过经由与另一设备的通信链路(例如,无线通信链路425)接收图像来访问610图像。
过程600包括基于图像通过定位到一个或多个特征点地图的特征点地图中确定660精细定位姿态。精细定位姿态可包括对位置的第二估计和对取向的估计。例如,精细定位姿态可包括对头戴式显示器(例如,头戴式显示器210或头戴式显示器410)的位置的第二估计和对头戴式显示器的取向的第二估计。例如,可应用束调节处理(例如,使用SLAM(同时定位和标测)算法)来定位到特征点地图中,以确定660精细定位姿态。在一些具体实施中,来自定位服务器的一个或多个特征点地图包括连续接收的多个特征点地图,并且确定精细定位姿态包括在接收到多个特征点地图时迭代地尝试定位到多个特征点地图的特征点地图中。例如,图8的过程800可被实现为迭代地尝试定位到特征点地图的序列中,直到实现定位到特征点地图中。
过程600包括基于精细定位姿态生成670包括虚拟对象的视图的虚拟对象图像。例如,生成670虚拟对象图像可包括渲染描绘与虚拟对象相关联的位置(例如,全球位置)处的虚拟对象的图像,如从移动计算设备的精细定位姿态所看到的。
过程600包括显示680虚拟对象图像(例如,左眼图像和/或右眼图像)。例如,可使用附接到一个或多个图像传感器的头戴式显示器(例如,头戴式显示器210或头戴式显示器410)来显示680虚拟对象图像(例如左眼图像和/或右眼图像)。例如,可使用显示器350显示680虚拟对象图像。
图7是用于获得与粗略定位相关联的特征点地图的过程700的示例的流程图。过程700包括向定位服务器传输710粗略定位;以及从定位服务器接收720一个或多个特征点地图。例如,过程700可由图1的移动计算设备110来实现。例如,过程700可由图2的头戴式显示器210来实现。例如,过程700可由图3的移动计算设备300来实现。例如,过程700可由图4的系统400实现。
过程700包括经由通信网络(例如,通信网络106)向定位服务器(例如,定位服务器120)传输710粗略定位(例如,包括粗略定位姿态)。例如,可使用网络接口360来传输710粗略定位。例如,可使用网络接口492来传输710粗略定位。
过程700包括经由通信网络(例如,通信网络106)从定位服务器(例如,定位服务器120)接收720一个或多个特征点地图。例如,可使用网络接口360来接收720一个或多个特征点地图。例如,可使用网络接口492来接收720一个或多个特征点地图。
图8是用于迭代地获得与粗略定位相关联的特征点地图以确定精细定位的过程800的示例的流程图。例如,来自定位服务器的一个或多个特征点地图包括连续接收的特征点地图的序列。例如,定位服务器可确定特征点地图的优先级(例如,使用图9的过程900)并在序列中排列它们,以努力减少移动计算设备在成功定位之前将进行的定位尝试的次数并缩短与执行那些定位尝试相关联的延迟。过程800包括接收810特征点地图序列中的特征点地图;迭代地尝试定位820到特征点地图序列中的当前特征点地图;如果(在825处)对当前特征点地图的定位不成功,则从定位服务器请求830特征点地图序列的下一个特征点地图;并且,如果(在825处)对当前特征点地图的定位成功,则终止840从定位服务器接收特征点地图序列的特征点地图。例如,过程800可由图1的移动计算设备110来实现。例如,过程800可由图2的头戴式显示器210来实现。例如,过程800可由图3的移动计算设备300来实现。例如,过程800可由图4的系统400实现。
过程800包括接收810特征点地图序列中的特征点地图。例如,可使用网络接口360或网络接口492来接收810当前特征点地图。
过程800包括在接收810到特征点地图序列时迭代地尝试定位820到特征点地图序列的特征点地图中。例如,可应用束调节处理(例如,使用SLAM(同时定位和标测)算法)来尝试定位820到当前特征点地图中,以确定精细定位姿态。
当(在825处)定位到当前特征点地图中不成功时,过程800包括在未能定位到特征点地图序列的当前特征点地图中之后,从定位服务器(例如,定位服务器120)请求830特征点地图序列的下一个特征点地图。例如,请求830下一个特征点地图可包括使用网络接口360或网络接口492向定位服务器传输请求消息。
当(在825处)定位到当前特征点地图中成功时,过程800包括响应于成功定位到特征点地图序列的当前特征点地图中,终止840从定位服务器(例如,定位服务器120)接收特征点地图序列的特征点地图。
图9是用于基于粗略定位识别一个或多个特征点地图进行传输的过程900的示例的流程图。例如,一个或多个特征点地图可被存储在空间分区数据结构中。例如,一个或多个特征点地图可被存储在标测物理空间的八叉树数据结构中。在一些具体实施中,一个或多个特征点地图与全球坐标系中的相应坐标相关联。过程900包括搜索910空间分区数据结构以发现靠近对应于粗略定位的位置的候选特征点地图;以及确定候选特征点地图的传输优先级920。例如,过程900可由图1的定位服务器120来实现。例如,过程900可由图5的定位服务器500来实现。
过程900包括搜索910空间分区数据结构以发现靠近对应于粗略定位(例如,粗略定位姿态)的位置的候选特征点地图。在一些具体实施中,可搜索910空间分区数据结构以查找对应于与移动计算设备的精细定位的位置相距的最大距离内的位置的特征点地图。在一些具体实施中,可搜索910空间分区数据结构以基于移动计算设备的精细定位的取向,查找对应于沿从移动计算设备的精细定位的位置开始的射线投射的位置的特征点地图。在一些具体实施中,可搜索910空间分区数据结构以基于移动计算设备的精细定位姿态,查找对应于出现在移动计算设备的一个或多个图像传感器的视场之内的位置的特征点地图。
过程900包括确定候选特征点地图的传输优先级920。例如,基于与粗略定位姿态对应的位置的距离,可以确定候选特征点地图的传输优先级920。例如,可基于对应于粗略定位姿态的取向与来自对应于粗略定位姿态的位置的候选特征点地图的方向的比较,而确定候选特征点地图的传输优先级920。例如,可以基于候选特征点地图的特征点密度,确定候选特征点地图的传输优先级920。在一些具体实施中,可基于因素的组合(包括与位置的距离、相对于位置的方向和/或候选特征点地图的点密度),而确定候选特征点地图的传输优先级920。
如上所述,本公开技术的一个方面在于采集和使用得自各种来源的数据,以改进向用户递送其可能感兴趣的启发内容或任何其他内容。本公开预期,在一些实例中,这些所采集的数据可包括唯一地识别或可用于联系或定位特定人员的个人信息数据。此类个人信息数据可包括人口统计数据、基于位置的数据、电话号码、电子邮件地址、twitter ID、家庭地址、与用户的健康或健身等级相关的数据或记录(例如,生命信号测量、药物信息、锻炼信息)、出生日期、或任何其他识别信息或个人信息。
本公开认识到在本公开技术中使用此类个人信息数据可用于使用户受益。例如,该个人信息数据可用于递送用户较感兴趣的目标内容。因此,使用此类个人信息数据使得用户能够对所递送的内容进行有计划的控制。此外,本公开还预期个人信息数据有益于用户的其他用途。例如,健康和健身数据可用于向用户的总体健康状况提供见解,或者可用作使用技术来追求健康目标的个人的积极反馈。
本公开设想负责采集、分析、公开、传输、存储或其他使用此类个人信息数据的实体将遵守既定的隐私政策和/或隐私实践。具体地,此类实体应当实行并坚持使用被公认为满足或超出对维护个人信息数据的隐私性和安全性的行业或政府要求的隐私政策和实践。此类政策应该能被用户方便地访问,并应随着数据的采集和/或使用变化而被更新。来自用户的个人信息应当被收集用于实体的合法且合理的用途,并且不在这些合法使用之外共享或出售。此外,在收到用户知情同意后,应进行此类采集/共享。此外,此类实体应考虑采取任何必要步骤,保卫和保障对此类个人信息数据的访问,并确保其他有权访问个人信息数据的人遵守其隐私政策和流程。另外,这种实体可使其本身经受第三方评估以证明其遵守广泛接受的隐私政策和实践。此外,应当调整政策和实践,以便采集和/或访问的特定类型的个人信息数据,并适用于包括管辖范围的具体考虑的适用法律和标准。例如,在美国,对某些健康数据的收集或获取可能受联邦和/或州法律的管辖,诸如健康保险流通和责任法案(HIPAA);而其他国家/地区的健康数据可能受到其他法规和政策的约束并应相应处理。因此,在每个国家/地区应为不同的个人数据类型保持不同的隐私实践。
不管前述情况如何,本公开还预期用户选择性地阻止使用或访问个人信息数据的实施方案。即本公开预期可提供硬件元件和/或软件元件,以防止或阻止对此类个人信息数据的访问。例如,就广告递送服务而言,本公开技术可被配置为在注册服务期间或之后任何时候允许用户选择“选择加入”或“选择退出”参与对个人信息数据的收集。又如,用户可选择不向目标内容递送服务提供位置数据。在另一个示例中,用户可选择限制位置数据被保持的时间长度,或完全禁止位置历史记录的开发。除了提供“选择加入”和“选择退出”选项外,本公开设想提供与访问或使用个人信息相关的通知。例如,可在下载应用时向用户通知其个人信息数据将被访问,然后就在个人信息数据被应用访问之前再次提醒用户。
此外,本公开的目的是应管理和处理个人信息数据以最小化无意或未经授权访问或使用的风险。一旦不再需要数据,通过限制数据采集和删除数据可最小化风险。此外,并且当适用时,包括在某些健康相关应用中,数据去标识可用于保护用户的隐私。可在适当时通过移除特定标识符(例如,出生日期等)、控制所存储数据的量或特异性(例如,在城市级别而不是在地址级别收集位置数据)、控制数据如何被存储(例如,在用户之间聚合数据)、和/或其他方法来促进去标识。
因此,虽然本公开广泛地覆盖了使用个人信息数据来实现一个或多个各种所公开的实施方案,但本公开还预期各种实施方案也可在无需访问此类个人信息数据的情况下被实现。即,本公开技术的各种实施方案不会由于缺少此类个人信息数据的全部或一部分而无法正常进行。例如,可通过基于非个人信息数据或绝对最低数量的个人信息诸如与用户相关联的设备所请求的内容、对内容递送服务可用的其他非个人信息或公开可用的信息来推断偏好,从而选择内容并将该内容递送至用户。
上述公开的具体实施或具体实施的部分可采取计算机程序产品的形式,该计算机程序产品可从例如计算机可用介质或计算机可读介质访问。计算机可用介质或计算机可读介质可以是例如可有形地包含、存储、传送或传输程序或数据结构以供任何处理器使用或连接的任何设备。介质可以是(例如)电子设备、磁性设备、光学设备、电磁设备或半导体设备。也可使用其他合适的介质。此类计算机可用介质或计算机可读介质可被称为非暂态存储器或介质,并且可包括RAM或可随时间推移而变化的其他易失性存储器或存储设备。
Claims (20)
1.一种系统,所述系统包括:
头戴式显示器;
一个或多个图像传感器,所述一个或多个图像传感器耦接到所述头戴式显示器;
一个或多个运动传感器,所述一个或多个运动传感器耦接到所述头戴式显示器;和
处理装置,所述处理装置被配置为:
访问使用所述一个或多个运动传感器捕获的运动数据;
基于所述运动数据来确定粗略定位姿态,其中所述粗略定位姿态包括对所述头戴式显示器的位置的第一估计和对所述头戴式显示器的取向的第一估计;
获得一个或多个特征点地图,其中所述特征点地图与所述粗略定位姿态的位置相关联;
访问使用所述一个或多个图像传感器捕获的图像;
基于所述图像通过定位到所述一个或多个特征点地图的特征点地图中来确定精细定位姿态,其中所述精细定位姿态包括对所述头戴式显示器的位置的第二估计和对所述头戴式显示器的取向的第二估计;
基于所述精细定位姿态生成包括虚拟对象的视图的虚拟对象图像;以及
使用所述头戴式显示器来显示所述虚拟对象图像。
2.根据权利要求1所述的系统,其中所述处理装置被配置为通过以下方式获得所述一个或多个特征点地图:
经由通信网络向服务器传输所述粗略定位姿态;以及
经由所述通信网络从所述服务器接收所述一个或多个特征点地图。
3.根据权利要求2所述的系统,其中来自所述服务器的所述一个或多个特征点地图包括连续接收的多个特征点地图,并且所述处理装置被配置为通过以下方式确定所述精细定位姿态:
在接收到所述多个特征点地图时迭代地尝试定位到所述多个特征点地图的所述特征点地图中;
在未能定位到所述多个特征点地图的当前特征点地图中之后,从所述服务器请求所述多个特征点地图的下一个特征点地图;以及
响应于成功地定位到所述多个特征点地图的当前特征点地图中,终止从所述服务器接收所述多个特征点地图的特征点地图。
4.根据权利要求2至3中任一项所述的系统,其中所述一个或多个特征点地图被存储在空间分区数据结构中,并且所述服务器被配置为:
搜索所述空间分区数据结构以发现靠近对应于所述粗略定位姿态的位置的候选特征点地图;以及
基于与对应于所述粗略定位姿态的所述位置的距离,确定所述候选特征点地图的传输优先级。
5.根据权利要求2至3中任一项所述的系统,其中所述一个或多个特征点地图被存储在空间分区数据结构中,并且所述服务器被配置为:
搜索所述空间分区数据结构以发现靠近对应于所述粗略定位姿态的位置的候选特征点地图;以及
基于对应于所述粗略定位姿态的取向与来自对应于所述粗略定位姿态的所述位置的候选特征点地图的方向的比较,确定所述候选特征点地图的传输优先级。
6.根据权利要求2至3中任一项所述的系统,其中所述一个或多个特征点地图被存储在空间分区数据结构中,并且所述服务器被配置为:
搜索所述空间分区数据结构以发现靠近对应于所述粗略定位姿态的位置的候选特征点地图;以及
基于候选特征点地图的特征点密度,确定所述候选特征点地图的传输优先级。
7.根据权利要求1至6中任一项所述的系统,其中所述一个或多个特征点地图被存储在标测物理空间的八叉树数据结构中。
8.根据权利要求1至7中任一项所述的系统,其中所述一个或多个特征点地图与全球坐标系中的相应坐标相关联。
9.根据权利要求1至8中任一项所述的系统,其中所述一个或多个运动传感器包括全球定位系统接收器。
10.一种方法,所述方法包括:
在具有一个或多个运动传感器的电子设备处,访问使用所述一个或多个运动传感器捕获的运动数据;
基于所述运动数据来确定粗略定位,其中所述粗略定位包括对所述电子设备的位置的第一估计;
获得一个或多个特征点地图,其中所述特征点地图与所述粗略定位的位置相关联;
访问使用一个或多个图像传感器捕获的图像;
基于所述图像,通过定位到所述一个或多个特征点地图的特征点地图中来确定精细定位姿态,其中所述精细定位姿态包括对位置的第二估计和对取向的估计;
基于所述精细定位姿态生成包括虚拟对象的视图的虚拟对象图像;以及
显示所述虚拟对象图像。
11.根据权利要求10所述的方法,其中所述一个或多个图像传感器附接到所述一个或多个运动传感器,所述一个或多个运动传感器包括惯性测量单元。
12.根据权利要求10至11中任一项所述的方法,其中所述一个或多个运动传感器包括接收器,所述接收器被配置为基于来自所述设备的无线信号的三角测量来估计包括所述一个或多个图像传感器的设备的位置。
13.根据权利要求10至12中任一项所述的方法,其中所述粗略定位包括全球姿态。
14.根据权利要求10至13中任一项所述的方法,其中使用附接到所述一个或多个图像传感器的头戴式显示器来显示所述虚拟对象图像。
15.根据权利要求10至14中任一项所述的方法,其中
经由通信网络向服务器传输所述粗略定位;以及
经由所述通信网络从所述服务器接收所述一个或多个特征点地图。
16.根据权利要求15所述的方法,其中来自所述服务器的所述一个或多个特征点地图包括连续接收的多个特征点地图,并且确定所述精细定位姿态包括:
在接收到所述多个特征点地图时迭代地尝试定位到所述多个特征点地图的所述特征点地图中;
在未能定位到所述多个特征点地图的当前特征点地图中之后,从所述服务器请求所述多个特征点地图的下一个特征点地图;以及
响应于成功地定位到所述多个特征点地图的当前特征点地图中,终止从所述服务器接收所述多个特征点地图的特征点地图。
17.根据权利要求15至16中任一项所述的方法,其中所述一个或多个特征点地图被存储在空间分区数据结构中,并且所述服务器被配置为:
搜索所述空间分区数据结构以发现靠近对应于所述粗略定位的位置的候选特征点地图;以及
基于与对应于所述粗略定位的所述位置的距离,确定所述候选特征点地图的传输优先级。
18.根据权利要求15至16中任一项所述的方法,其中所述一个或多个特征点地图被存储在空间分区数据结构中,并且所述服务器被配置为:
搜索所述空间分区数据结构以发现靠近对应于所述粗略定位的位置的候选特征点地图;以及
基于对应于粗略定位的取向与来自对应于粗略定位的所述位置的候选特征点地图的方向的比较,确定所述候选特征点地图的传输优先级。
19.根据权利要求15至16中任一项所述的方法,其中所述一个或多个特征点地图被存储在空间分区数据结构中,并且所述服务器被配置为:
搜索所述空间分区数据结构以发现靠近对应于所述粗略定位的位置的候选特征点地图;以及
基于候选特征点地图的特征点密度,确定所述候选特征点地图的传输优先级。
20.根据权利要求10至19中任一项所述的方法,其中所述一个或多个特征点地图被存储在标测物理空间的八叉树数据结构中。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862736516P | 2018-09-26 | 2018-09-26 | |
US62/736,516 | 2018-09-26 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110954083A true CN110954083A (zh) | 2020-04-03 |
CN110954083B CN110954083B (zh) | 2023-11-24 |
Family
ID=67352490
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910767981.5A Active CN110954083B (zh) | 2018-09-26 | 2019-08-20 | 移动设备的定位 |
Country Status (5)
Country | Link |
---|---|
US (2) | US11138472B2 (zh) |
EP (1) | EP3629290B1 (zh) |
JP (1) | JP7013420B2 (zh) |
KR (1) | KR102331122B1 (zh) |
CN (1) | CN110954083B (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11227435B2 (en) | 2018-08-13 | 2022-01-18 | Magic Leap, Inc. | Cross reality system |
EP3629290B1 (en) * | 2018-09-26 | 2023-01-04 | Apple Inc. | Localization for mobile devices |
WO2020072985A1 (en) | 2018-10-05 | 2020-04-09 | Magic Leap, Inc. | Rendering location specific virtual content in any location |
CN114600064A (zh) | 2019-10-15 | 2022-06-07 | 奇跃公司 | 具有定位服务的交叉现实系统 |
CN114616534A (zh) | 2019-10-15 | 2022-06-10 | 奇跃公司 | 具有无线指纹的交叉现实系统 |
JP2023504775A (ja) | 2019-11-12 | 2023-02-07 | マジック リープ, インコーポレイテッド | 位置特定サービスおよび共有場所ベースのコンテンツを伴うクロスリアリティシステム |
WO2021118962A1 (en) | 2019-12-09 | 2021-06-17 | Magic Leap, Inc. | Cross reality system with simplified programming of virtual content |
EP4103910A4 (en) | 2020-02-13 | 2024-03-06 | Magic Leap, Inc. | CROSS-REALLY SYSTEM WITH ACCURATE COMMON MAPS |
CN115398484A (zh) | 2020-02-13 | 2022-11-25 | 奇跃公司 | 具有用于定位的地理定位信息优先级的交叉现实系统 |
US11562525B2 (en) | 2020-02-13 | 2023-01-24 | Magic Leap, Inc. | Cross reality system with map processing using multi-resolution frame descriptors |
US11551430B2 (en) * | 2020-02-26 | 2023-01-10 | Magic Leap, Inc. | Cross reality system with fast localization |
US20220198764A1 (en) * | 2020-12-18 | 2022-06-23 | Arkh, Inc. | Spatially Aware Environment Relocalization |
US20240062541A1 (en) * | 2021-01-12 | 2024-02-22 | Nec Corporation | Detection system, detection method, and recording medium |
CN114812381B (zh) * | 2021-01-28 | 2023-07-18 | 华为技术有限公司 | 电子设备的定位方法及电子设备 |
EP4047558A1 (en) * | 2021-02-17 | 2022-08-24 | Miehee Ju Kim | System for generating 3d mobile augmented reality |
WO2023009112A1 (en) * | 2021-07-28 | 2023-02-02 | Innopeak Technology, Inc. | Augmented reality content rendering |
WO2023243558A1 (ja) * | 2022-06-15 | 2023-12-21 | ソニーグループ株式会社 | 情報処理装置、プログラムおよび情報処理システム |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1698067A (zh) * | 2003-04-28 | 2005-11-16 | 索尼株式会社 | 图像识别设备、方法和机器人设备 |
US20100166317A1 (en) * | 2008-12-30 | 2010-07-01 | Li Jiangwei | Method, apparatus and computer program product for providing face pose estimation |
US20100287485A1 (en) * | 2009-05-06 | 2010-11-11 | Joseph Bertolami | Systems and Methods for Unifying Coordinate Systems in Augmented Reality Applications |
US20110216090A1 (en) * | 2010-03-03 | 2011-09-08 | Gwangju Institute Of Science And Technology | Real-time interactive augmented reality system and method and recording medium storing program for implementing the method |
US20120243732A1 (en) * | 2010-09-20 | 2012-09-27 | Qualcomm Incorporated | Adaptable Framework for Cloud Assisted Augmented Reality |
WO2013086678A1 (zh) * | 2011-12-12 | 2013-06-20 | 北京航空航天大学 | 平面模型下点匹配与位姿同步确定方法及计算机程序产品 |
US20140016821A1 (en) * | 2012-07-12 | 2014-01-16 | Qualcomm Incorporated | Sensor-aided wide-area localization on mobile devices |
CN103959308A (zh) * | 2011-08-31 | 2014-07-30 | Metaio有限公司 | 以参考特征匹配图像特征的方法 |
JP2015005220A (ja) * | 2013-06-21 | 2015-01-08 | キヤノン株式会社 | 情報表示装置及び情報表示方法 |
CN104364712A (zh) * | 2012-06-08 | 2015-02-18 | 苹果公司 | 用于捕获全景图像的方法和装置 |
AU2016246024A1 (en) * | 2015-04-10 | 2017-11-09 | The European Atomic Energy Community (Euratom), Represented By The European Commission | Method and device for real-time mapping and localization |
CN107533230A (zh) * | 2015-03-06 | 2018-01-02 | 索尼互动娱乐股份有限公司 | 头戴式显示器用追踪系统 |
CN107742311A (zh) * | 2017-09-29 | 2018-02-27 | 北京易达图灵科技有限公司 | 一种视觉定位的方法及装置 |
CN108353248A (zh) * | 2015-08-27 | 2018-07-31 | Fzc哥络普斯 | 用于定位移动设备的方法和装置 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9311883B2 (en) | 2011-11-11 | 2016-04-12 | Microsoft Technology Licensing, Llc | Recalibration of a flexible mixed reality device |
US10366511B2 (en) | 2014-05-28 | 2019-07-30 | Elbit Systems Land And C4I Ltd. | Method and system for image georegistration |
WO2016077798A1 (en) * | 2014-11-16 | 2016-05-19 | Eonite Perception Inc. | Systems and methods for augmented reality preparation, processing, and application |
JP6440539B2 (ja) | 2015-03-13 | 2018-12-19 | 三菱電機株式会社 | 設備情報表示システム、モバイル端末、サーバおよび設備情報表示方法 |
US10078218B2 (en) | 2016-01-01 | 2018-09-18 | Oculus Vr, Llc | Non-overlapped stereo imaging for virtual reality headset tracking |
US10466953B2 (en) * | 2017-03-30 | 2019-11-05 | Microsoft Technology Licensing, Llc | Sharing neighboring map data across devices |
US10852847B2 (en) | 2017-07-26 | 2020-12-01 | Google Llc | Controller tracking for multiple degrees of freedom |
EP3629290B1 (en) * | 2018-09-26 | 2023-01-04 | Apple Inc. | Localization for mobile devices |
-
2019
- 2019-07-16 EP EP19186531.0A patent/EP3629290B1/en active Active
- 2019-08-15 JP JP2019149031A patent/JP7013420B2/ja active Active
- 2019-08-20 CN CN201910767981.5A patent/CN110954083B/zh active Active
- 2019-08-29 KR KR1020190106368A patent/KR102331122B1/ko active IP Right Grant
- 2019-09-19 US US16/575,712 patent/US11138472B2/en active Active
-
2021
- 2021-10-04 US US17/493,359 patent/US11756229B2/en active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1698067A (zh) * | 2003-04-28 | 2005-11-16 | 索尼株式会社 | 图像识别设备、方法和机器人设备 |
US20100166317A1 (en) * | 2008-12-30 | 2010-07-01 | Li Jiangwei | Method, apparatus and computer program product for providing face pose estimation |
US20100287485A1 (en) * | 2009-05-06 | 2010-11-11 | Joseph Bertolami | Systems and Methods for Unifying Coordinate Systems in Augmented Reality Applications |
US20110216090A1 (en) * | 2010-03-03 | 2011-09-08 | Gwangju Institute Of Science And Technology | Real-time interactive augmented reality system and method and recording medium storing program for implementing the method |
US20120243732A1 (en) * | 2010-09-20 | 2012-09-27 | Qualcomm Incorporated | Adaptable Framework for Cloud Assisted Augmented Reality |
CN103959308A (zh) * | 2011-08-31 | 2014-07-30 | Metaio有限公司 | 以参考特征匹配图像特征的方法 |
WO2013086678A1 (zh) * | 2011-12-12 | 2013-06-20 | 北京航空航天大学 | 平面模型下点匹配与位姿同步确定方法及计算机程序产品 |
CN104364712A (zh) * | 2012-06-08 | 2015-02-18 | 苹果公司 | 用于捕获全景图像的方法和装置 |
US20140016821A1 (en) * | 2012-07-12 | 2014-01-16 | Qualcomm Incorporated | Sensor-aided wide-area localization on mobile devices |
JP2015005220A (ja) * | 2013-06-21 | 2015-01-08 | キヤノン株式会社 | 情報表示装置及び情報表示方法 |
CN107533230A (zh) * | 2015-03-06 | 2018-01-02 | 索尼互动娱乐股份有限公司 | 头戴式显示器用追踪系统 |
AU2016246024A1 (en) * | 2015-04-10 | 2017-11-09 | The European Atomic Energy Community (Euratom), Represented By The European Commission | Method and device for real-time mapping and localization |
CN108353248A (zh) * | 2015-08-27 | 2018-07-31 | Fzc哥络普斯 | 用于定位移动设备的方法和装置 |
CN107742311A (zh) * | 2017-09-29 | 2018-02-27 | 北京易达图灵科技有限公司 | 一种视觉定位的方法及装置 |
Non-Patent Citations (1)
Title |
---|
FONG, W. T.,等: ""Computer vision centric hybrid tracking for augmented reality in outdoor urban environments"", pages 185 - 190 * |
Also Published As
Publication number | Publication date |
---|---|
KR102331122B1 (ko) | 2021-11-24 |
US11138472B2 (en) | 2021-10-05 |
EP3629290B1 (en) | 2023-01-04 |
US20220101058A1 (en) | 2022-03-31 |
JP7013420B2 (ja) | 2022-01-31 |
EP3629290A1 (en) | 2020-04-01 |
CN110954083B (zh) | 2023-11-24 |
US11756229B2 (en) | 2023-09-12 |
KR20200035344A (ko) | 2020-04-03 |
JP2020077363A (ja) | 2020-05-21 |
US20200097770A1 (en) | 2020-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110954083B (zh) | 移动设备的定位 | |
US10139623B2 (en) | Virtual object orientation and visualization | |
US11308686B1 (en) | Captured image data in a computer-generated reality environment | |
US11825103B2 (en) | Gaze-driven recording of video | |
CN115512534A (zh) | 远程设备的发现和连接 | |
KR20160060582A (ko) | 시각 데이터를 처리하는 장치 및 방법, 및 관련된 컴퓨터 프로그램 제품 | |
CN111602391B (zh) | 用于根据物理环境定制合成现实体验的方法和设备 | |
US20240089695A1 (en) | Locating Content In An Environment | |
CN110488489B (zh) | 用于头戴式壳体的眼睛登记 | |
US11087559B1 (en) | Managing augmented reality content associated with a physical location | |
US11533580B2 (en) | Locating content in an environment | |
US20240069688A1 (en) | Head-Mounted Electronic Device with Magnification Tool | |
US11816759B1 (en) | Split applications in a multi-user communication session | |
US11361473B1 (en) | Including a physical object based on context | |
US11496723B1 (en) | Automatically capturing a moment | |
US11308716B1 (en) | Tailoring a computer-generated reality experience based on a recognized object | |
US11715271B2 (en) | XR preferred movement along planes | |
WO2024044556A1 (en) | Head-mounted electronic device with magnification tool | |
CN114556329A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |