CN111859199A - 在环境中定位内容 - Google Patents

在环境中定位内容 Download PDF

Info

Publication number
CN111859199A
CN111859199A CN202010365171.XA CN202010365171A CN111859199A CN 111859199 A CN111859199 A CN 111859199A CN 202010365171 A CN202010365171 A CN 202010365171A CN 111859199 A CN111859199 A CN 111859199A
Authority
CN
China
Prior art keywords
content
content item
physical
electronic device
cgr
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
CN202010365171.XA
Other languages
English (en)
Inventor
D·W·帕德格特
C·D·付
S·G·瓦德
P·尤尔斯
I·内戈伊塔
T·G·索尔特
D·A·戈维尔
D·拉多普洛斯
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.)
Apple Inc
Original Assignee
Apple Inc
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
Priority claimed from US16/861,296 external-priority patent/US11533580B2/en
Application filed by Apple Inc filed Critical Apple Inc
Publication of CN111859199A publication Critical patent/CN111859199A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9554Retrieval from the web using information identifiers, e.g. uniform resource locators [URL] by using bar codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/213Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B21/00Measuring arrangements or details thereof, where the measuring technique is not covered by the other groups of this subclass, unspecified or not relevant
    • G01B21/20Measuring arrangements or details thereof, where the measuring technique is not covered by the other groups of this subclass, unspecified or not relevant for measuring contours or curvatures, e.g. determining profile
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/005Navigation; 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
    • 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
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1633Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
    • G06F1/1684Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675
    • G06F1/1686Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675 the I/O peripheral being an integrated camera
    • 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
    • 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/013Eye tracking input arrangements
    • 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/0304Detection arrangements using opto-electronic means
    • 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/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction 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/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/021Services related to particular areas, e.g. point of interest [POI] services, venue services or geofences

Abstract

本公开涉及在环境中定位内容。一种方法包括确定电子设备的设备位置,以及基于该设备位置来获取要输出以供电子设备显示的内容项,其中该内容项包括粗略内容位置信息和精细内容位置信息。该方法还包括基于该内容项在物理环境中确定锚点,基于该精细内容位置信息来确定内容项相对于锚点的内容位置和内容取向,以及利用该内容位置和内容取向使用电子设备来显示内容项的表示。

Description

