Nothing Special   »   [go: up one dir, main page]

CN116324675A - 使用可穿戴设备识别可控设备的位置 - Google Patents

使用可穿戴设备识别可控设备的位置 Download PDF

Info

Publication number
CN116324675A
CN116324675A CN202080106474.8A CN202080106474A CN116324675A CN 116324675 A CN116324675 A CN 116324675A CN 202080106474 A CN202080106474 A CN 202080106474A CN 116324675 A CN116324675 A CN 116324675A
Authority
CN
China
Prior art keywords
map
controllable device
controllable
location
computing system
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
CN202080106474.8A
Other languages
English (en)
Inventor
吴升知
亚历山大·詹姆斯·法堡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of CN116324675A publication Critical patent/CN116324675A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • G02B27/0172Head mounted characterised by optical features
    • GPHYSICS
    • 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/163Wearable computers, e.g. on a belt
    • 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]
    • 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/04815Interaction 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
    • 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • 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
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/20Scenes; Scene-specific elements in augmented reality scenes
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/0138Head-up displays characterised by optical features comprising image capture systems, e.g. camera
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/014Head-up displays characterised by optical features comprising information/image processing systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Business, Economics & Management (AREA)
  • Computer Hardware Design (AREA)
  • Tourism & Hospitality (AREA)
  • Optics & Photonics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Computer Graphics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)
  • Position Input By Displaying (AREA)
  • Image Analysis (AREA)
  • Position Fixing By Use Of Radio Waves (AREA)

Abstract

根据一方面,一种识别可控设备的位置的方法包括:从可穿戴设备上的图像传感器接收视觉数据;由对象辨识模块基于该视觉数据生成识别数据;以及使用该视觉数据从存储包括第一三维(3D)地图和第二3D地图的多个3D地图的地图数据库中识别第一3D地图,其中第一3D地图与第一可控设备相关联,并且第二3D地图与第二可控设备相关联。该方法包括基于第一3D地图的视觉定位数据获得第一可控设备在物理空间中的位置,以及在显示器上在第一可控设备的位置的阈值距离内的位置中渲染用户界面(UI)对象。

Description

使用可穿戴设备识别可控设备的位置
技术领域
本描述大体上涉及使用可穿戴设备获得可控设备的位置。
背景技术
可穿戴设备可以用于控制一个或多个可控设备,诸如媒体流设备、家庭扬声器、智能灯泡等。在一些示例中,可穿戴设备包括捕捉视觉数据的摄像机和处理图像数据以检测可穿戴设备的摄像机的视场中的设备的图像辨识软件,这可以获得该设备的二维(2D)位置。然而,2D位置可能不足以在可穿戴设备的显示器上接近该设备在3D空间中的位置的位置中渲染用户界面(UI)控件,使得用户可以用交互式UI来控制该设备或者被呈现关于该设备的附加信息。此外,根据一些常规技术,如果用户具有多个看起来相似的设备(例如,两个看起来相同的智能灯泡),则可穿戴设备可能无法区分多个设备以控制用户所预期的设备。
发明内容
根据一方面,一种使用可穿戴设备来识别可控设备的位置的方法包括:从可穿戴设备上的图像传感器接收视觉数据;由对象辨识模块基于该视觉数据生成识别数据;以及使用该识别数据从存储包括第一三维(3D)地图和第二3D地图的多个3D地图的地图数据库中识别该第一3D地图,其中第一3D地图与第一可控设备相关联,并且第二3D地图与第二可控设备相关联。该方法包括基于第一3D地图的视觉定位数据获得第一可控设备在物理空间中的位置,以及在可穿戴设备的显示器上在第一可控设备的位置的阈值距离内的位置中渲染用户界面(UI)对象。在一些示例中,UI对象被渲染在显示器上对应于第一可控设备的位置的位置处。
根据一些方面,该方法可以包括以下特征中的一个或多个(或其任何组合)。该位置包括可控设备的六自由度位置。识别数据可以包括第一可控设备的设备名称或设备类型中的至少一个。识别数据可以包括与第一可控设备相关联的物理空间的空间类型。识别数据与第一3D地图相关联地存储在地图数据库中。该方法可以包括比较视觉数据与第一3D地图。该方法可以包括在与第一可控设备相关联的设置过程期间生成第一3D地图。第一3D地图可以包括对应于虚拟云锚点的特征点地图,并且虚拟云锚点被配置成与一个或多个其他用户共享。UI对象可以包括允许用户控制第一可控设备的一个或多个控件。
根据一方面,一种非暂时性计算机可读介质存储可执行指令,这些可执行指令在由至少一个处理器执行时被配置成使得至少一个处理器:从可穿戴设备上的图像传感器接收视觉数据;由对象辨识模块基于该视觉数据来生成识别数据;使用识别数据来从存储包括第一三维(3D)地图和第二3D地图的多个3D地图的地图数据库中识别第一3D地图,其中第一3D地图与第一可控设备相关联,并且第二3D地图与第二可控设备相关联;基于第一3D地图的视觉定位数据来获得第一可控设备在至少部分由视觉数据表示的物理空间中的位置;以及在可穿戴设备的显示器上在第一可控设备的位置的阈值距离内的位置中渲染用户界面(UI)对象,其中UI对象包括一个或多个交互式控件以控制第一可控设备。在一些示例中,UI对象被渲染在显示器上对应于第一可控设备的位置(例如,六DoF位置)的位置处。
根据一些方面,非暂时性计算机可读介质可以包括一个或多个以上/以下特征(或其任何组合)。地图数据库可以存储在服务器计算机处。可执行指令在由至少一个处理器执行时可以被配置成使得至少一个处理器与服务器计算机通信以访问地图数据库。地图数据库可以存储在可穿戴设备或通信地耦合到可穿戴设备的计算设备处。可执行指令在由至少一个处理器执行时可以被配置成使得至少一个处理器分别与可穿戴设备或计算设备通信,以访问地图数据库。识别数据可以包括与第一可控设备相关联的设备名称、设备类型或空间类型中的至少一个。可执行指令可以包括使得至少一个处理器在与第一可控设备相关联的设置过程期间生成第一3D地图以及在与第二可控设备相关联的设置过程期间生成第二3D地图的指令。第一3D地图可以包括对应于虚拟云锚点的特征点地图,其中虚拟云锚点被配置成与一个或多个其他用户共享。
根据一方面,一种用于识别可控设备的位置的计算系统可以包括:图像传感器,其被配置成接收视觉数据;对象辨识模块,其被配置成基于视觉数据来生成识别数据;位置识别器,其被配置成使用识别数据来从存储包括第一三维(3D)地图和第二3D地图的多个3D地图的地图数据库中识别第一3D地图,第一3D地图与第一可控设备相关联,第二3D地图与第二可控设备相关联;以及位置识别器,其被配置成基于第一3D地图的视觉定位数据来获得第一可控设备在物理空间中的位置;以及用户界面(UI)对象渲染器,其被配置成在可穿戴设备的显示器上在第一可控设备的阈值位置内的位置中渲染UI对象。在一些示例中,UI对象被渲染在显示器上对应于第一可控设备的位置的位置处。
根据一些方面,计算系统可以包括一个或多个以上/以下特征(或其任何组合)。计算系统可以包括可穿戴设备和计算设备,其中计算设备经由无线连接通信地耦合到可穿戴设备。计算系统可以包括可穿戴设备,并且可穿戴设备可以包括智能眼镜。地图数据库可以存储在计算系统的存储器设备中。地图数据库可以存储在与服务器计算机相关联的存储器设备中。计算系统可以包括天线,其被配置成向服务器计算机传输识别数据以便在服务器计算机处识别第一3D地图,其中该天线被配置成从服务器计算机接收视觉定位数据。
在附图和下文描述中陈述一个或多个实现方式的细节。其他特征将从描述和附图以及从权利要求而显而易见。
附图说明
图1A描绘了根据一方面的用于使用由图像传感器捕捉的视觉数据和三维(3D)地图来识别可控设备的位置的计算系统。
图1B描绘了根据一方面的在对应于可控设备的位置的位置处渲染在计算设备的显示器上的用户界面(UI)对象。
图1C示出根据一方面的存储多个3D地图的地图数据库。
图1D示出根据一方面的与地图数据库中的3D地图相链接的识别数据的示例。
图1E示出根据一方面的设备检测器的示例,该设备检测器可以基于识别数据来识别地图数据库中的3D地图。
图1F示出根据一方面的用于在服务器计算机处生成和存储3D地图的系统。
图1G示出根据一方面的用于生成和存储3D地图的计算系统。
图1H示出根据一方面的用于生成和存储3D地图的计算系统。
图2示出根据一方面的具有头戴式显示设备和计算设备的计算系统。
图3示出根据一方面的智能眼镜的示例。
图4A至图4D示出根据一方面的在可穿戴设备的显示器上渲染UI对象的示例。
图5至图8示出具有在对应于可控设备的位置的位置中渲染的UI对象的示例性显示。
图9示出根据一方面的描绘计算系统的示例性操作的流程图。
图10示出根据一方面的本文讨论的计算系统的示例性计算设备。
具体实施方式
本公开涉及一种可穿戴设备,该可穿戴设备捕捉视觉数据并基于视觉数据从地图数据库中识别预存储的三维(3D)地图(例如,3D网格、3D特征地图、虚拟云锚点等),其中该3D地图标记至少部分由视觉数据表示的物理空间中的可控设备的方位。地图数据库可以存储多个3D地图,其中每一3D地图包括关于单独的可控设备的视觉定位数据。地图数据库可以本地存储或远程存储在服务器计算机上。来自3D地图的信息用于检测可控设备的六自由度(DoF)位置。然后,可穿戴设备可以在3D空间中的可控设备的位置的阈值距离内的方位处,在可穿戴设备的显示器上渲染用户界面(UI)对象。在一些示例中,UI对象被渲染在显示器上对应于可控设备的位置(例如,六DoF位置)的位置处。UI对象可以向用户提供一个或多个控件来控制可控设备和/或关于可控设备的附加信息。
例如,在第一可控设备的设置期间,计算设备(例如,可穿戴设备或另一类型的设备,诸如智能电话)可以用于标记第一可控设备的方位。用户可以将计算设备的图像传感器指向第一可控设备,并且四处移动该设备以从不同的视角和位置绘制(map)物理空间,从而计算第一可控设备周围的特征点。
在一些示例中,特征点被传输到服务器计算机以生成第一3D地图,并且第一3D地图被存储在服务器计算机的地图数据库中。在一些示例中,第一3D地图是特征点地图。在一些示例中,第一3D地图是可以用于为另一用户定位所捕捉场景的虚拟锚点。第一3D地图与包括关于第一可控设备的信息的识别数据相关联地存储。在一些示例中,识别数据包括第一可控设备的设备类型和/或设备名称。在一些示例中,识别数据包括识别第一可控设备所处的空间的类型(例如,起居室、卧室、厨房)的空间类型。例如,服务器计算机可以分析特征点以确定哪种类型的物理空间与第一可控设备相关联(例如,第一可控设备的房间中的床可以指示第一可控设备在卧室中),并且与空间类型相关联地存储第一3D地图。在一些示例中,计算设备可以使用特征点或一般任何类型的3D扫描技术来本地生成和存储第一3D地图。
可以在另一可控设备的设置期间应用相同的操作。例如,在第二可控设备的设置期间,生成识别第二可控设备的方位的第二3D地图。第二3D地图与可以识别第二可控设备的识别数据相关联地存储。
在设置过程之后,用户可以进入物理空间,并使用可穿戴设备的图像传感器来捕捉视觉数据。在一些示例中,可穿戴设备包括可以确定视觉数据中包含的对象的类型的对象辨识模块。例如,如果第一可控设备进入可穿戴设备的图像传感器的视场,则对象辨识模块可以分析视觉数据以确定设备的类型。在一些示例中,对象辨识可以分析视觉数据以检测用户所位于的空间的类型,例如,检测到床可以指示用户位于卧室中。对象辨识模块可以生成识别第一可控设备和/或物理空间的识别数据(例如,设备类型、设备名称、空间类型等)。由对象辨识模块生成的识别数据可以用于从地图数据库中识别适当的3D地图。例如,如果第一可控设备是家用扬声器,则地图数据库存储与可控设备的类型(例如,家用扬声器)相关联的第一3D地图。然后,当用户进入具有家用扬声器的房间,并且可穿戴设备的对象辨识模块检测到家用扬声器时,第一3D地图被识别,因为第一3D地图已经用相同的识别数据进行注释。在一些示例中,可穿戴设备将识别数据(由对象辨识器导出)传输到服务器计算机,以便识别地图数据库中存储了哪些3D地图。
然后,为了确定所识别的第一3D地图至少部分地对应于由图像传感器捕捉的视觉数据所表示的物理空间,将视觉数据与第一3D地图进行比较,以确定是否存在匹配(例如,涉及相同的物理空间)。在一些示例中,在服务器计算机处执行比较,并且如果比较结果匹配,则服务器计算机返回第一可控设备的姿态(例如,位置和定向),可穿戴设备使用该姿态来确定可穿戴设备相对于第一可控设备的位置和定向。在一些示例中,该比较在本地执行。在一些示例中,姿态可以称为第一可控设备的六DoF位置。在一些示例中,比较视觉数据与3D地图的操作可以称为解析3D地图。
在一些示例中,代替使用对象辨识模块来检测由视觉数据捕捉的设备的类型(并且然后使用设备的类型来快速识别3D地图),视觉数据可以连续地或周期性地与地图数据库中存储的3D地图进行比较,以便确定哪个3D地图对应于由图像传感器捕捉的视觉数据。当存在匹配时,可穿戴设备可以从匹配的3D地图获得可控设备的六DoF位置。然而,在一些示例中,解析3D地图在计算上是昂贵的,并且如果地图数据库包括相对大量的3D地图,则处理电力和/或时间可能相对较大。另外,系统将不得不重复地(和/或连续地)将传入的视频数据与3D地图进行比较,从而降低了系统的效率。然而,通过利用由对象辨识模块获得的信息,可以通过为相对少量的帧解析较少的3D地图(例如,与被辨识的设备相关联的3D地图)来提高效率(并且可以减少处理电力和/或时间)(相对于连续地将视觉数据库与3D地图进行比较)。
图1A至1H示出了计算系统100,其被配置成基于由计算系统100上的传感器系统112捕捉的视觉数据116和存储在地图数据库105中的3D地图124来检测一个或多个可控设备152的位置134。位置134可以是可控设备152的3D位置,其中3D位置是可控设备152在用户(和/或计算系统100)所处的3D物理空间中的方位(以及任选地,定向)。在一些示例中,位置134包括可控设备152的六DoF位置134a。参考图1B,计算系统100使用位置134在显示器108上在对应于可控设备152在3D空间中的位置和/或在可控设备152在3D空间中的位置的阈值距离内的方位中渲染用户界面(UI)对象140。在一些示例中,计算系统100使用位置134在显示器108上在接近(例如,从用户的视角来看)可控设备152在3D空间中的位置的方位中渲染UI对象140。在一些示例中,UI对象140是在由计算系统100的图像传感器114捕捉的物理空间中渲染的虚拟对象。在一些示例中,UI对象140是突出显示可控设备152在房间中的位置的视觉指示符。在一些示例中,UI对象140提供一个或多个交互式控件来控制可控设备152。在一些示例中,用户可以在接近UI对象140的方位(例如,从用户的视角来看)中移动他/她的手,使得用户可以与UI对象140交互。在一些示例中,UI对象140提供关于可控设备152的附加信息。
计算系统100可以包括一个或多个设备,其中至少一个设备是能够佩戴在人的皮肤上或接近皮肤的显示设备。在一些示例中,计算系统100是可穿戴设备或包括可穿戴设备。可穿戴设备可以包括头戴式显示器(HMD)设备,诸如光学头戴式显示器(OHMD)设备、透明平视显示器(HUD)设备、增强现实(AR)设备,或者其他设备,诸如具有传感器、显示器和计算能力的护目镜或头戴式耳机。在一些示例中,可穿戴设备包括智能眼镜。智能眼镜是光学头戴式显示设备,被设计成一副眼镜的形状。例如,智能眼镜是在佩戴者通过眼镜看到的内容旁边添加信息(例如,投影显示器108)的眼镜。在一些示例中,当用户戴着智能眼镜并且进入智能扬声器位于梳妆台上的卧室时,可穿戴设备可以在对应于智能扬声器和/或在智能扬声器的阈值距离内的位置(例如,显示器的位置)中渲染UI对象140,使得用户可以控制智能扬声器和/或查看关于智能扬声器的附加信息。
在一些示例中,计算系统100包括可穿戴设备(例如,智能眼镜)和计算设备(例如,移动计算设备,诸如智能手机、平板型计算机、膝上型计算机或另一可穿戴设备,诸如智能手表)。可穿戴设备可以经由诸如短程连接(例如,蓝牙连接或近场通信(NFC)连接)或因特网连接(例如,Wi-Fi或移动网络)之类的无线连接而连接到计算设备。在一些示例中,计算系统100的一些组件被包括在可穿戴设备中,并且计算系统100的一些组件被包括在计算设备中。在一些示例中,计算系统100的所有组件都包括在可穿戴设备中。
计算系统100包括一个或多个处理器104,处理器104可以形成在被配置成执行一个或多个机器可执行指令或软件片段、固件或其组合的基底中。处理器104可以是基于半导体的,也就是说,处理器可以包括能够执行数字逻辑的半导体材料。计算系统100还可以包括一个或多个存储器设备106。存储器设备106可以包括以可以由处理器104读取和/或执行的格式存储信息的任何类型的存储设备。存储器设备106可以存储应用和模块(例如,设备检测器126、位置识别器132、UI对象渲染器136、对象辨识模块118、虚拟锚点应用170等),这些应用和模块在被处理器104执行时,执行某些操作。在一些示例中,应用和模块可以存储在外部存储设备中,并加载到存储器设备106中。
计算系统100包括投影到用户视场上的显示器108。显示器108可以包括液晶显示器(LCD)、发光二极管(LED)显示器、有机发光显示器(OLED)、电泳显示器(EPD)或采用LED光源的微投影显示器。在一些示例中,在智能眼镜的情况下,显示器108可以提供透明或半透明的显示,使得佩戴眼镜的用户可以看到由显示器108提供的图像,还可以看到位于投影图像后面的智能眼镜的视场中的信息。在一些示例中,UI对象140被叠加到物理空间的用户的光学视场中。计算系统100可以包括一个或多个天线110,以实现与其他计算设备的通信。尽管未在图1A至图1H中示出,但是计算系统100可以包括触摸板,该触摸板允许用户控制计算系统100(例如,其可以允许滑过显示器108上显示的界面)。
计算系统100包括传感器系统112。传感器系统112包括图像传感器114。在一些示例中,传感器系统112包括多个图像传感器114。在一些示例中,当用户佩戴计算系统100(或计算系统100的一部分)时,图像传感器114捕捉视觉数据116,视觉数据116可以包括图像数据以及深度信息。在一些示例中,图像传感器114是红绿蓝(RGB)摄像机。在一些示例中,图像传感器114包括脉冲激光传感器(例如,LiDAR传感器)或深度摄像机。例如,图像传感器114可以是被配置成检测和传送用于制作图像的信息的摄像机,该图像由视觉数据116表示。图像传感器114可以拍摄图片和记录视频。传感器系统112可以包括惯性运动单元(IMU)154。IMU 115可以检测计算系统100的运动、移动和/或加速度。IMU 115可以包括各种不同类型的传感器,诸如,例如加速度计、陀螺仪、磁力计和其他此类传感器。传感器系统112可以包括其他类型的传感器,诸如光传感器、音频传感器、距离和/或接近传感器、接触传感器(诸如电容传感器)、定时器和/或其他传感器和/或传感器的不同组合。
在一些示例中,计算系统100被配置成通过网络150与服务器计算机160通信。服务器计算机160可以是采用多个不同设备形式的计算设备,例如标准服务器、一组此类服务器或机架式服务器系统。在一些示例中,服务器计算机160是共享诸如处理器和存储器等组件的单个系统。网络150可以包括因特网和/或其他类型的数据网络,诸如局域网(LAN)、广域网(WAN)、蜂窝式网络、卫星网络或其他类型的数据网络。网络150还可以包括被配置成在网络150内接收和/或传输数据的任何数量的计算设备(例如,计算机、服务器、路由器、网络交换机等)。
服务器计算机160包括一个或多个处理器162,处理器162可以形成在被配置成执行一个或多个机器可执行指令或软件片段、固件或其组合的基底中。处理器162可以是基于半导体的,也就是说,处理器可以包括能够执行数字逻辑的半导体材料。服务器计算机160包括一个或多个存储器设备164。存储器设备164可以包括主存储器,该主存储器以能够被处理器162读取和/或执行的格式存储信息。
在一些示例中,服务器计算机160被配置成执行视觉定位数据服务161。视觉定位数据服务161可以是增强现实(AR)协作服务,其允许用户创建云锚点(例如,3D地图124)来创建用户可以共享的多玩家或协作AR体验。例如,用户可以将虚拟对象添加到AR场景中,并且然后多个用户可以从共享物理空间中的不同位置同时查看这些虚拟对象并与之交互。例如,用户可以在其环境中创建本地锚点(例如,3D地图124)。在托管期间,计算系统100可以上传数据以在视觉定位数据服务161处生成3D地图124,视觉定位数据服务161返回该3D地图124的唯一识别符,并且该唯一识别符可以被分发给其他用户以加入相同的AR环境。当同一环境中的另一用户将其设备摄像机指向托管3D地图124(例如,虚拟云锚点)的区域时,解析请求使得视觉定位数据服务161周期性地将来自场景的视觉特征与所创建的3D地图124进行比较,计算系统100使用该比较来精确确定用户相对于3D地图124的位置和定向。
可控设备152可以包括可以由计算系统100控制的多种设备。如图1A所示,可控设备152可以包括第一可控设备152-1和第二可控设备152-2。在一些示例中,可控设备152连接到与计算系统100相同的网络(例如,可控设备152连接到与计算系统100相同的Wi-Fi网络)。尽管在图1A中描绘了两个可控设备152,但是计算系统100可以能够连接到任何数量的可控设备152。可控设备152可以包括灯、开关、插座、恒温器、标记阅读器、火警或其他环境警报器、百叶窗、诸如电视、音响、媒体播放器的娱乐设备以及诸如无线网络接入点、打印机、扫描仪和复印机的计算装备。在一些情况下,建筑物可能具有多个相同类型的可控设备。例如,建筑物可能具有多个家用扬声器或多个视频流设备。此外,建筑物可以具有多个相同或几乎相同的可控设备(例如,灯泡、家用扬声器等)。
用户可能希望使用计算系统100来访问、控制可控设备152或者以其他方式与可控设备152通信。例如,计算系统100可以提供对一个或多个可控设备152(例如,第一可控设备152-1和第二可控设备152-2)的访问、控制和/或通信。为了使计算系统100能够获得可控设备152的准确位置,使得UI对象140可以被渲染在显示器108上以访问、控制可控设备152或者以其他方式与可控设备152通信,计算系统100可以致使3D地图124在地图数据库105中的生成和存储,其中每一3D地图124提供相应可控设备152的视觉定位数据。在一些示例中,地图数据库105存储在服务器计算机160处的存储器设备164中。在一些示例中,地图数据库105存储在计算系统100处的存储器设备106中。在一些示例中,地图数据库105存储在可穿戴设备上。在一些示例中,地图数据库105存储在计算设备上(本地)并且无线连接到可穿戴设备。
如图1C中所示,地图数据库105可以存储多个3D地图124,其中每一3D地图124对应于单独的可控设备152。例如,第一3D地图124-1对应于第一可控设备152-1,并且第二3D地图124-2对应于第二可控设备152-2。在一些示例中,3D地图124是3D网格。在一些示例中,3D地图124是3D特征地图。在一些示例中,3D地图124是虚拟锚点或虚拟云锚点。在一些示例中,3D地图124包括坐标空间,来自物理空间和可控设备152的视觉信息位于该坐标空间中。
如图1C中所示,3D地图124可以与识别数据120相关联地存储。识别数据120可以包括关于对应的可控设备152和/或可控设备152所位于的空间的一个或多个特性。在一些示例中,如图1D所示,识别数据120包括可控设备152的设备名称121。在一些示例中,设备名称121是与可控设备152相关联的名称(例如,nest恒温器、Google home mini等)。在一些示例中,识别数据120包括可控设备152的设备类型123。在一些示例中,设备类型123识别设备的类型,例如,智能扬声器、流媒体设备、智能恒温器等。在一些示例中,识别数据120包括识别与3D地图124相关联的空间的类型的空间类型125。例如,空间类型125可以指定卧室、书房、起居室、厨房等。如图1C所示,第一3D地图124-1与识别第一可控设备152-1的识别数据120-1相关联,并且第二3D地图124-2与识别第二可控设备152-2的识别数据120-2相关联。
在一些示例中,3D地图124和对应的识别数据120(或其一部分)是在特定可控设备152的设置过程期间生成的。在一些示例中,3D地图124和对应的识别数据120(或其一部分)可以在特定可控设备152的设置过程之后的某个点生成。在一些示例中,3D地图124和对应的识别数据120彼此同时(或大约同时)生成。在一些示例中,在生成3D地图124之后,生成识别数据120并将其链接到对应的3D地图124。
在一些示例中,在第一可控设备152-1的设置期间,计算系统100(例如,其可以是可穿戴设备或诸如智能电话的移动设备)用于标记第一可控设备152-2的方位。用户可以将计算系统100上的图像传感器114指向感兴趣的中心(例如,第一可控设备152-2),并且四处移动计算系统100以从不同的视角和位置绘制环境,从而计算第一可控设备152-2周围的特征点。由计算系统100收集的数据用于生成特征点。特征点可以是表示用户的环境的感兴趣的点。在一些示例中,每一特征点近似于物理空间中的固定方位和定向,并且当用户四处移动设备以绘制物理空间时,该视觉特征点集合可以随时间更新。
在一些示例中,特征点然后被传输到服务器计算机160处的视觉定位数据服务161以生成第一3D地图124-1,并且第一3D地图124-1被存储在服务器计算机160处的地图数据库105中。如上所述,第一3D地图124-1与识别第一可控设备152-1的识别数据120-1(例如,设备名称121、设备类型123、空间类型125等)相关联地存储。如果第一可控设备152-1是智能扬声器,则识别数据120-1可以指示第一3D地图124-1与智能扬声器、智能扬声器的名称和/或智能扬声器的类型相关联。在一些示例中,服务器计算机160处的视觉定位数据服务161可以分析特征点以确定哪种类型的物理空间与第一可控设备152-1相关联(例如,第一可控设备152-1的房间中的床可以指示第一可控设备152-1在卧室中),并且与空间类型125相关联地存储第一3D地图124-1。在一些示例中,代替在服务器计算机160处生成第一3D地图124-1,计算系统100可以使用特征点或一般任何类型的3D扫描技术在存储器设备106处的地图数据库105中生成并存储第一3D地图124-1(以及对应的识别120-1)。
可以在另一可控设备152的设置期间应用相同的操作。例如,在第二可控设备152-2的设置期间,生成识别第二可控设备152-2的方位的第二3D地图124-2。第二3D地图124-2与关联于第二可控设备152-2的识别数据120-2(例如,设备名称121、设备类型123、空间类型125等)相关联地存储。如果第二可控设备152-2是智能恒温器,则识别数据120-2可以指示第二3D地图124-2与智能恒温器、智能恒温器的名称和/或智能恒温器的类型相关联。在一些示例中,服务器计算机160处的视觉定位数据服务161可以分析特征点以确定哪种类型的物理空间与第二可控设备152-2相关联(例如,第二可控设备152-2的房间中的沙发可以指示第二可控设备152-2在起居室中),并且与空间类型125相关联地存储第二3D地图124-2。在一些示例中,第一可控设备152-1位于与第二可控设备152-2相同的空间中。在一些示例中,第一可控设备152-1位于与第二可控设备152-2不同的空间中。
在设置过程之后(例如,在计算系统100的正常使用期间),用户可以进入物理空间,并使用图像传感器114来捕捉视觉数据116。计算系统100包括设备检测器126,设备检测器126被配置成使用视觉数据116和地图数据库105来检测可控设备152和可控设备152的位置134。位置134可以包括可控设备152的六DoF位置134a。在一些示例中,六DOF位置134包括描述平移和旋转的信息,诸如上下移动(例如,升降/起伏)、左右移动(例如,扫射/摇摆)、前后移动(例如,行走/涌动)、左右旋转(例如,偏航)、前后倾斜(例如,俯仰)、和/或左右枢转(例如,滚动)。
设备检测器126包括对象辨识模块118。对象辨识模块118可以包括一个或多个图像辨识算法,其可以包括一个或多个神经网络。在一些示例中,当将图像传感器114指向对象时,对象辨识模块118被配置成通过读取条形码、QR码、标签和/或文本来识别对象。对象辨识模块118被配置成识别视觉数据116中的对象,并生成关于检测到的对象的识别数据120。由对象辨识模块118生成的识别数据120被用来选择或识别地图数据库105中的哪些3D地图124来对照视觉数据116进行解析。如上文指示,识别数据120可以包括设备名称121、设备类型123、空间类型125和/或关于可控设备152或包括可控设备152的空间的其他特性。
例如,如果第一可控设备152-1被视觉数据116捕捉,则对象辨识模块118可以生成识别数据120以包括第一可控设备152-1的设备名称121和/或设备类型123。类似地,如果第二可控设备152-2被视觉数据116捕捉,则对象辨识模块118可以生成识别数据120以包括第二可控设备152-2的设备名称121和/或设备类型123。在一些示例中,如果床被视觉数据116捕捉,则对象辨识模块118可以生成识别数据120以包括空间类型125(例如,卧室)。在一些示例中,如果烤箱被视觉数据116捕捉,则对象辨识模块118可以生成识别数据120以包括空间类型125(例如,厨房)。
设备检测器126包括位置识别器132,其使用识别数据120来识别地图数据库105中存储的3D地图124。如图1E所示,如果识别数据120是识别数据120-1,则第一3D地图124-1可以在多个3D地图124当中被识别,因为第一3D地图124-1与识别数据120-1相关联地存储在地图数据库105中。在一些示例中,识别数据120-1可以指示家用扬声器,并且第二识别数据120-2可以指示智能灯泡。如果在位置识别器132处接收的识别数据120指示家用扬声器,则可以识别第一3D地图124-1。
然后,将视觉数据116与识别的3D地图124进行比较,以确定是否存在匹配。例如,为了确定所识别的3D地图124至少部分地对应于由图像传感器114捕捉的视觉数据116所表示的物理空间,将视觉数据116与3D地图124进行比较,以确定是否存在匹配(例如,涉及相同的物理空间)。例如,3D地图124中的视觉特征点可以用于与其他视觉特征点(例如,从视觉数据116中检测到的)进行比较和匹配,以便确定物理空间是否与存储的特征点的物理空间相同,并且计算可控设备152在物理空间内的方位。
如果存在匹配,则位置识别器132获得3D地图124的视觉定位数据141。在一些示例中,视觉定位数据141包括可控设备152的姿态(例如,位置和定向)。位置识别器132使用视觉定位数据141来计算可控设备152-1相对于计算系统100的位置134。在一些示例中,位置识别器132使用视觉定位数据141和来自IMU 115的信息来计算可控设备152-1相对于计算系统100的位置134。
如果地图数据库105存储在服务器计算机160处的存储器设备164中,则设备检测器126可以结合天线110进行操作,以与服务器计算机160处的视觉定位数据服务161进行通信。例如,设备检测器126可以将识别数据120和视觉数据116传输给视觉定位数据服务161。视觉定位数据服务161可以从存储在服务器计算机160处的存储器设备164中的地图数据库105中识别适当的3D地图124,将视觉数据116与所识别的3D地图124进行比较,并且如果比较结果匹配,则视觉定位数据服务161可以将3D地图124的视觉定位数据141返回给设备检测器126。
如果地图数据库105存储在计算系统100处的存储器设备106中,在一些示例中,设备检测器126可以从存储在计算系统100处的存储器设备106中的地图数据库105中识别适当的3D地图124,将视觉数据116与所识别的3D地图124进行比较,并且如果比较结果匹配,则位置识别器132可以从适当的3D地图124中获得视觉定位数据141。
在一些示例中,设备检测器126使用除视觉数据116之外的其他信号来协助检测可控设备152。例如,设备检测器126可以接收一个或多个无线信号130,并使用无线信号130来区分多个相似外观的可控设备152。在一些示例中,无线信号130包括短程无线信号,诸如蓝牙信号和/或NFC信号(或超声波信号)。例如,如果两个相似外观的可控设备152在用户的区域中,则设备检测器126可以从可控设备152接收蓝牙信号,并且蓝牙信号的强度可以提供用户想要控制哪个可控设备152的指示。
计算系统100包括UI对象渲染器136,其使用位置134在显示器108上在接近3D空间中可控设备152的位置134的方位处渲染UI对象140。在一些示例中,UI对象140是位于用户通过智能眼镜看到的物理空间中的虚拟对象。在一些示例中,UI对象140可以位于接近可控设备152在真实世界中的位置134的方位。在一些示例中,UI对象140位于显示器108上、可控设备152在3D空间中的位置134的阈值距离内的方位处。换句话说,UI对象140的位置与可控设备152的位置134之间的距离可以小于阈值水平。在一些示例中,UI对象140被渲染在显示器108上、用户将辨识出由UI对象140提供的信息对应于可控设备152的位置处。在一些示例中,UI对象140被渲染在显示器108上对应于可控设备152的位置134的方位处。在一些示例中,使用可控设备152的位置134作为参考来确定或计算UI对象140的位置。在一些示例中,UI对象140提供一个或多个控件来控制可控设备152。例如,UI对象140可以提供一个或多个控件来启动流媒体播放器上的应用、改变智能扬声器的音量、在智能扬声器上播放歌曲等。在一些示例中,UI对象140提供关于可控设备152的附加信息。例如,UI对象140可以指定关于智能恒温器的历史数据。
图1F至图1H示出了生成和存储3D地图124的各种示例。图1F示出了根据一方面在服务器计算机处生成和存储用于第一可控设备152-1的第一3D地图124。图1G示出了根据一方面在计算系统100处生成和存储用于第一可控设备152-1的第一3D地图124-1。图1H示出了根据另一方面在计算系统100处生成和存储用于第一可控设备152-1的第一3D地图124-1。
参考图1F,在第一可控设备152-1的设置期间,计算系统100可以用于标记第一可控设备152-1的方位。用户可以将传感器系统112的图像传感器114指向第一可控设备152-1,并四处移动计算系统100以从不同的视角和位置绘制环境。在一些示例中,计算系统100包括从传感器系统112接收数据并生成虚拟锚点数据172的虚拟锚点应用170。虚拟锚点数据172可以包括视觉数据174、设备姿态176和锚点姿态178。在一些示例中,视觉数据174是视觉数据116的示例。虚拟锚点应用170被配置成与服务器计算机160处的视觉定位数据服务161通信(经由一个或多个应用编程接口(API))。虚拟锚点应用170被配置成检测和跟踪其相对于物理空间的位置,检测不同类型的表面(例如,水平、垂直、成角度的)的大小和方位,并且估计环境的当前照明条件。虚拟锚点应用170被配置成将虚拟锚点数据172(当计算系统100绘制环境时)传输给视觉定位数据服务161。视觉定位数据服务161包括被配置成基于虚拟锚点数据172来生成第一3D地图124-1的3D地图生成器165。3D地图生成器165被配置成将第一3D地图124-1存储在地图数据库105中。
在一些示例中,虚拟锚点应用170被配置成从视觉数据174中检测视觉特征点集合,并跟踪该视觉特征点集合随时间的移动。该视觉特征点集合是表示用户环境的多个点(例如,兴趣点),并且该视觉特征点集合可以随时间更新。在一些示例中,该视觉特征点集合可以指表示物理世界中的物理对象的锚点或持久视觉特征集合,并且该视觉特征点集合被存储在地图数据库105中,这可以在后续会话中或为另一用户定位环境。
参考图1G,在第一可控设备152-1的设置期间,类似于图1F,计算系统100用于标记第一可控设备152-1的方位。用户可以将传感器系统112的图像传感器114指向第一可控设备152-1,并四处移动计算系统100以从不同的视角和位置绘制环境。虚拟锚点应用170从传感器系统112接收数据并生成虚拟锚点数据172,其包括视觉数据174、设备姿态176和锚点姿态178。在图1G的示例中,计算系统100包括被配置成基于虚拟锚点数据172来生成第一3D地图124-1的3D地图生成器165。3D地图生成器165被配置成将第一3D地图124-1存储在计算系统100处的地图数据库105中。
参考图1H,在第一可控设备152-1的设置期间,类似于图1F和图1G,计算系统100用于标记第一可控设备152-1的方位。在一些示例中,计算系统100包括3D扫描模块111,其被配置成扫描第一可控设备152-1的环境并创建第一3D地图124-1,其被存储在计算系统100处的地图数据库105中。
图2示出根据另一方面的计算系统200。计算系统200可以包括参考图1A至图1H的计算系统100所描述的任何特征。在一些示例中,计算系统200包括头戴式显示设备202。在一些示例中,头戴式显示设备202包括图1A至图1H的计算系统100的所有组件。例如,头戴式显示设备202可以包括图1A至图1H的处理器104、存储器设备106、显示器108、传感器系统112(包括图像传感器114和IMU 115)、天线、设备检测器126(和设备检测器126的子组件)和UI对象渲染器136。在一些示例中,头戴式显示设备202包括地图数据库105。在一些示例中,头戴式显示设备202被配置成生成并存储3D地图124,如参考图1F至图1H所解释(例如,在设置过程期间),其中3D地图124可以本地存储在头戴式显示设备202上或服务器计算机上(例如,图1A至图1H的服务器计算机160)。在一些示例中,图1F和图1G的虚拟锚点应用170被包括在头戴式显示设备202中。在一些示例中,3D扫描模块111被包括在头戴式显示设备202中。
在一些示例中,计算系统200包括头戴式显示设备202和计算设备201。计算设备201可以经由无线连接275连接到头戴式显示设备202。在一些示例中,计算设备201包括移动计算设备,诸如智能电话、平板型计算机、膝上型计算机或其他可穿戴设备。在一些示例中,无线连接275是短程通信链路,诸如近场通信(NFC)连接或蓝牙连接。在一些示例中,无线连接275是网络连接,诸如局域网(LAN)、广域网(WAN)、蜂窝式网络、卫星网络或其他类型的数据网络。在一些示例中,无线连接275可以包括被配置成在网络内接收和/或传输数据的任何数量的计算设备(例如,计算机、服务器、路由器、网络交换机等)。
在一些示例中,图1A至图1H的计算系统100的一些组件被包括在头戴式显示设备202中,并且图1A至图1H的计算系统100的一些组件被包括在计算设备201中。在一些示例中,图1A至图1H的传感器系统112、处理器104、存储器设备106、天线110和显示器108被包括在头戴式显示设备202中。在一些示例中,图1A至图1H的UI对象渲染器136被包括在头戴式显示设备202中。在一些示例中,图1A至图1H的UI对象渲染器136被包括在计算设备201中。在一些示例中,图1A至图1H的地图数据库105存储在计算设备201处。在一些示例中,图1A至图1H的地图数据库105存储在服务器计算机(例如,图1A至图1H的服务器计算机160)处,其中计算设备201和/或头戴式显示设备202被配置成与图1A至图1H的服务器计算机160通信。
在一些示例中,图1A至图1H的设备检测器126被包括在计算设备201中。在一些示例中,由头戴式显示设备202上的传感器系统112捕捉的视觉数据116可以通过无线连接275被传输到计算设备201。设备检测器126可以检测可控设备152的位置134,并通过无线连接275将位置134传输到头戴式显示设备202,以供头戴式显示设备202上的UI对象渲染器136使用。在一些示例中,UI对象渲染器136被包括在计算设备201上,计算设备201通过无线连接275传输指令以在头戴式显示设备202上的显示器108上渲染UI对象140。在一些示例中,图1A至图1H的对象辨识模块118被包括在头戴式显示设备202中,并且位置识别器132被包括在计算设备201中,其中头戴式显示设备202将识别数据120传输到计算设备201上的位置识别器132。
在一些示例中,计算设备201被配置成生成并存储3D地图124,如参考图1F至图1H所解释(例如,在设置过程期间),其中3D地图124可以本地存储在计算设备201上或服务器计算机上(例如,图1A至图1H的服务器计算机160)。在一些示例中,图1F和图1G的虚拟锚点应用170被包括在计算设备201中。在一些示例中,图1F和图1G的虚拟锚点应用170被包括在计算设备201和头戴式显示设备202中。在一些示例中,3D扫描模块111被包括在计算设备201中。
图3示出根据一方面的头戴式显示设备302的示例。头戴式显示设备302可以是图1A至图1H的计算系统100和/或图2的头戴式显示设备202的示例。头戴式显示设备302包括智能眼镜396。智能眼镜396是在佩戴者通过眼镜看到的内容旁边添加信息(例如,投影显示器308)的眼镜。在一些示例中,代替投影信息,显示器308是镜片内微型显示器。在一些示例中,智能眼镜396(例如,眼镜或眼镜)是视觉辅助设备,包括安装在镜架371中的镜片372(例如,玻璃或硬塑料镜片),镜架371通常利用鼻子上的鼻梁架373和搁在耳朵上的腿部374(例如,镜腿或镜腿件)将镜片保持在人的眼睛前方。智能眼镜396包括电子组件370,电子组件370包括智能眼镜396的电路。在一些示例中,电子组件370包括壳体,该壳体封装了图1A至图1H的计算系统100的组件和/或图2的头戴式显示设备202的组件。在一些示例中,电子组件370被包括或集成到智能眼镜396的一个腿部391(或两个腿部391)中。
图4A至图4D示出了描绘位于接近检测到的可控设备452的方位(例如,在所得视觉印象中)的UI对象440的显示408的示例。在一些示例中,可控设备452包括智能扬声器。然而,可控设备452可以包括本文论述的任何类型的可控设备。在一些示例中,显示408中描绘的信息是通过智能眼镜的镜片示出的视觉信息。UI对象440可以被认为是位于物理空间中的虚拟对象,如通过智能眼镜所示。
参考图4A,UI对象440可以被渲染为可控设备452周围的视觉指示符,其描绘了可控设备452在3D空间中的方位。参考图4B,UI对象440可以被渲染在接近(例如,靠近)可控设备452的位置中。在图4B中,UI对象440包括可控设备452周围的视觉指示符和允许用户与可控设备452交互的UI控件。在一些示例中,用户可以与UI控件交互以控制可控设备,诸如播放音乐的控件。参考图4C,UI对象440可以包括允许用户与可控设备452交互的UI控件,以及指示用户的手(或手指)关于显示408中示出的其他视觉信息而定位的区域的视觉指示符。例如,用户可以在UI对象440的区域中移动他/她的手(或手指)来与可控设备452交互。图4C中的视觉指示符可以协助用户协助用户确定用户身体部位关于UI对象440被定位在哪个位置/方向。参考4D,UI对象440可以包括视觉指示符和允许用户控制可控设备452的多个UI控件,该视觉指示符参考显示408中示出的其他视觉信息来指示用户的手(或手指)所处的区域。在一些示例中,UI控件可以包括诸如播放音乐或搜索网页之类的动作。
图5示出了显示508的示例,其描绘了位于接近检测到的可控设备552的方位的UI对象540。在一些示例中,可控设备552包括智能电视或流媒体设备。然而,可控设备552可以包括本文论述的任何类型的可控设备。在一些示例中,显示508中描绘的信息是通过智能眼镜的镜片示出的视觉信息。UI对象540可以被认为是位于物理空间中的虚拟对象,如通过智能眼镜所示出的。参考图5,UI对象540包括UI控件,其允许用户与可控设备552交互,诸如打开诸如流媒体应用的应用。
图6示出了显示608的示例,其描绘了位于接近(例如,靠近)检测到的可控设备652的方位的UI对象640。在一些示例中,可控设备652包括智能扬声器。然而,可控设备652可以包括本文论述的任何类型的可控设备。在一些示例中,显示608中描绘的信息是通过智能眼镜的镜片示出的视觉信息。UI对象640可以被认为是位于物理空间中的虚拟对象,如通过智能眼镜所示出的。参考图6,UI对象640包括UI控件,其允许用户与可控设备652交互,诸如播放音乐的控件。
图7示出了显示708的示例,其描绘了位于接近(例如,靠近)检测到的可控设备752的方位的UI对象740。在一些示例中,可控设备752包括智能恒温器。然而,可控设备752可以包括本文论述的任何类型的可控设备。在一些示例中,显示708中描绘的信息是通过智能眼镜的镜片示出的视觉信息。UI对象740可以被认为是位于物理空间中的虚拟对象,如通过智能眼镜所示出的。参考图7,UI对象740提供关于可控设备752的附加信息,诸如关于可控设备752的历史数据或其他信息。
图8示出了显示808的示例,其描绘了位于接近(例如,靠近)检测到的可控设备852的方位的UI对象840。在一些示例中,可控设备852包括智能扬声器。然而,可控设备852可以包括本文论述的任何类型的可控设备。在一些示例中,显示808中描绘的信息是通过智能眼镜的镜片示出的视觉信息。UI对象840可以被认为是位于物理空间中的虚拟对象,如通过智能眼镜所示出的。参考图8,UI对象840包括用于控制智能扬声器的UI控件和关于智能扬声器上正在播放的内容的信息。
图9示出描绘图1A至图1H的计算系统100的示例性操作的流程图900。尽管参考图1A至图1H的计算系统100描述了流程图900,但是流程图900可以适用于本文的任何实施例。
操作902包括从可穿戴设备(例如,计算系统100)上的图像传感器114接收视觉数据116。操作904包括使用视觉数据116从存储包括第一三维(3D)地图124-1和第二3D地图124-2的多个3D地图124的地图数据库105中识别第一3D地图124-1,其中第一3D地图124-1与第一可控设备152-1相关联,并且第二3D地图124-2与第二可控设备152-2相关联。操作906包括基于第一3D地图124-1获得第一可控设备152-1在空间中相对于可穿戴设备的位置134(例如,六DoF位置134a)。操作908包括在可穿戴设备的显示器108上接近第一可控设备152-1的位置134的位置中渲染用户界面(UI)对象140。
图10示出可以与本文描述的技术一起使用的示例性计算机设备1000和示例性移动计算机设备1050的示例。计算设备1000包括处理器1002、存储器1004、存储设备1006、连接到存储器1004和高速扩展端口1010的高速接口1008、以及连接到低速总线1014和存储设备1006的低速接口1012。组件1002、1004、1006、1008、1010和1012中的每一个使用各种总线来互连,并且可以安装在公共主板上或以其他适当方式安装。处理器1002可以处理用于在计算设备1000内执行的指令,包括存储在存储器1004中或存储设备1006上的指令,以在外部输入/输出设备上显示用于GUI的图形信息,诸如耦合到高速接口1008的显示器1016。在其他实现方式中,可以视情况使用多个处理器和/或多个总线,连同多个存储器和多种类型的存储器。另外,可以连接多个计算设备1000,其中每一设备提供必要的操作的部分(例如,作为服务器阵列、一组刀片服务器或多处理器系统)。
存储器1004将信息存储在计算设备1000内。在一个实现方式中,存储器1004是一个或多个易失性存储器单元。在另一实现方式中,存储器1004是一个或多个非易失性存储器单元。存储器1004还可以是另一形式的计算机可读介质,诸如磁盘或光盘。
存储设备1006能够提供用于计算设备1000的大容量存储。在一个实现方式中,存储设备1006可以是或包含计算机可读介质,诸如软盘设备、硬盘设备、光盘设备、或磁带设备、快闪存储器或其他类似的固态存储器设备、或设备阵列,包括存储区域网络中的设备或其他配置。计算机程序产品可以有形地体现在信息载体中。计算机程序产品还可以包含在被执行时执行诸如上文所描述的一个或多个方法的指令。信息载体是计算机可读介质或机器可读介质,诸如存储器1004、存储设备1006、或处理器1002上的存储器。
高速控制器1008管理用于计算设备1000的带宽密集型操作,而低速控制器1012管理较低带宽密集型操作。此类功能分配仅为例示性的。在一个实现方式中,高速控制器1008耦合到存储器1004、显示器1016(例如,通过图形处理器或加速器),并且耦合到可接受各种扩展卡(未示出)的高速扩展端口1010。在实现方式中,低速控制器1012耦合到存储设备1006和低速扩展端口1014。可以包括各种通信端口(例如,USB、蓝牙、以太网、无线以太网)的低速扩展端口可以例如通过网络适配器而耦合到一个或多个输入/输出设备,诸如键盘、指向设备、扫描仪、或网络连接设备(诸如交换机或路由器)。
计算设备1000可以用许多不同形式来实现,如图中所示。例如,其可以被实现为标准服务器1020,或在一组此类服务器中被实现多次。其还可以被实现为机架服务器系统1024的部分。另外,其可以被实现在诸如膝上型计算机1022的个人计算机中。可替代地,来自计算设备1000的组件可以与移动设备(未示出)中的其他组件(诸如设备1050)组合。此类设备中的每一个可以包含计算设备1000、1050中的一个或多个,且整体系统可以由彼此通信的多个计算设备1000、1050构成。
计算设备1050包括处理器1052、存储器1064、诸如显示器1054的输入/输出设备、通信接口1066和收发器1068、以及其他组件。设备1050还可以具备存储设备(诸如微驱动或其他设备)以提供附加的存储。组件1050、1052、1064、1054、1066和1068中的每一个使用各种总线来互连,且若干组件可以安装在公共主板上或以其他适当方式安装。
处理器1052可以执行计算设备1050内的指令,包括存储在存储器1064中的指令。处理器可以被实现为包括单独和多个模拟和数字处理器的芯片的芯片组。例如,处理器可以提供设备1050的其他组件的协调,诸如用户界面的控制、设备1050运行的应用以及设备1050进行的无线通信。
处理器1052可以通过耦合到显示器1054的控制接口1058和显示接口1056来与用户通信。显示器1054可以是例如TFT LCD(薄膜晶体管液晶显示器)或OLED(有机发光二极管)显示器、或其他适当的显示器技术。显示接口1056可以包含用于驱动显示器1054向用户呈现图形和其他信息的适当电路。控制接口1058可以接收来自用户的命令并将它们转换用于提交给处理器1052。另外,外部接口1062可以与处理器1052通信,以便实现设备1050与其他设备的近区域通信。例如,在一些实现方式中外部接口1062可以提供有线通信,或在其他实现方式中可以提供无线通信,且还可以使用多个接口。
存储器1064将信息存储在计算设备1050内。存储器1064可以被实现为一个或多个计算机可读介质、一个或多个易失性存储器单元或一个或多个非易失性存储器单元中的一个或多个。还可以提供扩展存储器1074且通过扩展接口1072连接到设备1050,扩展接口1072可以包括例如SIMM(单列直插式存储器模块)卡接口。此类扩展存储器1074可以提供用于设备1050的额外存储空间,或者还可以存储用于设备1050的应用或其他信息。具体来说,扩展存储器1074可以包括用以进行或补充上文所描述的过程的指令并且还可以包括安全信息。因此,例如,扩展存储器1074可以被提供为用于设备1050的安全模块,并且可以用允许安全使用设备1050的指令来编程。另外,可以经由SIMM卡来提供安全应用连同附加信息,诸如以不可破解的方式将识别信息放在SIMM卡上。
存储器可以包括例如快闪存储器和/或NVRAM存储器,如下文论述。在一个实现方式中,计算机程序产品有形地体现在信息载体中。计算机程序产品包含在被执行时执行诸如上文所描述的一个或多个方法的指令。信息载体是例如可以通过收发器1068或外部接口1062来接收的计算机可读介质或机器可读介质,诸如存储器1064、扩展存储器1074、或处理器1052上的存储器。
设备1050可以通过通信接口1066以无线方式进行通信,该通信接口在必要时可以包括数字信号处理电路。通信接口1066可以提供在各种模式或协议下的通信,诸如GSM语音呼叫、SMS、EMS、或MMS消息传递、CDMA、TDMA、PDC、WCDMA、CDMA2000、或GPRS等等。此类通信可以例如通过射频收发器1068来发生。另外,短程通信可以诸如使用蓝牙、Wi-Fi或其他此类收发器(未示出)来发生。另外,GPS(全球定位系统)接收器模块1070可以将附加的导航相关和定位相关无线数据提供给设备1050,该数据可以适当地由在设备1050上运行的应用来使用。
设备1050还可以使用音频编解码器1060来可听地通信,音频编解码器1060可以接收来自用户的口头信息并将其转换为可用的数字信息。音频编解码器1060可以同样地诸如通过例如设备1050的手机中的扬声器来为用户生成可听见的声音。此类声音可以包括来自语音电话呼叫的声音,可以包括录音(例如,语音消息、音乐文件等),且还可以包括在设备1050上操作的应用所生成的声音。
计算设备1050可以用许多不同形式来实现,如图中展示。例如,其可以被实现为蜂窝式电话1080。其还可以被实现为智能电话1082、个人数字助理或另一类似的移动设备的部分。
本文描述的系统和技术的各种实现方式可以被实现在数字电子电路、集成电路、专门设计的ASIC(专用集成电路)、计算机硬件、固件、软件和/或其组合中。这些各种实现方式可以包括在可编程系统上可执行和/或可解释的一个或多个计算机程序中的实现方式,该可编程系统包括可以是专用或通用的至少一个可编程处理器,其被耦合以从存储系统、至少一个输入设备和至少一个输出设备接收数据和指令以及传输数据和指令到存储系统、至少一个输入设备和至少一个输出设备。此外,术语“模块”可以包括软件和/或硬件。
这些计算机程序(还被称为程序、软件、软件应用或代码)包括用于可编程处理器的机器指令,且可以用高级程序化和/或面向对象的编程语言和/或汇编/机器语言来实现。如本文所使用,术语“机器可读介质”、“计算机可读介质”是指用以提供机器指令和/或数据到可编程处理器的任何计算机程序产品、装置和/或设备(例如,磁盘、光盘、存储器、可编程逻辑设备(PLD)),包括接收机器指令作为机器可读信号的机器可读介质。术语“机器可读信号”是指用以提供机器指令和/或数据到可编程处理器的任何信号。
为了提供与用户的交互,本文描述的系统和技术可以被实现在计算机上,该计算机具有用于向用户显示信息的显示设备(例如,CRT(阴极射线管)或LCD(液晶显示器)监视器)以及用户可以借以提供输入到计算机的键盘和点击设备(例如,鼠标或轨迹球)。也可以使用其他种类的设备来提供与用户的交互;例如,提供到用户的反馈可以是任何形式的感官反馈(例如,视觉反馈、听觉反馈或触觉反馈);并且来自用户的输入可以任何形式来接收,包括声学、语音或触觉输入。
本文描述的系统和技术可以被实现在计算系统中,该计算系统包括后端组件(例如,作为数据服务器)或包括中间件组件(例如,应用服务器),或者包括前端组件(例如,具有图形用户界面或网络浏览器的客户端计算机,用户可以通过该客户端计算机来与本文描述的系统和技术的实现方式进行交互),或者此类后端组件、中间件组件或前端组件的任何组合。系统的组件可以通过任何形式或介质的数字数据通信(例如,通信网络))来互连。通信网络的示例包括局域网(“LAN”)、广域网(“WAN”)和因特网。
计算系统可以包括客户端和服务器。客户端和服务器通常彼此远离,且通常通过通信网络进行交互。客户端与服务器之间的关系是由于在各自的计算机上运行的计算机程序而生成的,并且彼此具有客户端-服务器关系。
在一些实现方式中,图10中描绘的计算设备可以包括与虚拟现实(VR头戴式耳机1090)对接的传感器。例如,包括在图10中描绘的计算设备1050或其他计算设备上的一个或多个传感器可以提供输入到VR头戴式耳机1090或通常提供输入到VR空间。传感器可以包括但不限于,触摸屏、加速度计、陀螺仪、压力传感器、生物传感器、温度传感器、湿度传感器和环境光传感器。计算设备1050可以使用传感器来确定计算设备在VR空间中的绝对位置和/或检测到的旋转,然后可以将其用作VR空间的输入。例如,计算设备1050可以作为虚拟对象并入到VR空间中,诸如控制器、激光指针、键盘、武器等。当用户将计算设备/虚拟对象并入到VR空间中时,计算设备/虚拟对象的定位可以允许用户定位该计算设备以在VR空间中以某些方式查看虚拟对象。例如,如果虚拟对象表示激光指针,则用户可以操纵计算设备犹如其是实际的激光指针。用户可以左右、上下、在圆形中等等移动计算设备,并以类似的方式使用该设备来使用激光指针。
在一些实现方式中,包括在计算设备1050上或连接到计算设备1050的一个或多个输入设备可以用作VR空间的输入。输入设备可以包括但不限于,触摸屏、键盘、一个或多个按钮、轨迹板、触摸板、点击设备、鼠标、轨迹球、操纵杆、摄像机、麦克风、具有输入功能性的耳机或耳塞、游戏控制器或其他可连接输入设备。当计算设备并入到VR空间中时,与包括在计算设备1050上的输入设备交互的用户可以使得在VR空间中发生特定的动作。
在一些实现方式中,计算设备1050的触摸屏可以被渲染为VR空间中的触摸板。用户可以与计算设备1050的触摸屏交互。例如,在VR头戴式耳机1090中,交互被渲染为在VR空间中渲染的触摸板上的移动。所渲染的移动可以控制VR空间中的对象。
在一些实现方式中,包括在计算设备1050上的一个或多个输出设备可以提供输出和/或反馈到VR空间中的VR头戴式耳机1090的用户。输出和反馈可以是视觉的、战术的或音频。输出和/或反馈可以包括但不限于,振动、打开和关闭或闪光和/或闪烁一个或多个灯或闪光灯、发出警报、播放铃声、播放歌曲和播放音频文件。输出设备可以包括但不限于,振动马达、振动线圈、压电设备、静电设备、发光二极管(LED)、闪光灯和扬声器。
在一些实现方式中,计算设备1050可以在计算机生成的3D环境中作为另一对象出现。用户与计算设备1050的交互(例如,旋转、摇动、触摸触摸屏、在触摸屏上滑动手指)可以被解释为与VR空间中的对象的交互。在VR空间中的激光指针的示例中,计算设备1050作为虚拟激光指针出现在计算机生成的3D环境中。当用户操纵计算设备1050时,VR空间中的用户看见激光指针的移动。用户在计算设备1050上的VR空间中或在VR头戴式耳机1090上接收来自与计算设备1050的交互的反馈。
在一些实现方式中,除了计算设备之外的一个或多个输入设备(例如,鼠标、键盘)可以被渲染在计算机生成的3D环境中。所渲染的输入设备(例如,渲染的鼠标、渲染的键盘)可以用作在VR空间中被渲染以控制VR空间中的对象。
计算设备1000旨在表示各种形式的数字计算机,诸如膝上型计算机、台式计算机、工作站、个人数字助理、服务器、刀片服务器、大型机和其他适当的计算机。计算设备1050旨在表示各种形式的移动设备,诸如个人数字助理、蜂窝式电话、智能电话和其他类似的计算设备。本文所示的组件、其连接和关系、以及其功能意图仅为例示性的,且并不意图限制本文档中描述和/或要求保护的本发明的实现方式。
已描述许多实施例。然而,将理解可以在不偏离说明书的精神和范围的情况下进行各种修改。
另外,图中所描绘的逻辑流不需要所展示的特定次序或顺序次序来实现期望的结果。另外,可以提供其他步骤,或者可以从所描述的流程中消除步骤,且可以将其他组件添加到所描述的系统中或从所描述的系统中移除。因此,其他实施例是在随附权利要求的范围之内。