在环境中定位内容
本专利申请要求2020年2月21日提交的美国临时专利申请62/979,478的权益,并且本专利申请还要求2019年4月30日提交的美国临时专利申请62/840,510的权益,这两个专利申请的内容据此全文以引用方式并入本文以用于所有目的。
技术领域
本专利申请整体涉及在环境中定位内容。
背景技术
在计算机生成的现实(CGR)系统中,虚拟内容可相对于物理世界定位并向用户显示,使得内容和物理环境对用户可见。通常使用近似定位技术。因此,对于若干不同用户中的每个用户,相同的内容可能不位于相同的位置,对于跨多个会话的单个用户,相同的内容可能不位于相同的位置,或者内容可能以相对于物理环境中的对象没有几何对应关系(例如,准确对准)的方式被显示。
发明内容
本公开的一个方面是一种方法,该方法包括确定电子设备的设备位置,以及基于设备位置来获取要输出以供电子设备显示的内容项,其中内容项包括粗略内容位置信息和精细内容位置信息。该方法还包括基于内容项在物理环境中确定锚点,基于精细内容位置信息来确定内容项相对于锚点的内容位置和内容取向,以及利用内容位置和内容取向使用电子设备来显示内容项的表示。
在该方法的一些具体实施中,获取要输出以供电子设备显示的内容项还基于用户偏好信息。在该方法的一些具体实施中,获取要输出以供电子设备显示的内容项包括向内容源传输请求,该请求包括设备位置和用户偏好信息。在该方法的一些具体实施中,获取要输出以供电子设备显示的内容项包括确定粗略内容位置信息对应于相对于设备位置限定的区域。在该方法的一些具体实施中,获取要输出以供电子设备显示的内容项包括基于用户偏好信息对内容项进行排名。
在该方法的一些具体实施中,锚点对应于物理环境中的物理特征,并且在物理环境中确定锚点包括使用与电子设备相关联的传感器来限定物理环境的三维表示,以及检测物理特征在物理环境的三维表示中的存在。物理环境的三维表示可以是三维点云。物理环境的三维表示可以是三维网格。
在该方法的一些具体实施中,锚点对应于物理环境中的物理特征,并且在物理环境中确定锚点包括使用与电子设备相关联的相机来获取物理环境的一个或多个图像,以及检测物理特征在物理环境的一个或多个图像中的存在。
在该方法的一些具体实施中,基于由电子设备接收的无线信号来确定锚点。
在该方法的一些具体实施中,精细内容位置信息标识锚点。
该电子设备可以是手持式设备。该电子设备可以是头戴式设备。
在该方法的一些具体实施中,内容项包括描述内容项的三维模型、图像、视频、音频、可执行代码、渲染框架或元数据中的至少一者。在该方法的一些具体实施中,粗略内容位置信息包括地理空间坐标。在该方法的一些具体实施中,粗略内容位置信息包括描述内容项相对于电子设备的位置的信息。
在该方法的一些具体实施中,精细内容位置包括描述内容项相对于锚点的相对位置和取向的信息。在该方法的一些具体实施中,精细内容位置信息包括限定锚点的信息。在该方法的一些具体实施中,限定锚点的信息标识二维图像中的特征。在该方法的一些具体实施中,限定锚点的信息标识三维网格中的特征。在该方法的一些具体实施中,精细内容位置信息描述对用于放置内容项的合适表面的要求。
本公开的另一方面是一种系统,该系统包括存储器和处理器,该处理器被配置为执行存储在存储器中的指令,以确定电子设备的设备位置,基于设备来获取要输出以供电子设备显示的内容项,其中内容项包括粗略内容位置信息和精细内容位置信息,基于内容项确定物理环境中的锚点,基于精细内容位置信息确定内容项相对于锚点的内容位置和内容取向,以及使用电子设备利用内容位置和内容取向来显示内容项的表示。
在该系统的一些具体实施中,处理器被进一步配置为执行存储在存储器中的指令,以通过向内容源传输请求来获取要输出以供电子设备显示的内容项,该请求包括设备位置和用户偏好信息,该内容项通过确定粗略内容位置信息对应于相对于设备位置所限定的区域而获取,并且该内容项通过基于用户偏好信息对内容项进行排名而获取。
在该系统的一些具体实施中,锚点对应于物理环境中的物理特征,并且在物理环境中确定锚点包括使用与电子设备相关联的传感器来限定物理环境的三维表示,以及检测物理特征在物理环境的三维表示中的存在。在该系统的一些具体实施中,锚点对应于物理环境中的物理特征,并且在物理环境中确定锚点包括使用与电子设备相关联的相机来获取物理环境的一个或多个图像,以及检测物理特征在物理环境的一个或多个图像中的存在。在该系统的一些具体实施中,基于由电子设备接收的无线信号来确定锚点。
本公开的另一方面是一种非暂态计算机可读存储设备,其包括一个或多个处理器可执行的程序指令,该程序指令在被执行时使一个或多个处理器执行操作。该操作包括确定电子设备的设备位置,基于设备位置来获取要输出以供电子设备显示的内容项,其中内容项包括粗略内容位置信息和精细内容位置信息,基于内容项确定物理环境中的锚点,基于精细内容位置信息确定内容项相对于锚点的内容位置和内容取向,以及使用电子设备利用内容位置和内容取向来显示内容项的表示。
在非暂态计算机可读存储设备的一些具体实施中,获取要输出以供电子设备显示的内容项包括向内容源传输请求,该请求包括设备位置和用户偏好信息,该内容项通过确定粗略内容位置信息对应于相对于设备位置所限定的区域而获取,并且该内容项通过基于用户偏好信息对内容项进行排名而获取。
在该非暂态计算机可读存储设备的一些具体实施中,锚点对应于物理环境中的物理特征,并且在物理环境中确定锚点包括使用与电子设备相关联的传感器来限定物理环境的三维表示,以及检测物理特征在物理环境的三维表示中的存在。
在该非暂态计算机可读存储设备的一些具体实施中,锚点对应于物理环境中的物理特征,并且在物理环境中确定锚点包括使用与电子设备相关联的相机来获取物理环境的一个或多个图像,以及检测物理特征在物理环境的一个或多个图像中的存在。
在该非暂态计算机可读存储设备的一些具体实施中,基于由电子设备接收的无线信号来确定锚点。
本公开的另一方面是一种方法,该方法包括使用电子设备的相机获取机器可读数据表示的图像,其中机器可读数据表示位于物理对象上,以及对机器可读数据表示进行解码以确定包括内容标识符的数据值。该方法还包括基于内容标识符来获取要输出以供电子设备显示的内容项,其中内容位置信息与内容项相关联。该方法还包括基于内容位置信息确定内容项相对于物理对象的内容位置和内容取向,以及根据内容位置和内容取向使用电子设备来显示内容项的表示。
该方法的一些具体实施包括使用电子设备来确定物理对象的几何配置,其中确定内容项相对于物理对象的内容位置和内容取向还基于物理对象的几何配置。在该方法的一些具体实施中,确定物理对象的几何配置包括分析使用电子设备的相机获取的物理对象的图像。在该方法的一些具体实施中,确定物理对象的几何配置包括分析表示使用电子设备的三维传感器获取的物理对象的三维传感器输出。在该方法的一些具体实施中,内容项包括内容项的三维模型,并且确定内容项相对于物理对象的内容位置和内容取向还基于将三维模型匹配到物理对象的几何配置。
在该方法的一些具体实施中,物理对象的几何配置由物理对象的三维点云表示。在该方法的一些具体实施中,物理对象的几何配置由物理对象的三维网格表示。
该方法的一些具体实施包括确定机器可读数据表示的数据表示位置和数据表示姿态,其中确定内容项相对于物理对象的内容位置和内容取向还基于机器可读数据表示的数据表示位置和数据表示姿态。
在该方法的一些具体实施中,获取要输出以供电子设备显示的内容项包括向内容源传输请求。在该方法的一些具体实施中,数据值包括标识内容源的内容源标识符。
在该方法的一些具体实施中,电子设备是手持式设备。在该方法的一些具体实施中,电子设备是头戴式设备。
在该方法的一些具体实施中,内容项包括描述内容项的三维模型、图像、视频、音频、可执行代码、渲染框架或元数据中的至少一者。
在该方法的一些具体实施中,基于内容位置信息来确定内容项相对于物理对象的内容位置和内容取向包括识别二维图像中的特征并确定相对于该特征的内容位置和内容取向。在该方法的一些具体实施中,基于内容位置信息来确定内容项相对于物理对象的内容位置和内容取向包括识别三维网格中的特征并确定相对于该特征的内容位置和内容取向。
在该方法的一些具体实施中,机器可读数据表示是一维条形码。在该方法的一些具体实施中,机器可读数据表示是二维条形码。
本公开的另一方面是一种包括存储器和处理器的系统。处理器被配置为执行存储在存储器中的指令以使用电子设备的相机获取机器可读数据表示的图像,其中机器可读数据表示位于物理对象上。处理器被进一步配置为执行存储在存储器中的指令以对机器可读数据表示进行解码,以确定包括内容标识符的数据值,并基于内容标识符来获取要输出以供电子设备显示的内容项,其中内容位置信息与内容项相关联。处理器被进一步配置为执行存储在存储器中的指令以基于内容位置信息确定内容项相对于物理对象的内容位置和内容取向,以及根据内容位置和内容取向使用电子设备来显示内容项的表示。
在该系统的一些具体实施中,处理器被进一步配置为执行存储在存储器中的指令,以使用电子设备来确定物理对象的几何配置,其中确定内容项相对于物理对象的内容位置和内容取向还基于物理对象的几何配置。
在该系统的一些具体实施中,通过分析使用电子设备的相机获取的物理对象的图像来确定物理对象的几何配置。
在该系统的一些具体实施中,通过分析表示使用电子设备的三维传感器获取的物理对象的三维传感器输出来确定物理对象的几何配置。
在该系统的一些具体实施中,内容项包括内容项的三维模型,并且还基于将三维模型匹配到物理对象的几何配置来确定内容项相对于物理对象的内容位置和内容取向。
在该系统的一些具体实施中,物理对象的几何配置由物理对象的三维点云表示。在该系统的一些具体实施中,物理对象的几何配置由物理对象的三维网格表示。
在该系统的一些具体实施中,处理器被进一步配置为执行存储在存储器中的指令,以确定机器可读数据表示的数据表示位置和数据表示姿态,其中还基于机器可读数据表示的数据表示位置和数据表示姿态来确定内容项相对于物理对象的内容位置和内容取向。
本公开的另一方面是一种非暂态计算机可读存储设备,其包括一个或多个处理器可执行的程序指令,该程序指令在被执行时使一个或多个处理器执行操作。该操作包括使用电子设备的相机获取机器可读数据表示的图像,其中机器可读数据表示位于物理对象上,以及对机器可读数据表示进行解码以确定包括内容标识符的数据值。该操作还包括基于内容标识符来获取要输出以供电子设备显示的内容项,其中内容位置信息与内容项相关联。该操作还包括基于内容位置信息确定内容项相对于物理对象的内容位置和内容取向,以及根据内容位置和内容取向使用电子设备来显示内容项的表示。
在非暂态计算机可读存储设备的一些具体实施中,该操作还包括使用电子设备来确定物理对象的几何配置,其中确定内容项相对于物理对象的内容位置和内容取向还基于物理对象的几何配置。
在非暂态计算机可读存储设备的一些具体实施中,确定物理对象的几何配置包括分析使用电子设备的相机获取的物理对象的图像。在非暂态计算机可读存储设备的一些具体实施中,确定物理对象的几何配置包括分析表示使用电子设备的三维传感器获取的物理对象的三维传感器输出。
在非暂态计算机可读存储设备的一些具体实施中,内容项包括内容项的三维模型,并且确定内容项相对于物理对象的内容位置和内容取向还基于将三维模型匹配到物理对象的几何配置。
在非暂态计算机可读存储设备的一些具体实施中,物理对象的几何配置由物理对象的三维点云表示。在非暂态计算机可读存储设备的一些具体实施中,物理对象的几何配置由物理对象的三维网格表示。
在非暂态计算机可读存储设备的一些具体实施中,该操作还包括确定机器可读数据表示的数据表示位置和数据表示姿态,其中确定内容项相对于物理对象的内容位置和内容取向还基于机器可读数据表示的数据表示位置和数据表示姿态。
附图说明
图1是示出了计算机生成的现实(CGR)设备的示例的框图。
图2是示出手持式CGR设备和物理环境的图示。
图3是示出手持式CGR设备、物理环境和虚拟对象的图示。
图4是示出根据第一具体实施的主应用程序和内容提供商之间的关系的示例的框图。
图5是示出根据第一具体实施的用于内容识别和放置的过程的流程图。
图6是示出手持式CGR设备、物理对象和机器可读数据表示的图示。
图7是示出图6的手持式CGR设备、物理对象和虚拟对象的图示。
图8是示出根据第二具体实施的主应用程序和内容提供商之间的关系的示例的框图。
图9是示出根据第三具体实施的扫描应用程序、内容特定应用程序和内容提供商之间的关系的示例的框图。
图10是示出根据第二具体实施的用于内容识别和放置的过程的流程图。
具体实施方式
本文所公开的系统和方法涉及从多个内容源识别要在电子场景中显示的内容,以及跨多个用户和会话准确地将内容放置在场景内。在本文所述的系统和方法中,内容可使用多种不同的技术来创建,并且可由多个不同的内容提供商应用程序托管。主应用程序能够连接到多个内容提供商应用程序以识别相关内容,并同时用来自多个内容提供商应用程序的内容填充场景,而不是要求用户执行仅能够显示应用程序负责的内容的特定应用程序。粗略定位技术和精细定位技术的组合用于相对于物理环境以精确的位置和旋转关系来显示内容,这允许现有物理对象与虚拟对象无缝地集成,并且允许多个用户以相同的方式体验相同的内容(这可同时发生)。
图1是示出了计算机生成的现实(CGR)设备100的示例的框图。CGR设备100为可包括外壳110、显示系统111、传感器112、相机113、处理器114、存储器115、存储装置116、数据连接117和电池118的电子设备。例如,CGR设备100可以智能电话、智能手表、平板电脑或头戴式显示设备的形式实现。
外壳110是CGR设备100的其他部件连接到并由其支撑的物理结构。各种配置和材料可用于外壳110。在一些具体实施中,CGR设备100为手持式设备,并且外壳110为手持式结构或佩戴在用户的手臂或手腕上的结构。使用这种类型的配置的设备的示例为智能电话和智能手表。在一些具体实施中,CGR设备100为头戴式设备,并且外壳110被配置为使得其可被佩戴在用户头上。当被配置为头戴式时,外壳110可包括常规配置的头带或其他固定结构,诸如护目镜类型配置、光环类型配置或头盔类型配置。
显示系统111包括能够操作以输出图像诸如静态图像或视频图像的设备以及向用户呈现图像的光学元件。作为示例,显示系统111可以包括LCD显示面板、LED显示面板或OLED显示面板以输出图像。在CGR设备100为手持式设备的具体实施中,不需要另外的光学元件。在CGR设备100为头戴式设备的具体实施中,可使用光学组合器来限定光学透传CGR配置,该光学组合器允许虚拟内容看起来被覆盖在周围环境的直接视图上。在CGR设备100为头戴式设备的具体实施中,可使用视频透传CGR配置,其中向用户显示的图像使用将内容单独地显示至用户的每只眼睛的透镜来合成(例如,由相机)捕获的图像与虚拟内容。
传感器112是结合在CGR设备100中的设备,诸如通过定位于外壳110内部或通过永久连接到外壳110。传感器112能够输出表示感测状况的信号。可结合在传感器112中的各个传感器的示例包括利用加速度计、陀螺仪和磁力计来输出描述运动的信息的惯性测量单元、可见光谱相机、红外光谱相机、结构光立体设备、深度相机、激光雷达设备、雷达设备、超声波设备、测量来自外部红外源信号的红外检测器、发射可通过外部红外检测器测量的信号的红外信标、生物识别传感器、电容传感器、温度传感器、光传感器和力传感器。
相机113包括一个或多个可操作为捕获CGR设备100周围环境的图像(例如,各自包括像素阵列的视频帧)的一个或多个可见光谱相机和/或红外相机。CGR设备100可以是视频透传CGR设备,其利用由相机获取的图像来生成使用显示系统111向CGR设备100的用户显示的内容。例如,相机113可获取图像,向图像添加元素以限定增强图像,以及使用CGR设备100的显示系统111输出增强图像。
处理器114被结合在CGR设备100中,诸如通过定位于外壳110中。处理器114可操作来执行计算机程序指令并且执行由计算机程序指令描述的操作。作为示例,处理器114可以是常规设备诸如中央处理单元。存储器115可以是易失性、高速、短期信息存储设备诸如随机存取存储器模块。存储装置116可以是非易失性信息存储设备诸如闪存模块、硬盘驱动器或固态驱动器。处理器114、存储器115和存储装置116电连接(例如,通过系统总线)以允许在它们之间高速传输数据。
数据连接117是允许在CGR设备100和其他计算设备之间交换信息的通信连接。数据连接117也可由CGR设备100用于在连接到与互联网连接的适当源时获取任何互联网可访问信息。数据连接117可以是使用任何合适的通信协议的有线连接或无线连接。
例如,数据连接117可被实现为无线局域网(WLAN)。在一个具体实施中,可使用来自电气和电子工程师学会(IEEE)802.11标准系列(即Wi-Fi)的无线数据通信标准,诸如802.11ac标准、802.11ad标准或802.11ax标准,来实现WLAN。又如,数据连接117可被实现为无线个人局域网(WPAN)。在一个具体实施中,WPAN可使用
Figure BDA0002476305100000091
技术联盟发布的
Figure BDA0002476305100000092
无线数据通信标准来实现。
电池118被结合在CGR设备100中,以允许CGR设备100在没有通往电源的有线电力传输连接的情况下工作。作为一种替代形式,可使用有线电源。作为另一种替代形式,可使用无线电力传输。
如将在本文详细解释的,CGR设备100包括主应用程序120和一个或多个内容源121。主应用程序120使得内容被显示给用户。内容源121是提供对存储在CGR设备100上的内容项的访问或提供对远程存储的内容项(例如,可使用诸如互联网的通信网络访问)的访问的应用程序或服务。作为一个示例,主应用程序120和内容源121可存储在存储装置116中并根据需要加载到存储器115中,因此主应用程序120可由处理器114执行以使用由内容源121提供的内容项来控制CGR设备100的操作的各方面。又如,主应用程序120可存储在存储装置116中并根据需要加载到存储器115中,因此主应用程序120可由处理器114执行以使用由内容源121提供的内容项来控制CGR设备100的操作的各方面,内容源121可以在相对于CGR设备100的远程位置(可通过网络访问的物理上独立的设备)。
图2是示出手持式CGR设备220和物理环境226的图示。图3是示出手持式CGR设备220、物理环境226和虚拟对象330的图示,该虚拟对象相对于物理环境以特定位置和姿态被显示。
手持式CGR设备220是CGR设备100的具体实施,并且可包括相对于CGR设备100所述的任何或所有部件。在该示例中,手持式CGR设备220是具有允许其被用户222握持的外形的电子设备。作为外形的示例,手持式CGR设备220可以智能电话、平板电脑或智能手表的形式来实现。
在例示的示例中,用户222正握持手持式CGR设备220,使得观察方向224被取向为朝向物理环境226,在所示环境中,物理环境包括物理对象228,该物理对象具有诸如表面和边缘的物理特征。手持式CGR设备220能够获取关于物理对象228的信息,诸如描述物理对象228的表面和边缘的信息。手持式CGR设备220使用该信息来显示虚拟对象330,使得虚拟对象330看起来是物理环境226的一部分。
如图3所示,手持式CGR设备220向用户显示虚拟对象330,使得虚拟对象330在物理环境226内被定位到特定位置和取向,诸如参照物理对象228的特定位置和取向。
虚拟对象330是在由用户查看的场景中显示的内容项的表示。例如,虚拟对象330可以是三维对象或二维对象(例如,图像或文本)。虚拟对象330可以是静态虚拟对象,诸如虚拟雕像,或者可以是动态虚拟对象,诸如虚拟动画字符。在一些具体实施中,用户可根据包括在内容项中的计算机程序指令与虚拟对象330进行交互并且控制虚拟对象330的行为。
图2至图3所示的场景可使用头戴式CGR设备来实现,该设备也可称为头戴式显示器。头戴式CGR设备是CGR设备100的具体实施,并且可包括相对于CGR设备100所述的任何或所有部件。在该示例中,头戴式CGR设备是具有允许其佩戴在用户头上的外形的电子设备。头戴式CGR设备可以利用已知的配置,并且可以视频透传CGR设备的形式来实现,或者可以光学透传CGR设备的形式来实现。在头戴式CGR设备具有眼睛跟踪能力的具体实施中,用户通过其头部的位置和角度取向并且任选地基于其眼睛的注视角度来控制头戴式CGR设备的观察方向的取向。
如相对于手持式CGR设备220所示和所述,头戴式CGR设备可被取向成使得观察方向朝向包括物理对象的物理环境,如相对于物理环境226和物理对象228所述。头戴式CGR设备向用户显示虚拟对象,使得虚拟对象在物理环境内被定位到特定位置和取向,诸如参照物理对象的特定位置和取向。
虚拟对象是在由用户查看的场景中显示的内容项的表示。例如,虚拟对象可以是三维对象或二维对象(例如,图像或文本)。虚拟对象可以是静态虚拟对象,诸如虚拟雕像,或者可以是动态虚拟对象,诸如虚拟动画字符。在一些具体实施中,用户可根据包括在内容项中的计算机程序指令与虚拟对象进行交互并且控制虚拟对象的行为。
图4是示出根据第一具体实施的主应用程序120和内容源121之间的关系的示例的框图。主应用程序120向第一内容源421a和第二内容源421b中的每一者发送请求440。来自主应用程序的请求440要求内容源识别可输出以显示给用户的内容。在例示的示例中,该请求被发送至两个内容源,但请求440可改为被发送到许多内容源(例如,几十个内容源)。内容源121可包括本地内容源(例如,呈由CGR设备100执行的应用程序的形式,在这种情况下,请求440可以本地API调用的形式做出)。内容源121可包括不位于CGR设备100上的远程内容源(例如,由可使用诸如互联网的通信网络访问的远程服务实现的内容源),在这种情况下,可使用任何合适的通信方法将请求440传输至远程内容源。
请求440包括允许内容源识别在发送请求时与用户相关的内容的信息。在例示的示例中,请求440可包括设备位置信息442和用户偏好信息444。请求440中可包括其他类型的信息。
设备位置信息442可包括允许粗略了解用户位置的任何类型的位置。作为一个示例,设备位置信息442可包括使用卫星导航系统(例如,全球导航卫星系统(GNSS))确定的地理空间坐标。又如,设备位置信息442可识别已被CGR设备100接收并且为了解用户的位置提供基础的信号(例如,来自无线网络节点或定位信标)。又如,设备位置信息442可描述计算机可解译特征诸如机器可读代码(例如,QR代码),该特征使用CGR设备100的传感器来识别并且可与地理空间位置相关联(例如,使用存储在数据库中的信息相关联)。又如,设备位置信息442可描述在由CGR设备100获取并且使用机器视觉系统解译的图像中可见的地标,其中地标可与地理空间位置相关联(例如,使用存储在数据库中的信息相关联)。在一个具体实施中,CGR设备获取显示对象的图像,这些对象一起可被识别为先前在已知位置诸如用户家中观察到的对象,并且基于对这些对象的观察,可在设备位置信息442中包括已知地理空间坐标或其他识别信息。上述示例并非穷尽的,并且可使用其他感测模式在设备位置信息442中确定和描述用户的粗略位置。此外,可同时使用多种感测模式以提供关于当前条件下的设备位置的最佳信息。
设备位置信息442可由内容源121(诸如第一内容源421a和第二内容源421b)用于包括和排除可被递送至CGR设备100并向用户显示的内容项。例如,设备位置信息442可用于限定区域(例如,地理空间区域,建筑物中的房间或物理空间的其他子部分)。作为一个示例,该区域可以是用于限定设备位置周围的区域的一定长度的半径,如设备位置信息442所示。内容源121可识别该区域内的内容项并且可识别该区域外部的内容项,其中可考虑将位于该区域内的内容项递送至CGR设备100以显示给用户,并且不考虑将位于该区域外部的内容项递送至CGR设备100以向用户显示。
用户偏好信息444可描述用户希望看到的内容类型,并且可描述用户不希望看到的内容类型。例如,用户偏好信息444可使用过滤器、类别或通过包括或排除特定内容项来指示内容的偏好。用户偏好信息444可包括可用于对内容进行排名的多个定性或定量因素。例如,内容源可使用包括在用户偏好信息中的因素或其他信息来对位于用户位置附近的各种内容项进行排名(例如,根据设备位置信息442确定)。
内容源121接收请求440并尝试使用设备位置信息442、用户偏好信息444和/或包括在请求440中的其他信息来识别要递送至主应用程序120的内容项。一旦识别内容项,内容源121就可将关于内容项的信息传输至主应用程序120。在例示的示例中,第一内容源421a已识别要输出以供CGR设备100显示的内容,并且将内容包446传输至主应用程序120。
内容包446可包括例如内容项448、粗略内容位置信息450和精细内容位置信息452。内容项448包括将被输出以用于显示给用户和/或可用于交互(例如,通过响应于用户动作而执行动作)的静态和交互式内容。内容项448可包括例如影响内容项448的行为以允许交互性的三维模型、图像、视频、音频、可执行代码,用于促进内容项448的呈现和显示的渲染框架,和/或描述包括在内容项448中的其他组成部分的方面的元数据。
在一些具体实施中,内容项448是由内容源121中的一个生成的动态对象。例如,内容源121中的一者可提供对个体内容项(诸如书籍、杂志、文章、歌曲、电影、视频游戏或照片)的库的访问。在该示例中,被输出以供CGR设备100显示的内容项448可为内容项库的描述(例如,呈三维模型或一组三维模型的形式),诸如并排布置的可定位在物理环境中的物理书架上或定位在物理环境中的地板、墙壁或其他物理结构上的虚拟书架上的书的虚拟表示。
粗略内容位置信息450包括提供足够的基础以确定CGR设备100位于内容项448的预期位置附近的信息。粗略内容位置信息450还可提供足够的基础以用于确定内容项448的预期位置是否在CGR设备100的当前视场内或附近。例如,粗略内容位置信息可包括地理空间坐标或指示内容项448相对于CGR设备100的相对位置的其他信息。
精细内容位置信息452允许根据CGR设备100的当前位置和取向来输出内容项448以用于显示给用户,使得内容项448相对于物理环境和物理环境中的物理对象以高精确度和精度被放置。作为一个示例,精细内容位置信息452可识别或限定锚点,并且CGR设备100可使用该信息将由精细内容位置信息452识别的锚点匹配到物理环境中的位置。在一些具体实施中,使用单个锚点来相对于物理环境定位内容项448。在其他具体实施中,使用多个锚点来相对于物理环境定位内容项448。
锚点可以是物理环境中可由CGR设备100识别的特征。例如,锚点可为物理对象的边缘、拐角、外缘或轮廓。作为一个示例,物理对象的边缘、拐角、外缘或轮廓可使用机器视觉技术来确定,以分析被包括在CGR设备100中或与CGR设备相关联的相机所捕获的可见光谱图像。作为一个示例,该特征可由允许特征在二维图像中被识别的信息来限定。又如,该特征可由允许特征在三维网格或点云中被识别的信息来限定。例如,可通过分析表示物理对象的表面的三维几何数据(例如,点云)来确定物理对象的边缘、拐角、外缘或轮廓。三维几何数据可使用与CGR设备100相关联的传感器捕获,诸如结构化光传感器、深度相机或LIDAR传感器。
锚点可以是无线定位信号。无线定位信号可使用射频通信技术来实现,并且可使用信号三角测量技术来实现。诸如射频信标和无线联网信号的设备可被用作三角测量的信号源。
精细内容位置信息452可指示特定锚点或可限定内容项448如何连接到在不同位置处的许多不同的一般锚点。特定的锚点定义内容项448和物理世界之间的一对一位置对应关系。例如,特定的锚点可将内容定位到特定博物馆的特定工艺品的表面上。在该示例中,可使用多个特定的锚点来将内容项448相对于表面进行定位。
一般锚点是相对于物理对象引用的位置,可用作定位许多不同类型的内容项的基础。例如,锚点可相对于物理环境进行定义,使得锚点定位在表面上的特定位置,诸如在桌面的中心。在该示例中,精细内容位置信息可限定内容项448的模型(或其他表示)的一部分,在该内容项在被输出以由CGR设备100显示给用户的场景中相对于物理环境定位时,该部分被吸附到锚点。
使用粗略内容位置信息450,主应用程序120可确定内容项448应显示在CGR设备100的当前视场内。例如,主应用程序可确定粗略内容位置信息450对应于CGR设备100的当前视场内的某一位置。使用精细内容位置信息452,主应用程序120尝试相对于物理环境和其中的物理对象放置内容项448。在期望的精确度之内确定内容项448相对于物理环境和其中的物理对象的位置时,主应用程序120可使得内容项448被输出以用于显示给用户,并且可根据包括在内容包446中的计算机可解译程序指令来实现交互性或其他功能。
图5是示出用于内容识别和放置的过程560的流程图。过程560允许主机设备使用主应用程序来访问来自多个内容源的内容。过程560的各部分可被实现为计算机程序指令,诸如主应用程序120,并且这些计算机程序指令可由处理器诸如CGR设备100的处理器114来执行。过程560将参考CGR设备100、主应用程序120和内容源121来描述,但可与其他设备、应用程序和内容源一起使用。过程560可使用手持式设备诸如手持式CGR设备220、头戴式设备诸如头戴式CGR设备或具有不同外形的设备来实现。
作为一个示例,过程560可以系统的形式实现,该系统包括存储器和被配置为执行存储在存储器中的指令的处理器,其中指令对应于过程560。又如,过程560可以非暂态计算机可读存储设备的形式来实现,该存储设备包括可由一个或多个处理器执行的程序指令。程序指令对应于过程560,并且在被执行时使得一个或多个处理器执行过程560的操作。
在操作561中,主应用程序120确定电子设备诸如CGR设备100的设备位置。CGR设备100的位置可使用包括在CGR设备100中的传感器来确定,诸如卫星定位系统传感器、图像传感器和运动传感器。CGR设备100的设备位置可按相对于设备位置信息442所述的方式来确定和表达。
在操作562中,请求440由主应用程序120发送至内容源121。在操作562中发送的请求440可一次性发送到很多内容源,并且这些内容源可以是例如由CGR设备100在本地执行的应用程序,或由不同系统远程执行并且可使用通信信道(诸如有线网络或无线网络)获取的服务。
在操作562中发送请求440时,主应用程序120向内容源121提供信息。由主应用程序120提供给内容源121的信息可包括主机设备的位置(例如,纬度和经度坐标),如相对于设备位置信息442所述。提供给内容源的信息可包括用户偏好,如相对于用户偏好信息444所述。例如,用户偏好可以是过滤器的形式,其可用于包括或排除具有由过滤器所指定的特定特征的内容。用户偏好可包括用户信息,诸如年龄、偏好语言和/或描述用户的其他信息。用户信息可用于获取内容项448,诸如通过基于用户所讲的语言或基于用户的年龄来选择内容。作为一个示例,内容项448可包括具有文本元素的海报。可能存在具有不同语言文本的多个版本的海报,并且用户的偏好语言可用于选择适当版本的海报。又如,用户的年龄可用于选择适合年龄的图像。
操作563包括获取要输出以供CGR设备100的主应用程序120显示的内容项448。内容项448可包括粗略内容位置信息和精细内容位置信息。可通过使用选择过程来识别内容项,通过外部应用程序或服务或以其他方式将内容项(或检索它们的指令)传输至主应用程序120来获取内容项448。例如,操作563可包括基于CGR设备100的设备位置和描述要在CGR场景中显示内容项的位置的粗略内容位置信息来识别要输出以供CGR设备100显示的内容项。
在一个具体实施中,响应于由主应用程序120发送至内容源121的请求440,内容源121中的一者或多者识别要递送至主应用程序120的内容(例如,包括内容项448的内容包446)。基于由主应用程序120提供的信息,诸如设备位置信息442和用户偏好信息444来识别内容。还可基于内容源121已拥有(例如,由其存储或可访问)的信息来识别内容。例如,设备位置信息442可用于构建围绕CGR设备100的位置的区域,诸如地理围栏区域,并且仅返回要在该区域中显示的内容项。
在操作563中,可基于由主应用程序120存储的信息来识别内容项448,并且该信息可与用户(例如,用户偏好信息444)、主机设备和/或主应用程序相关或可描述它们。还可基于由内容源121中的一个存储的信息来识别内容,并且该信息可与用户、内容源或由内容源提供的内容项相关或可描述它们。
在一些具体实施中,识别要输出以供CGR设备100显示的内容项基于用户偏好信息。在一些具体实施中,识别要输出以供CGR设备100显示的内容项包括向内容源121传输请求,该请求包括设备位置和用户偏好信息。识别要输出以供电子设备显示的内容项可包括确定内容项位于相对于设备位置所限定的区域中。识别要输出以供电子设备显示的内容项可包括基于用户偏好信息对内容项进行排名。
操作564包括使用CGR设备100基于内容项448在物理环境中识别锚点。
在该方法的一些具体实施中,锚点是物理环境中的物理特征,并且在物理环境中识别锚点包括使用与CGR设备100相关联的传感器来限定物理环境的三维表示,以及检测物理特征在物理环境的三维表示中的存在。物理环境的三维表示可以是三维点云。物理环境的三维表示可以是三维网格。
在该方法的一些具体实施中,锚点是物理环境中的物理特征,并且在物理环境中识别锚点包括使用与CGR设备100相关联的相机获取物理环境的一个或多个图像,以及检测物理特征在物理环境的一个或多个图像中的存在。
在该方法的一些具体实施中,基于由CGR设备接收的无线信号来识别锚点。无线信号可从信标、从无线联网设备或从任何其他来源接收。无线信号可用于通过三角测量来限定位置。在该方法的一些具体实施中,与内容项相关联的精细内容位置信息识别锚点。
操作565包括使用与内容项相关联的精细内容位置信息来确定内容项相对于物理环境中的锚点的内容位置和内容取向。操作566包括利用内容位置和内容取向使用CGR设备100来显示内容项的表示。例如,使用CGR设备100的已知位置和取向,CGR设备100的显示系统111被用于输出内容项448的图像,使得其看起来相对于物理环境或物理环境中的对象以操作565中确定的方式定位。用户然后可使用CGR设备100来查看内容项448和/或与该内容项进行交互。所显示的内容项的表示是根据虚拟对象330的描述,在正查看的场景中向用户显示的虚拟对象。
过程560可用于识别许多不同类型的内容项并定位这些内容项,使得它们相对于物理世界被准确地显示在期望位置和取向,以限定CGR场景。
作为一个示例,内容可被递送到任何合适表面(如由精细内容位置信息所述)上由粗略内容位置信息识别的地理区域内。当CGR设备100在与由粗略内容位置信息与内容项相关联的位置的阈值距离内时,CGR设备100尝试识别足够大小的表面(例如,平坦表面)以呈现内容项。一旦识别出合适的表面,就输出内容以用于显示,使得其看起来位于该表面上。例如,精细内容位置信息可描述对适合表面的要求,诸如最小尺寸(例如,高度和宽度),对表面是平面的要求,对表面是水平表面的要求,或对表面是垂直表面的要求。
又如,内容项可相对于物理环境的三维扫描进行局域化,使得内容项可相对于物理环境被精确地放置(例如,虚拟树可定位在物理桌子的特定点上)。
又如,可相对于二维图像来建立局域化。二维图像可在由与CGR设备100相关联的相机所获取的图像中被检测到,并且二维内容或三维内容可在相对于所检测的二维图像偏移并限定的三维空间中的某位置处被呈现。另选地,内容可直接覆盖在所检测的二维图像上,而不是使用偏移。另选地,视频可覆盖在所检测的二维图像上。
又如,局域化数据可以是三维对象的三维表示。待呈现的内容相对于所检测到的对象在六个自由度上对准,例如,以允许改变三维对象的物理外观。可在覆盖的三维图像周围显示附加内容,例如,以改变对象周围的物理环境的各部分的外观。
图6是示出手持式CGR设备620、物理对象628和位于物理对象628上的机器可读数据表示629的图示。图7是示出手持式CGR设备620、物理对象628和虚拟对象630的图示,该虚拟对象与物理对象628一起显示在由手持式CGR设备620所显示的CGR场景中。如将详细解释的,手持式CGR设备620获取包括机器可读数据表示629的图像(图6),该图像被解码并用于获取对应于虚拟对象630的内容项,该虚拟对象随后被放置在向手持式CGR设备620的用户622显示的CGR场景中(图7)。
手持式CGR设备620是CGR设备100的具体实施,并且可包括相对于CGR设备100所述的任何或所有部件。在该示例中,手持式CGR设备620是具有允许其被用户622握持的外形的电子设备。作为外形的示例,手持式CGR设备620可以智能电话、平板电脑或智能手表的形式来实现。
在例示的示例中,用户622正握持手持式CGR设备620,使得观察方向624被取向为朝向物理环境626,在所示环境中,物理环境包括物理对象628。物理对象628具有物理特征,诸如表面和边缘。观察方向624对应于包括在手持式CGR设备620中的一个或多个相机613的视场。
机器可读数据表示629包括识别对应于虚拟对象630的内容项并且旨在与机器可读数据表示所在的物理对象628一起显示的数据值。该数据值用于获取内容项,例如通过使用该数据值在向存储内容项的服务器和/或服务所进行的请求中识别内容项。在一些具体实施中,机器可读数据表示的位置和姿态可用于将虚拟对象定位在向用户622显示的CGR场景中。
机器可读数据表示629位于物理对象628的表面上。机器可读数据表示629位于物理对象628上,使得手持式CGR设备620的相机613能够获取包括机器可读数据表示629的图像。所获取的图像足够详细地示出机器可读数据表示629,以允许机器可读数据表示629在图像中被感知并由手持式CGR设备620解译。解译机器可读数据表示629包括识别所获取的图像中的编码图案以及对编码图案进行解码。根据用于根据数据值(通过编码)创建机器可读数据表示629的编码和解码方案来执行解码,这样允许从机器可读数据表示629(通过解码)来检索数据值。
机器可读数据表示629为可在由手持式CGR设备的相机613捕获的图像中感知的可见标记。机器可读数据表示629以易于由计算机解译但不易于被人类解读的形式来对信息编码。例如,机器可读数据表示629可为根据允许数据值(例如,仅包括数字字符的整数、仅包括字母字符的字符串或包括字母数字字符的字符串)以图案形式编码的编码标准所形成的数据值的可见表示。
机器可读数据表示629的编码形式通常排除数据值的人类可读表示(例如,使用字母数字字符、词符或人类可解读的其他书写系统)。在一些具体实施中,数据值的人类可读表示可位于物理对象628上,但数据值的人类可读表示不必由手持式CGR设备620解译以确定数据值,因为数据值可改为通过解译机器可读数据表示629来获取。
机器可读数据表示629可以任何合适的形式编码和呈现,该形式允许手持式CGR设备620感知机器可读数据表示629,并且由手持式CGR设备620解码以便确定数据值。数据值可以是用于识别旨在与作为CGR场景的一部分的物理对象628一起显示的内容项的标识符,或者数据值可包括用于识别旨在与作为CGR场景的一部分的物理对象628一起显示的内容项的标识符。例如,数据值可以是任何合适长度的字母数字标识符,诸如一百二十八位字母数字标识符。可用作生成用于编码数据值的视觉指示器的基础并且可用作机器可读数据表示629的编码方法的示例包括一维条形码和二维条形码。例如,在许多熟知的一维条形码和二维条形码编码标准中,几何区域的一维阵列或二维阵列各自为空或填充有颜色。在此类具体实施中,机器可读数据表示629可为单色的或可根据任何当前或随后建立的编码和解码方案使用各种颜色。
手持式CGR设备620可被配置为确定机器可读数据表示629相对于物理环境626的位置和姿态。机器可读数据表示629的位置和姿态可由手持式CGR设备620使用机器视觉技术来确定。例如,机器可读数据表示629可包括具有已知几何特征(例如,形状、尺寸、对准特征对所间隔的距离等)的对准特征。使用机器视觉技术,对准特征的这些几何特征可用作确定机器可读数据表示629与手持式CGR设备620的距离并且用作确定机器可读数据表示629相对于手持式CGR设备620的角取向的基础。
机器可读数据表示629的位置和姿态包括表示机器可读数据表示629在物理环境626之内的位置的位置值。例如,位置值可以是以三个线性自由度表达的平移值。位置值可表达为表示机器可读数据表示629和固定位置(诸如物理环境626中的特征的位置)之间的距离的相对值、表示机器可读数据表示629和移动位置(例如手持式CGR设备620的位置)之间的距离的相对值,或绝对位置值(例如,地理空间坐标诸如纬度、经度和海拔)。
机器可读数据表示629的位置和姿态包括表示机器可读数据表示629在物理环境626之内的角取向的姿态值。例如,姿态值可以是以三个旋转自由度(例如,俯仰、滚动和偏转)表示的旋转值。姿态值可用合适的参考系表示,诸如以表示机器可读数据表示629相对于固定参考取向的角取向的值的形式,或以表示机器可读数据表示629相对于移动参考取向的角取向(诸如手持式CGR设备620的角取向)的值的形式表示。
手持式CGR设备620向用户显示虚拟对象630,使得虚拟对象630在物理环境626内被定位到特定位置和取向,诸如参照物理对象628的特定位置和取向。虚拟对象630可模糊由手持式CGR设备620所显示的CGR场景中的物理对象628的一部分或全部。
虚拟对象630是在由用户查看的场景中显示的内容项的表示。例如,虚拟对象630可以是三维对象或二维对象(例如,图像或文本)。虚拟对象630可以是静态虚拟对象,诸如虚拟雕像,或者可以是动态虚拟对象,诸如虚拟动画字符。在一些具体实施中,用户可根据包括在内容项中的计算机程序指令与虚拟对象630进行交互并且控制虚拟对象630的行为。
图6至图7所示的场景可使用头戴式CGR设备来实现。头戴式CGR设备获取包括机器可读数据表示的图像,该图像被解码并用于获取对应于虚拟对象的内容项,该虚拟对象随后被放置在向头戴式CGR设备的用户显示的CGR场景中。
头戴式CGR设备(也可称为头戴式显示器)是CGR设备100的具体实施,并且可包括相对于CGR设备100所述的任何或所有部件。在该示例中,头戴式CGR设备是具有允许其佩戴在用户头上的外形的电子设备。头戴式CGR设备可以利用已知的配置,并且可以视频透传CGR设备的形式来实现,或者可以光学透传CGR设备的形式来实现。在头戴式CGR设备具有眼睛跟踪能力的具体实施中,用户通过其头部的位置和角度取向并且任选地基于其眼睛的注视角度来控制头戴式CGR设备的观察方向的取向。
在例示的示例中,头戴式CGR设备被取向成使得观察方向朝向包括物理对象的物理环境,如相对于物理环境626和物理对象628所述。包括在头戴式CGR设备中的一个或多个相机用于获取包括机器可读数据表示的图像。对机器可读数据表示进行解码以确定识别对应于虚拟对象的内容项的数据值并获取内容项,如相对于机器可读数据表示所述。头戴式CGR设备向用户显示虚拟对象,使得虚拟对象在物理环境内被定位到特定位置和取向,诸如参照物理对象的特定位置和取向,如相对于虚拟对象630所解释的。
图8是示出根据第二具体实施的主应用程序120和内容源121之间的关系的示例的框图。主应用程序120通过解码与物理对象相关联的机器可读数据表示来确定数据值,如相对于机器可读数据表示629和机器可读数据表示所解释的。数据值包括内容标识符841。内容标识符841是从机器可读数据表示解码为数据值的一部分的任何信息,其识别可由主应用程序120在CGR场景中显示的内容项。数据值还可包括其他信息,诸如内容源标识符。内容源标识符是从机器可读数据表示解码为数据值的一部分的任何信息,其标识可由主应用程序从其获取内容项的特定内容源。例如,内容源标识符可包括使用标识符代码、名称、完整的统一资源定位符(URL)、部分URL(例如,域名或路径)或其他识别信息来识别本地或远程应用程序或服务的信息。
主应用程序120将请求840发送至内容源821,该内容源是内容源121中的一个并且可以与内容源121的描述一致的方式来实现和配置。作为一个示例,主应用程序120可被配置为针对所有请求使用内容源821。又如,内容源821可由主应用程序基于包括在数据值中的信息(诸如先前所讨论的内容源标识符)来选择。所选择的内容源821可为由主应用程序用于所有内容项的单个内容源。
来自主应用程序120的请求840包括内容标识符841。内容源821使用内容标识符841来识别内容项848。例如,内容标识符841可以是与内容项相关联的唯一标识符值。内容源821可使用常规方法来使用内容标识符841来识别内容项848。作为一个示例,内容标识符可以是文件名、对象名或允许内容项848被内容源821直接访问的其他名称。又如,数据库查找功能可用于使用内容标识符841,使用由内容源821维护或可访问并且包括描述内容标识符和内容项之间关系的信息的数据库中的信息来识别内容项848。又如,内容标识符可以是完整的URL或部分URL(例如,域名或路径)。
内容源821可为本地内容源(例如,呈由CGR设备100执行的应用程序的形式,在这种情况下,请求840可以本地API调用的形式做出)。内容源821可为不位于CGR设备100上的远程内容源(例如,由可使用诸如互联网的通信网络访问的远程服务实现的内容源),在这种情况下,可使用任何合适的通信方法将请求840传输至远程内容源。
当内容源821定位内容项848时,内容项848由内容源821提供给主应用程序120。内容源821可任选地向主应用程序提供附加信息连同内容项848。内容源821可以任何合适的方式向主应用程序提供内容项848,诸如在内容源821为远程的具体实施中通过向主应用程序120传输内容项848,或者在内容源821为本地的具体实施中通过提供指向文件位置的指针。
内容项848可作为内容包846的一部分提供给主应用程序120,该内容包是包括内容项848和其他相关信息(诸如元数据)的一组资产。在例示的示例中,内容包846包括内容项和内容位置信息852。
内容项848包括将被输出以用于显示给用户和/或可用于交互(例如,通过响应于用户动作而执行动作)的静态和交互式内容。内容项848可包括例如影响内容项848的行为以允许交互性的三维模型、图像、视频、音频、可执行代码,用于促进内容项848的呈现和显示的渲染框架,和/或描述包括在内容项448中的其他组成部分的方面的元数据。
内容位置信息852包括允许CGR设备100将内容项848放置在CGR场景中的信息。内容位置信息852允许根据CGR设备100的当前位置和取向来输出内容项848以用于显示给用户,使得内容项848相对于物理环境和物理环境中的物理对象以高精确度和精度被放置。作为一个示例,内容位置信息852可识别或限定锚点,并且CGR设备100可使用该信息将由内容位置信息852识别的锚点匹配到物理环境中的位置。在一些具体实施中,使用单个锚点来相对于物理环境定位内容项848。在其他具体实施中,使用多个锚点来相对于物理环境定位内容项848。
锚点可以是物理环境中可由CGR设备100识别的特征。例如,锚点可为物理对象的边缘、拐角、外缘或轮廓。作为一个示例,物理对象的边缘、拐角、外缘或轮廓可使用机器视觉技术来确定,以分析被包括在CGR设备100中或与CGR设备相关联的相机所捕获的可见光谱图像。作为一个示例,该特征可由允许特征在二维图像中被识别的信息来限定。又如,该特征可由允许特征在三维网格或点云中被识别的信息来限定。例如,可通过分析表示物理对象的表面的三维几何数据(例如,点云)来确定物理对象的边缘、拐角、外缘或轮廓。三维几何数据可使用与CGR设备100相关联的传感器捕获,诸如结构化光传感器、深度相机或LIDAR传感器。
作为一个示例,内容项848可包括三维模型,该三维模型包括对应于物理对象(诸如图6至图7的物理对象628)的形状、尺寸和/或几何配置的特征。在此类具体实施中,CGR设备100可例如使用传感器112和/或相机113来分析物理对象,以识别物理对象的全部或部分的形状、尺寸和/或几何配置。主应用程序可通过匹配三维模型的三维配置与所确定的物理对象的三维配置来确定用于将内容项848放置在CGR场景中的大小、位置和姿态。这允许内容项848在CGR场景中被显示为虚拟对象(例如,根据图6至图7的虚拟对象630的描述),从用户的角度来看,该虚拟对象替换了物理对象。
通过用虚拟对象替换CGR场景中的物理对象(或物理对象的一部分),内容项848可允许用户查看与物理对象相关的虚拟内容和/或与其进行交互,诸如针对物理对象的指令或物理对象的演示。例如,在物理对象是具有物理控件(例如,按钮、杠杆等)的机器的CGR场景中,虚拟对象可突出显示控件并示出如何将它们用作多部分教程的一部分,该多部分教程在用户操纵机器的控件时引导用户完成过程的步骤。
作为一个示例,可使用被配置为确定物理对象的位置和姿态的机器视觉算法来分析由CGR设备的相机113获取的图像。例如,机器视觉算法可使用经过训练以确定物理对象的位置和姿态的经训练机器学习模型。又如,物理对象的形状、尺寸和/或几何配置可通过处理由相机113获取的多个二维图像来确定,以使用摄影测量技术或其他方法生成表示物理对象的三维数据(例如,三维点云或三维模型)。又如,CGR设备100的传感器112可包括三维传感器,诸如深度相机、结构化光传感器、成像雷达设备和/或LIDAR设备,它们能够操作以输出表示物理对象的三维数据(例如,三维点云或三维模型)。
锚点可以是无线定位信号。无线定位信号可使用射频通信技术来实现,并且可使用信号三角测量技术来实现。诸如射频信标和无线联网信号的设备可被用作三角测量的信号源。
内容位置信息852可指示锚点,内容项848可通过锚点连接到物理对象以限定CGR场景。锚点可限定内容项848和物理对象之间的特定位置对应关系。例如,锚点可以将内容定位到机器的表面上,以便向用户提供指令或提供允许与CGR场景进行交互以控制物理对象的操作的虚拟控制界面。
使用内容位置信息852,主应用程序120可确定内容项848应显示在CGR设备100的当前视场内。例如,主应用程序可确定内容位置信息852对应于CGR设备100的当前视场内的某一位置。主应用程序120尝试使用内容位置信息852来相对于物理对象放置内容项848。在期望的精确度之内确定内容项848相对于物理对象的位置时,主应用程序120可使得内容项848被输出以用于显示给用户,并且可根据包括在内容包846中的计算机可解译程序指令来实现交互性或其他功能。
图9是示出根据第三具体实施的扫描应用程序970、内容特定应用程序972和内容源921之间的关系的示例的框图。扫描应用程序970和内容特定应用程序972各自被配置为执行先前相对于主应用程序120所述的一些或所有功能,并且主应用程序的描述适用于它们中的每一者。在例示的示例中,扫描应用程序970被配置为获取机器可读数据表示的图像并对机器可读数据表示解码,并且内容特定应用程序被配置为使用由扫描应用程序970解码的数据值来获取内容并在CGR场景中显示内容。
扫描应用程序970通过解码与物理对象相关联的机器可读数据表示来确定数据值,如相对于机器可读数据表示629所述。数据值包括内容标识符941,该内容标识符根据内容标识符841的描述被实现并且起作用。数据值还可包括标识负责获取由内容标识符841标识的内容并将该内容显示为CGR场景的一部分的特定应用程序的应用程序标识符。
应用程序标识符由扫描应用程序970用于选择用于获取和显示内容的应用程序。在例示的示例中,内容特定应用程序972是已由扫描应用程序970使用从机器可读数据表示解码的应用程序标识符选择的应用程序的示例。例如,应用程序标识符可包括使用标识符代码、名称、完整的统一资源定位符(URL)、部分URL(例如,域名或路径)或其他识别信息来识别本地或远程应用程序或服务的信息。
主应用程序120将请求940发送至内容源921,该内容源是内容源121中的一个并且可以与内容源121的描述一致的方式来实现和配置。在该具体实施中,内容源921可以是本地内容源、可通过网络访问的远程内容源,或者可以是内容特定应用程序972的一部分。
来自主应用程序120的请求940包括内容标识符941。内容源921使用内容标识符941来标识内容项948,如先前相对于内容源821和内容标识符841所述。
内容源以相对于内容源821所述的方式实现和起作用。内容源921可为本地内容源(例如,呈由CGR设备100执行的应用程序的形式,在这种情况下,请求940可以本地API调用的形式做出)。内容源921可为不位于CGR设备100上的远程内容源(例如,由可使用诸如互联网的通信网络访问的远程服务实现的内容源),在这种情况下,可使用任何合适的通信方法将请求940传输至远程内容源。
内容项948可作为内容包946的一部分提供给主应用程序120,该内容包是包括内容项948和其他相关信息(诸如元数据)的一组资产。在例示的示例中,内容包946包括内容项和内容位置信息952。内容包946、内容项948和内容位置信息952以相对于内容包846、内容项848和内容位置信息852所述的方式实现和起作用,并且由内容特定应用程序972用于以先前相对于主应用程序120所述的方式将对应于内容项948的虚拟对象放置在CGR场景中。
图10是示出用于内容识别和放置的过程1080的流程图。过程1080允许主机设备使用主应用程序来访问来自多个内容源的内容。过程1080的各部分可被实现为计算机程序指令,诸如主应用程序120、扫描应用程序970和/或内容特定应用程序972,并且这些计算机程序指令可由处理器诸如CGR设备100的处理器114来执行。过程1080将参考CGR设备100、主应用程序120、扫描应用程序970、内容特定应用程序972、内容源821和内容源921来描述,但可与其他设备、应用程序和内容源一起使用。过程1080可使用手持式设备诸如手持式CGR设备620、头戴式设备或具有不同外形的设备来实现。
作为一个示例,过程1080可以系统的形式实现,该系统包括存储器和被配置为执行存储在存储器中的指令的处理器,其中指令对应于过程1080。又如,过程1080可以非暂态计算机可读存储设备的形式来实现,该存储设备包括可由一个或多个处理器执行的程序指令。程序指令对应于过程1080,并且在被执行时使得一个或多个处理器执行过程1080的操作。
操作1081包括使用电子设备的相机获取机器可读数据表示的图像,其中机器可读数据表示位于物理对象上。过程1080的操作1081和后续操作可使用CGR设备100及其具体实施(诸如手持式CGR设备620和头戴式CGR设备)来执行。例如,机器可读数据表示的图像可通过使用手持式CGR设备620的相机613捕获光栅形式的静态图像或视频帧而获取。
在操作1081中获取的图像中可见的机器可读数据表示可根据机器可读数据表示629的描述来实现。例如,机器可读数据表示可以是一维条形码或二维条形码。
例如,操作1081可使用如相对于图8所述的主应用程序121执行,或与相对于图9所述的扫描应用程序970一起执行。
操作1082包括对机器可读数据表示进行解码以确定包括内容标识符的数据值。解码可使用用于对机器可读数据表示进行编码和解码的已知技术和标准来执行,如相对于编码和解码机器可读数据表示629所述。
操作1083包括基于内容标识符来获取要输出以供电子设备显示的内容项,其中内容位置信息与内容项相关联。
在该方法的一些具体实施中,在操作1083中获取要输出以供电子设备显示的内容项包括向内容源传输请求。例如,数据值包括标识内容源的内容源标识符,使得请求可被发送至内容源,该内容源是使用内容源标识符从多个可能的内容源中选择的。
例如,在操作1083中获取的内容项可包括三维模型、图像、视频、音频、可执行代码、渲染框架、元数据,或这些和/或其他类型的内容项中的两种或更多种。
在操作1083中,如相对于图8的请求840和内容源821所述或如相对于请求940和内容源921所述,将请求发送至内容源。例如,可以将请求发送至远程内容源、本地内容源或内部内容源,如相对于图9的内容特定应用程序972所述。
在操作1083中发送请求时,向内容源提供允许识别内容项的主应用程序信息。该信息可为相对于图8的内容标识符841或图9的内容标识符941所述的类型。
操作1084包括基于内容位置信息来确定内容项相对于物理对象的内容位置和内容取向。操作1084可根据结合图8对主应用程序120作出的描述或根据结合图9对内容特定应用程序972作出的描述来实现。
在过程1080的一些具体实施中,操作1084包括使用电子设备来确定物理对象的几何配置。在此类具体实施中,确定内容项相对于物理对象的内容位置和内容取向还基于物理对象的几何配置。
作为一个示例,物理对象的几何配置可通过分析使用电子设备的相机获取的物理对象的图像来确定。又如,物理对象的几何配置可通过分析三维传感器输出来确定,该三维传感器输出使用电子设备的三维传感器获取并表示物理对象。
在过程1080的一些具体实施中,在操作1083中获取的内容项包括三维模型。在此类具体实施中,在操作1084中确定内容项相对于物理对象的内容位置和内容取向还可基于将三维模型匹配到物理对象的几何配置。这允许内容项的三维模型相对于物理对象被显示在CGR场景中,使得虚拟对象的形状、尺寸和几何配置对应于物理对象的形状、尺寸和几何配置。
作为一个示例,物理对象的几何配置可由物理对象的三维点云表示。又如,物理对象的几何配置由物理对象的三维网格表示。
在过程1080的一些具体实施中,基于操作1084中的内容位置信息来确定内容项相对于物理对象的内容位置和内容取向包括识别二维图像中的特征并确定相对于该特征的内容位置和内容取向。在该方法的一些具体实施中,基于内容位置信息来确定内容项相对于物理对象的内容位置和内容取向包括识别三维网格中的特征并确定相对于该特征的内容位置和内容取向。
过程1080可包括确定机器可读数据表示的数据表示位置和数据表示姿态。这可以先前相对于机器可读数据表示629所述的方式来执行。例如,可使用在操作1081中获取的机器可读数据表示的图像来确定数据表示位置和数据表示姿态。使用数据表示位置和数据表示姿态,可通过使用针对机器可读数据表示的参考位置和姿态匹配内容项(例如,内容项中所包括的三维模型)的位置和姿态来确定内容项相对于物理对象的内容位置和内容取向,该参考位置和姿态描述内容项的一部分相对于机器可读数据表示的位置和取向。
操作1085包括根据在操作1084中确定的内容位置和内容取向使用电子设备来显示内容项的表示。如先前相对于主应用程序120和内容特定应用程序972所述,根据由内容位置和内容取向描述的空间对应关系而相对于物理环境和物理环境中的一个或多个物理对象显示内容项,使得内容项看起来是物理环境的一部分和/或看起来取代了物理环境中存在的物理对象。当显示为CGR场景的一部分时,内容项可采取虚拟对象的形式,该虚拟对象看起来相对于物理环境或物理环境中的对象定位。用户然后可使用CGR设备诸如CGR设备100、手持式CGR设备620或头戴式CGR设备来查看内容项和/或与内容项进行交互。根据虚拟对象630的描述,在正在查看的场景中向用户显示虚拟对象并且可与该虚拟对象进行交互。
物理环境是指人们在没有电子系统帮助的情况下能够感测和/或交互的物理世界。物理环境诸如物理公园包括物理物品,诸如物理树木、物理建筑物和物理人。人们能够诸如通过视觉、触觉、听觉、味觉和嗅觉来直接感测物理环境和/或与物理环境交互。
相反,计算机生成现实(CGR)环境是指人们经由电子系统感知和/或交互的完全或部分模拟的环境。在CGR中,跟踪人的物理运动的一个子集或其表示,并且作为响应,以符合至少一个物理定律的方式调节在CGR环境中模拟的一个或多个虚拟对象的一个或多个特征。例如,CGR系统可以检测人的头部转动,并且作为响应,以与此类视图和声音在物理环境中变化的方式类似的方式调节呈现给人的图形内容和声场。在一些情况下(例如,出于可达性原因),对CGR环境中虚拟对象的特征的调节可以响应于物理运动的表示(例如,声音命令)来进行。
人可以利用其感官中的任一者来感测CGR对象和/或与CGR对象交互,包括视觉、听觉、触觉、味觉和嗅觉。例如,人可以感测音频对象和/或与音频对象交互,该音频对象创建三维或空间音频环境,该三维或空间音频环境提供三维空间中点音频源的感知。又如,音频对象可以使能音频透明度,该音频透明度在有或者没有计算机生成的音频的情况下选择性地引入来自物理环境的环境声音。在某些CGR环境中,人可以感测和/或只与音频对象交互。
CGR的示例包括虚拟现实和混合现实。
虚拟现实(VR)环境是指被设计成对于一个或多个感官完全基于计算机生成的感官输入的模拟环境。VR环境包括人可以感测和/或交互的多个虚拟对象。例如,树木、建筑物和代表人的化身的计算机生成的图像是虚拟对象的示例。人可以通过在计算机生成的环境内人的存在的模拟、和/或通过在计算机生成的环境内人的物理运动的一个子组的模拟来感测和/或与VR环境中的虚拟对象交互。
与被设计成完全基于计算机生成的感官输入的VR环境相比,混合现实(MR)环境是指被设计成除了包括计算机生成的感官输入(例如,虚拟对象)之外还引入来自物理环境的感官输入或其表示的模拟环境。在虚拟连续体上,混合现实环境是完全物理环境作为一端和虚拟现实环境作为另一端之间的任何状况,但不包括这两端。
在一些MR环境中,计算机生成的感官输入可以对来自物理环境的感官输入的变化进行响应。另外,用于呈现MR环境的一些电子系统可以跟踪相对于物理环境的位置和/或取向,以使虚拟对象能够与真实对象(即,来自物理环境的物理物品或其表示)交互。例如,系统可以导致运动使得虚拟树木相对于物理地面看起来是静止的。
混合现实的示例包括增强现实和增强虚拟。
增强现实(AR)环境是指其中一个或多个虚拟对象叠加在物理环境或其表示之上的模拟环境。例如,用于呈现AR环境的电子系统可具有透明或半透明显示器,人可以透过该显示器直接查看物理环境。该系统可以被配置成在透明或半透明显示器上呈现虚拟对象,使得人利用该系统感知叠加在物理环境之上的虚拟对象。另选地,系统可以具有不透明显示器和一个或多个成像传感器,成像传感器捕获物理环境的图像或视频,这些图像或视频是物理环境的表示。系统将图像或视频与虚拟对象组合,并在不透明显示器上呈现组合物。人利用系统经由物理环境的图像或视频而间接地查看物理环境,并且感知叠加在物理环境之上的虚拟对象。如本文所用,在不透明显示器上显示的物理环境的视频被称为“透传视频”,意味着系统使用一个或多个图像传感器捕获物理环境的图像,并且在不透明显示器上呈现AR环境时使用那些图像。进一步另选地,系统可以具有投影系统,该投影系统将虚拟对象投射到物理环境中,例如作为全息图或者在物理表面上,使得人利用该系统感知叠加在物理环境之上的虚拟对象。
增强现实环境也是指其中物理环境的表示被计算机生成的感官信息进行转换的模拟环境。例如,在提供透传视频中,系统可以对一个或多个传感器图像进行转换以施加与成像传感器所捕获的视角不同的选择视角(例如,视点)。又如,物理环境的表示可以通过图形地修改(例如,放大)其部分而进行转换,使得经修改部分可以是原始捕获图像的代表性的但不是真实的版本。再如,物理环境的表示可以通过以图形方式消除其部分或将其部分进行模糊处理而进行转换。
增强虚拟(AV)环境是指虚拟或计算机生成环境结合了来自实体环境的一项或多项感官输入的模拟环境。感官输入可以是物理环境的一个或多个特征的表示。例如,AV公园可以具有虚拟树木和虚拟建筑物,但人的脸部是从对物理人拍摄的图像逼真再现的。又如,虚拟对象可以采用一个或多个成像传感器所成像的物理物品的形状或颜色。再如,虚拟对象可以采用符合太阳在物理环境中的位置的阴影。
有许多不同类型的电子系统使人能够感测和/或与各种CGR环境交互。示例包括头戴式系统、基于投影的系统、平视显示器(HUD)、集成有显示能力的车辆挡风玻璃、集成有显示能力的窗户、被形成为被设计用于放置在人的眼睛上的透镜的显示器(例如,类似于隐形眼镜)、耳机/听筒、扬声器阵列、输入系统(例如,具有或不具有触觉反馈的可穿戴或手持控制器)、智能电话、平板电脑、和台式/膝上型计算机。头戴式系统可以具有一个或多个扬声器和集成的不透明显示器。另选地,头戴式系统可以被配置为接受外部不透明显示器(例如,智能电话)。头戴式系统可以结合用于捕获物理环境的图像或视频的一个或多个成像传感器、和/或用于捕获物理环境的音频的一个或多个麦克风。头戴式系统可以具有透明或半透明显示器,而不是不透明显示器。透明或半透明显示器可以具有媒介,代表图像的光通过该媒介被引导到人的眼睛。显示器可以利用数字光投影、OLED、LED、硅基液晶、激光扫描光源或这些技术的任意组合。媒介可以是光学波导、全息图媒介、光学组合器、光学反射器、或它们的任意组合。在一个实施方案中,透明或半透明显示器可被配置成选择性地变得不透明。基于投影的系统可以采用将图形图像投影到人的视网膜上的视网膜投影技术。投影系统也可以被配置成将虚拟对象投影到物理环境中,例如作为全息图或在物理表面上。
如上所述,本发明技术的一个方面在于采集和使用得自各种来源的数据,以改进向用户递送其可能感兴趣的启发内容或任何其他内容。本公开预期,在一些实例中,这些所采集的数据可包括唯一地识别或可用于联系或定位特定人员的个人信息数据。此类个人信息数据可包括人口统计数据、基于位置的数据、电话号码、电子邮件地址、twitter ID、家庭地址、与用户的健康或健身等级相关的数据或记录(例如,生命信号测量、药物信息、锻炼信息)、出生日期、或任何其他识别信息或个人信息。
本公开认识到在本发明技术中使用此类个人信息数据可用于使用户受益。例如,个人信息数据可用于识别虚拟内容并相对于物理环境放置虚拟内容。因此,此类个人信息数据的使用使得用户能够查看宽范围的内容并与之交互。此外,本公开还预期个人信息数据有益于用户的其他用途。例如,健康和健身数据可用于向用户的总体健康状况提供见解,或者可用作使用技术来追求健康目标的个人的积极反馈。
本公开设想负责采集、分析、公开、传输、存储或其他使用此类个人信息数据的实体将遵守既定的隐私政策和/或隐私实践。具体地,此类实体应当实行并坚持使用被公认为满足或超出对维护个人信息数据的隐私性和安全性的行业或政府要求的隐私政策和实践。用户可以方便地访问此类策略,并应随着数据的采集和/或使用变化而更新。来自用户的个人信息应当被收集用于实体的合法且合理的用途,并且不在这些合法使用之外共享或出售。此外,应在收到用户知情同意后进行此类采集/共享。此外,此类实体应考虑采取任何必要步骤,保卫和保障对此类个人信息数据的访问,并确保有权访问个人信息数据的其他人遵守其隐私政策和流程。另外,这种实体可使其本身经受第三方评估以证明其遵守广泛接受的隐私政策和实践。此外,应当调整政策和实践,以便采集和/或访问的特定类型的个人信息数据,并适用于包括管辖范围的具体考虑的适用法律和标准。例如,在美国,对某些健康数据的收集或获取可能受联邦和/或州法律的管辖,诸如健康保险流通和责任法案(HIPAA);而其他国家的健康数据可能受到其他法规和政策的约束并应相应处理。因此,在每个国家应为不同的个人数据类型保持不同的隐私实践。
不管前述情况如何,本公开还预期用户选择性地阻止使用或访问个人信息数据的实施方案。即本公开预期可提供硬件元件和/或软件元件,以防止或阻止对此类个人信息数据的访问。例如,在识别要向用户显示的内容时,本发明技术可被配置为在注册服务期间或其后的任何时间允许用户选择“选择加入”或“选择退出”参与对个人信息数据的收集。在另一示例中,用户可选择不提供个人数据用于识别内容。又如,用户可选择保持个人数据的时间长度,或完全禁止使用和存储个人数据。除了提供“选择加入”和“选择退出”选项外,本公开设想提供与访问或使用个人信息相关的通知。例如,可在下载应用时向用户通知其个人信息数据将被访问,然后就在个人信息数据被应用访问之前再次提醒用户。
此外,本公开的目的是应管理和处理个人信息数据以最小化无意或未经授权访问或使用的风险。一旦不再需要数据,通过限制数据收集和删除数据可最小化风险。此外,并且当适用时,包括在某些健康相关应用程序中,数据去标识可用于保护用户的隐私。可在适当时通过移除特定标识符(例如,出生日期等)、控制所存储数据的量或特异性(例如,在城市级别而不是在地址级别收集位置数据)、控制数据如何被存储(例如,在用户之间聚合数据)、和/或其他方法来促进去标识。
因此,虽然本公开广泛地覆盖了使用个人信息数据来实现一个或多个各种所公开的实施方案,但本公开还预期各种实施方案也可在无需访问此类个人信息数据的情况下被实现。即,本发明技术的各种实施方案不会由于缺少此类个人信息数据的全部或一部分而无法正常进行。例如,识别要在物理环境中显示的虚拟内容可基于非个人信息数据或绝对最小量的个人信息、可用于设备的其他非个人信息、或可公开获取的信息来执行。