Claims (21)

1.一种使用可穿戴设备来识别可控设备的位置的方法,所述方法包括:
从可穿戴设备上的图像传感器接收视觉数据;
由对象辨识模块基于所述视觉数据来生成识别数据;
使用所述识别数据从存储包括第一三维(3D)地图和第二3D地图的多个3D地图的地图数据库中识别所述第一3D地图,所述第一3D地图与第一可控设备相关联,并且所述第二3D地图与第二可控设备相关联;
基于所述第一3D地图的视觉定位数据,获得所述第一可控设备在物理空间中的位置;以及
在所述可穿戴设备的显示器上在所述第一可控设备的所述位置的阈值距离内的位置中渲染用户界面(UI)对象。
2.根据权利要求1所述的方法,其中,所述位置包括所述可控设备的六自由度位置。
3.根据权利要求1或2所述的方法,其中,所述识别数据包括所述第一可控设备的设备名称或设备类型中的至少一个。
4.根据权利要求1至3中的任一项所述的方法,其中,所述识别数据包括与所述第一可控设备相关联的所述物理空间的空间类型。
5.根据权利要求1至4中的任一项所述的方法,其中,所述识别数据与所述第一3D地图相关联地存储在所述地图数据库中。
6.根据权利要求1至5中的任一项所述的方法,还包括:
比较所述视觉数据与所述第一3D地图。
7.根据权利要求1至6中的任一项所述的方法,还包括:
在与所述第一可控设备相关联的设置过程期间生成所述第一3D地图。
8.根据权利要求1至7中的任一项所述的方法,其中,所述第一3D地图包括对应于虚拟云锚点的特征点地图,所述虚拟云锚点被配置成与一个或多个其他用户共享。
9.根据权利要求1至8中的任一项所述的方法,其中,所述UI对象包括允许用户控制所述第一可控设备的一个或多个控件。
10.一种存储可执行指令的非暂时性计算机可读介质,所述可执行指令在由至少一个处理器执行时被配置成使得所述至少一个处理器:
从可穿戴设备上的图像传感器接收视觉数据;
由对象辨识模块基于所述视觉数据来生成识别数据;
使用所述识别数据从存储包括第一三维(3D)地图和第二3D地图的多个3D地图的地图数据库中识别所述第一3D地图,所述第一3D地图与第一可控设备相关联,并且所述第二3D地图与第二可控设备相关联;
基于所述第一3D地图的视觉定位数据获得所述第一可控设备在至少部分由所述视觉数据表示的物理空间中的位置;以及
在所述可穿戴设备的显示器上在所述第一可控设备的所述位置的阈值距离内的位置中渲染用户界面(UI)对象,所述UI对象包括一个或多个交互式控件以控制所述第一可控设备。
11.根据权利要求10所述的非暂时性计算机可读介质,其中,所述地图数据库存储在服务器计算机处,其中所述可执行指令在由所述至少一个处理器执行时被配置成使得所述至少一个处理器与所述服务器计算机通信以访问所述地图数据库。
12.根据权利要求10所述的非暂时性计算机可读介质,其中,所述地图数据库存储在所述可穿戴设备或通信地耦合到所述可穿戴设备的计算设备处,其中所述可执行指令在由所述至少一个处理器执行时被配置成使得所述至少一个处理器分别与所述可穿戴设备或所述计算系统通信,以访问所述地图数据库。
13.根据权利要求10至12中的任一项所述的非暂时性计算机可读介质,其中,所述UI对象被配置成提供关于所述第一可控设备的信息。
14.根据权利要求10至13中的任一项所述的非暂时性计算机可读介质,其中,所述识别数据包括与所述第一可控设备相关联的设备名称、设备类型或空间类型中的至少一个。
15.根据权利要求10至14中的任一项所述的非暂时性计算机可读介质,其中,所述可执行指令包括使得所述至少一个处理器进行以下操作的指令:
在与所述第一可控设备相关联的设置过程期间生成所述第一3D地图;以及
在与所述第二可控设备相关联的设置过程期间生成所述第二3D地图。
16.根据权利要求10至15中的任一项所述的非暂时性计算机可读介质,其中,所述第一3D地图包括对应于虚拟云锚点的特征点地图,所述虚拟云锚点被配置成与一个或多个其他用户共享。
17.一种用于识别可控设备的位置的计算系统,所述计算系统包括:
图像传感器,所述图像传感器被配置成接收视觉数据;
对象辨识模块,所述对象辨识模块被配置成基于所述视觉数据来生成识别数据;
位置识别器,所述位置识别器被配置成使用所述识别数据来从存储包括第一三维(3D)地图和第二3D地图的多个3D地图的地图数据库中识别所述第一3D地图,所述第一3D地图与第一可控设备相关联,所述第二3D地图与第二可控设备相关联,所述位置识别器被配置成基于所述第一3D地图的视觉定位数据来获得所述第一可控设备在物理空间中的位置;以及
用户界面(UI)对象渲染器,所述用户界面(UI)对象渲染器被配置成在可穿戴设备的显示器上在所述第一可控设备的所述位置的阈值距离内的位置中渲染UI对象。
18.根据权利要求17所述的计算系统,其中,所述计算系统包括所述可穿戴设备和计算设备,所述计算设备经由无线连接通信地耦合到所述可穿戴设备。
19.根据权利要求17至18中的任一项所述的计算系统,其中,所述地图数据库存储在所述计算系统的存储器设备中。
20.根据权利要求17至18中的任一项所述的计算系统,其中,所述地图数据库存储在与服务器计算机相关联的存储器设备中,所述计算系统还包括:
天线,所述天线被配置成向所述服务器计算机传输所述识别数据以便在所述服务器计算机处识别所述第一3D地图,其中所述天线被配置成从所述服务器计算机接收所述视觉定位数据。
21.根据权利要求17至20中的任一项所述的计算系统,其中,所述计算系统包括所述可穿戴设备,其中所述可穿戴设备包括智能眼镜。
CN202080106474.8A 2020-11-16 2020-11-16 使用可穿戴设备识别可控设备的位置 Pending CN116324675A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2020/070792 WO2022103420A1 (en) 2020-11-16 2020-11-16 Identifying a position of a controllable device using a wearable device

Publications (1)

Publication Number Publication Date
CN116324675A true CN116324675A (zh) 2023-06-23

Family

ID=73835850

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080106474.8A Pending CN116324675A (zh) 2020-11-16 2020-11-16 使用可穿戴设备识别可控设备的位置

Country Status (7)

Country Link
US (1) US20230360264A1 (zh)
EP (1) EP4244703A1 (zh)
JP (1) JP2023549842A (zh)
KR (1) KR20230070308A (zh)
CN (1) CN116324675A (zh)
TW (1) TWI813068B (zh)
WO (1) WO2022103420A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024112185A1 (ko) * 2022-11-27 2024-05-30 삼성전자주식회사 외부 객체에 대응하는 시각적 객체의 표시를 제어하기 위한 웨어러블 장치 및 그 방법

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180157398A1 (en) * 2016-12-05 2018-06-07 Magic Leap, Inc. Virtual user input controls in a mixed reality environment
US20180285052A1 (en) * 2017-03-30 2018-10-04 Microsoft Technology Licensing, Llc Sharing neighboring map data across devices
US20190179509A1 (en) * 2017-12-13 2019-06-13 Aurelius, Inc. Systems, devices, and methods for augmented reality
US20200142388A1 (en) * 2018-05-29 2020-05-07 Apprentice FS, Inc. Assisting execution of manual protocols at production equipment
CN111512119A (zh) * 2018-01-18 2020-08-07 电子湾有限公司 增强现实、计算机视觉和数字售票系统
US20200322178A1 (en) * 2019-04-02 2020-10-08 Google Llc Location determination for device control and configuration

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111699693A (zh) * 2017-11-21 2020-09-22 因默希弗机器人私人有限公司 用于数字现实的图像压缩
TWM584455U (zh) * 2019-05-10 2019-10-01 黃誌聲 穿戴式電子裝置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180157398A1 (en) * 2016-12-05 2018-06-07 Magic Leap, Inc. Virtual user input controls in a mixed reality environment
US20180285052A1 (en) * 2017-03-30 2018-10-04 Microsoft Technology Licensing, Llc Sharing neighboring map data across devices
US20190179509A1 (en) * 2017-12-13 2019-06-13 Aurelius, Inc. Systems, devices, and methods for augmented reality
CN111512119A (zh) * 2018-01-18 2020-08-07 电子湾有限公司 增强现实、计算机视觉和数字售票系统
US20200142388A1 (en) * 2018-05-29 2020-05-07 Apprentice FS, Inc. Assisting execution of manual protocols at production equipment
US20200322178A1 (en) * 2019-04-02 2020-10-08 Google Llc Location determination for device control and configuration