Claims (23)

1.一种方法,包括:
确定电子设备的设备位置;
基于所述设备位置获取要输出以供所述电子设备显示的内容项,其中所述内容项包括粗略内容位置信息和精细内容位置信息;
基于所述内容项在物理环境中确定锚点;
基于所述精细内容位置信息来确定所述内容项相对于所述锚点的内容位置和内容取向;以及
利用所述内容位置和所述内容取向使用所述电子设备来显示所述内容项的表示。
2.根据权利要求1所述的方法,其中获取要输出以供所述电子设备显示的所述内容项还基于用户偏好信息。
3.根据权利要求2所述的方法,其中获取要输出以供所述电子设备显示的所述内容项包括向内容源传输请求,所述请求包括所述设备位置和所述用户偏好信息。
4.根据权利要求1所述的方法,其中获取要输出以供所述电子设备显示的所述内容项包括确定所述粗略内容位置信息对应于相对于所述设备位置限定的区域。
5.根据权利要求1所述的方法,其中获取要输出以供所述电子设备显示的所述内容项包括基于所述用户偏好信息来对所述内容项进行排名。
6.根据权利要求1所述的方法,其中所述锚点对应于所述物理环境中的物理特征,并且在所述物理环境中确定所述锚点包括使用与所述电子设备相关联的传感器来限定所述物理环境的三维表示,以及检测所述物理特征在所述物理环境的所述三维表示中的存在。
7.根据权利要求6所述的方法,其中所述物理环境的所述三维表示为三维点云或三维网格中的至少一者。
8.根据权利要求1所述的方法,其中所述锚点对应于所述物理环境中的物理特征,并且在所述物理环境中确定所述锚点包括使用与所述电子设备相关联的相机来获取所述物理环境的一个或多个图像,以及检测所述物理特征在所述物理环境的所述一个或多个图像中的存在。
9.根据权利要求1所述的方法,其中基于由所述电子设备接收的无线信号来确定所述锚点。
10.根据权利要求1所述的方法,其中所述精细内容位置信息标识所述锚点。
11.根据权利要求1所述的方法,其中所述电子设备为手持式设备或头戴式设备中的至少一者。
12.根据权利要求1所述的方法,其中所述内容项包括三维模型、图像、视频、音频、可执行代码、渲染框架或元数据中的至少一者。
13.根据权利要求1所述的方法,其中所述粗略内容位置信息包括地理空间坐标。
14.根据权利要求1所述的方法,其中所述粗略内容位置信息包括描述所述内容项相对于所述电子设备的位置的信息。
15.根据权利要求1所述的方法,其中所述精细内容位置包括描述所述内容项相对于所述锚点的相对位置和取向的信息。
16.根据权利要求1所述的方法,其中所述精细内容位置信息包括限定所述锚点的信息。
17.根据权利要求16所述的方法,其中限定所述锚点的所述信息标识二维图像中的特征。
18.根据权利要求16所述的方法,其中限定所述锚点的所述信息标识三维网格中的特征。
19.根据权利要求1所述的方法,其中所述精细内容位置信息描述对用于放置所述内容项的合适表面的要求。
20.一种系统,包括:
存储器;和
处理器,所述处理器被配置为执行存储在所述存储器中的指令以:
确定电子设备的设备位置,
基于所述设备来获取要输出以供所述电子设备显示的内容项,其中所述内容项包括粗略内容位置信息和精细内容位置信息,
基于所述内容项在物理环境中确定锚点,
基于所述精细内容位置信息来确定所述内容项相对于所述锚点的内容位置和内容取向,以及
利用所述内容位置和所述内容取向使用所述电子设备来显示所述内容项的表示。
21.一种方法,包括:
使用电子设备的相机获取机器可读数据表示的图像,其中所述机器可读数据表示位于物理对象上;
解码所述机器可读数据表示,以确定包括内容标识符的数据值;
基于所述内容标识符获取获取要输出以供所述电子设备显示的内容项,其中内容位置信息与所述内容项相关联;
基于所述内容位置信息确定所述内容项相对于所述物理对象的内容位置和内容取向;以及
根据所述内容位置和所述内容取向,使用所述电子设备来显示所述内容项的表示。
22.根据权利要求21所述的方法,还包括:
使用所述电子设备来确定所述物理对象的几何配置,其中确定所述内容项相对于所述物理对象的所述内容位置和所述内容取向还基于所述物理对象的所述几何配置。
23.根据权利要求22所述的方法,其中所述内容项包括所述内容项的三维模型,并且确定所述内容项相对于所述物理对象的所述内容位置和所述内容取向还基于将所述三维模型与所述物理对象的所述几何配置进行匹配。
CN202010365171.XA 2019-04-30 2020-04-30 在环境中定位内容 Pending CN111859199A (zh)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201962840510P 2019-04-30 2019-04-30
US62/840,510 2019-04-30
US202062979478P 2020-02-21 2020-02-21
US62/979,478 2020-02-21
US16/861,296 2020-04-29
US16/861,296 US11533580B2 (en) 2019-04-30 2020-04-29 Locating content in an environment