Also Published As

Publication number Publication date
KR20230070308A (ko) 2023-05-22
EP4244703A1 (en) 2023-09-20
JP2023549842A (ja) 2023-11-29
TW202221467A (zh) 2022-06-01
TWI813068B (zh) 2023-08-21
US20230360264A1 (en) 2023-11-09
WO2022103420A1 (en) 2022-05-19

Similar Documents

Publication Publication Date Title
US11127210B2 (en) Touch and social cues as inputs into a computer
US9390561B2 (en) Personal holographic billboard
US10007349B2 (en) Multiple sensor gesture recognition
US10163049B2 (en) Inconspicuous tag for generating augmented reality experiences
CN111344749B (zh) 引向用户关注
US11297224B2 (en) Automated eyewear device sharing system
CN108697935B (zh) 虚拟环境中的化身
US20130174213A1 (en) Implicit sharing and privacy control through physical behaviors using sensor-rich devices
US11558711B2 (en) Precision 6-DoF tracking for wearable devices
US20240249483A1 (en) Robotic learning of assembly tasks using augmented reality
US20240248531A1 (en) Reducing startup time of augmented reality experience
TWI813068B (zh) 計算系統、用於識別可控制裝置之位置之方法及非暫時性電腦可讀媒體
US12014466B2 (en) Triggering a collaborative augmented reality environment using an ultrasound signal
US20220375172A1 (en) Contextual visual and voice search from electronic eyewear device
US20240282058A1 (en) Generating user interfaces displaying augmented reality graphics
US20240221212A1 (en) Device pairing using machine-readable optical label
US20240073402A1 (en) Multi-perspective augmented reality experience
US20240078734A1 (en) Information interaction method and apparatus, electronic device and storage medium
WO2024145124A1 (en) Device pairing using machine-readable optical label

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