Publications (1)

Publication Number Publication Date
CN111859199A true CN111859199A (zh) 2020-10-30

Family

ID=72985266

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010365171.XA Pending CN111859199A (zh) 2019-04-30 2020-04-30 在环境中定位内容

Country Status (2)

Country Link
US (2) US11825375B2 (zh)
CN (1) CN111859199A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114255333A (zh) * 2022-02-24 2022-03-29 浙江毫微米科技有限公司 基于空间锚点的数字内容展示方法、装置及电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103049729A (zh) * 2012-12-30 2013-04-17 成都理想境界科技有限公司 基于二维码的增强现实方法、系统及终端
CN103530594A (zh) * 2013-11-05 2014-01-22 深圳市幻实科技有限公司 一种提供增强现实的方法、系统及终端
US20150054823A1 (en) * 2013-08-21 2015-02-26 Nantmobile, Llc Chroma key content management systems and methods
CN106372144A (zh) * 2016-08-26 2017-02-01 江西科骏实业有限公司 二维码处理装置和方法
CN106844456A (zh) * 2016-12-12 2017-06-13 烟台魔眼网络科技有限公司 基于二维码的增强现实富媒体内容呈现方式
CN108427498A (zh) * 2017-02-14 2018-08-21 深圳梦境视觉智能科技有限公司 一种基于增强现实的交互方法和装置

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8732272B2 (en) 2009-09-29 2014-05-20 Qualcomm Incorporated Methods and apparatus for obtaining integrated content from multiple networks
US10262462B2 (en) 2014-04-18 2019-04-16 Magic Leap, Inc. Systems and methods for augmented and virtual reality
US9746686B2 (en) 2014-05-19 2017-08-29 Osterhout Group, Inc. Content position calibration in head worn computing
US11103122B2 (en) 2014-07-15 2021-08-31 Mentor Acquisition One, Llc Content presentation in head worn computing
US10203762B2 (en) 2014-03-11 2019-02-12 Magic Leap, Inc. Methods and systems for creating virtual and augmented reality
US20160112479A1 (en) 2014-10-16 2016-04-21 Wipro Limited System and method for distributed augmented reality
US20160133230A1 (en) 2014-11-11 2016-05-12 Bent Image Lab, Llc Real-time shared augmented reality experience
US20170243403A1 (en) 2014-11-11 2017-08-24 Bent Image Lab, Llc Real-time shared augmented reality experience
WO2016077506A1 (en) 2014-11-11 2016-05-19 Bent Image Lab, Llc Accurate positioning of augmented reality content
CN106663411A (zh) 2014-11-16 2017-05-10 易欧耐特感知公司 用于增强现实准备、处理和应用的系统和方法
US10915161B2 (en) 2014-12-11 2021-02-09 Intel Corporation Facilitating dynamic non-visual markers for augmented reality on computing devices
US10360729B2 (en) 2015-04-06 2019-07-23 Scope Technologies Us Inc. Methods and apparatus for augmented reality applications
US9652896B1 (en) 2015-10-30 2017-05-16 Snap Inc. Image based tracking in augmented reality systems
US9984499B1 (en) 2015-11-30 2018-05-29 Snap Inc. Image and point cloud based tracking and in augmented reality systems
WO2017201569A1 (en) 2016-05-23 2017-11-30 tagSpace Pty Ltd Fine-grain placement and viewing of virtual objects in wide-area augmented reality environments
US10108859B1 (en) 2016-06-20 2018-10-23 Pipbin, Inc. System for curation, distribution and display of location-dependent augmented reality content
US20180053352A1 (en) 2016-08-22 2018-02-22 Daqri, Llc Occluding augmented reality content or thermal imagery for simultaneous display
US11432051B2 (en) * 2016-09-27 2022-08-30 Srinivas Krishna Method and system for positioning, viewing and sharing virtual content
US11037200B2 (en) 2016-12-16 2021-06-15 United States Postal Service System and method of providing augmented reality content with a distribution item
US10356551B2 (en) 2016-12-16 2019-07-16 Garpie, Inc. System and method of providing augmented reality content in synchronized dynamic geolocation areas
US20180190033A1 (en) 2016-12-30 2018-07-05 Facebook, Inc. Systems and methods for providing augmented reality effects and three-dimensional mapping associated with interior spaces
CA3085741A1 (en) * 2017-12-13 2019-06-20 Aurelius, Inc. Systems, devices, and methods for augmented reality
JP7133926B2 (ja) 2018-01-15 2022-09-09 キヤノン株式会社 情報処理装置、システム、情報処理方法
US11132841B2 (en) 2018-11-30 2021-09-28 Facebook Technologies, Llc Systems and methods for presenting digital assets within artificial environments via a loosely coupled relocalization service and asset management service

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103049729A (zh) * 2012-12-30 2013-04-17 成都理想境界科技有限公司 基于二维码的增强现实方法、系统及终端
US20150054823A1 (en) * 2013-08-21 2015-02-26 Nantmobile, Llc Chroma key content management systems and methods
CN103530594A (zh) * 2013-11-05 2014-01-22 深圳市幻实科技有限公司 一种提供增强现实的方法、系统及终端
CN106372144A (zh) * 2016-08-26 2017-02-01 江西科骏实业有限公司 二维码处理装置和方法
CN106844456A (zh) * 2016-12-12 2017-06-13 烟台魔眼网络科技有限公司 基于二维码的增强现实富媒体内容呈现方式
CN108427498A (zh) * 2017-02-14 2018-08-21 深圳梦境视觉智能科技有限公司 一种基于增强现实的交互方法和装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114255333A (zh) * 2022-02-24 2022-03-29 浙江毫微米科技有限公司 基于空间锚点的数字内容展示方法、装置及电子设备

Also Published As

Publication number Publication date
US11825375B2 (en) 2023-11-21
US20240089695A1 (en) 2024-03-14
US20230074109A1 (en) 2023-03-09

Similar Documents

Publication Publication Date Title
CN110954083B (zh) 移动设备的定位
CN111052046B (zh) 使用现实界面访问外部设备的功能
US10839605B2 (en) Sharing links in an augmented reality environment
US20190122085A1 (en) Inconspicuous tag for generating augmented reality experiences
US20190333478A1 (en) Adaptive fiducials for image match recognition and tracking
US20130169682A1 (en) Touch and social cues as inputs into a computer
US11308686B1 (en) Captured image data in a computer-generated reality environment
CN115512534B (zh) 远程设备的发现和连接
US20240089695A1 (en) Locating Content In An Environment
CN111856751B (zh) 具有低光操作的头戴式显示器
CN112580375A (zh) 位置感知视觉标记
JP2019509540A (ja) マルチメディア情報を処理する方法及び装置
CN114207557A (zh) 虚拟和物理相机的位置同步
US11533580B2 (en) Locating content in an environment
CN110488489B (zh) 用于头戴式壳体的眼睛登记
US11087559B1 (en) Managing augmented reality content associated with a physical location
KR102284769B1 (ko) 3d 컨텐츠를 제공하는 서버 및 그 동작 방법
US11361473B1 (en) Including a physical object based on context
US20230326154A1 (en) XR Preferred Movement Along Planes
CN117897677A (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