CN117999115A - 为多用户通信会话对准扫描环境 - Google Patents

为多用户通信会话对准扫描环境 Download PDF

Info

Publication number
CN117999115A
CN117999115A CN202280062463.3A CN202280062463A CN117999115A CN 117999115 A CN117999115 A CN 117999115A CN 202280062463 A CN202280062463 A CN 202280062463A CN 117999115 A CN117999115 A CN 117999115A
Authority
CN
China
Prior art keywords
representation
physical environment
current physical
environment
user
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
CN202280062463.3A
Other languages
English (en)
Inventor
B·M·萨默尔
A·达维格
L·H·吴
S·P·赫歇尔
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
Application filed by Apple Inc filed Critical Apple Inc
Publication of CN117999115A publication Critical patent/CN117999115A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • A63F13/525Changing parameters of virtual cameras
    • A63F13/5255Changing parameters of virtual cameras according to dedicated instructions from a player, e.g. using a secondary joystick to rotate the camera around a player's character
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • G06T7/33Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
    • G06T7/337Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods involving reference images or patches
    • 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
    • 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/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • A63F13/428Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle involving motion or position input signals, e.g. signals representing the rotation of an input controller or a player's arm motions sensed by accelerometers or gyroscopes
    • 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/55Controlling game characters or game objects based on the game progress
    • A63F13/56Computing the motion of game characters with respect to other game characters, game objects or elements of the game scene, e.g. for simulating the behaviour of a group of virtual soldiers or for path finding
    • 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/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/65Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition
    • A63F13/655Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition by importing photos, e.g. of the player
    • 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
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/20Scenes; Scene-specific elements in augmented reality scenes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/15Conference systems
    • H04N7/157Conference systems defining a virtual conference space and using avatars or agents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/024Multi-user, collaborative environment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2004Aligning objects, relative positioning of parts

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Graphics (AREA)
  • Architecture (AREA)
  • Signal Processing (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

各种具体实施提供了一种用于在通信会话期间确定第一设备相对于三维(3D)表示的定位数据的方法。例如,由第一设备确定3D表示以对应于该第一设备的当前物理环境。然后,确定该3D表示与该当前物理环境之间的空间关系。然后,确定定位数据以对应于该第一设备相对于该3D表示的定位,并且基于该第一设备在该当前物理环境中的位置以及该3D表示与该当前物理环境之间的该空间关系来确定该定位数据。然后,在该第一设备与第二设备之间的通信会话期间提供该定位数据,其中向该第二设备的用户呈现该3D表示的视图,该视图包括该第一设备的用户的表示。

Description

为多用户通信会话对准扫描环境
技术领域
本公开整体涉及使用传感器在通信会话期间提供视图的电子设备,这些视图包括包含参与会话的用户中的一个或多个用户的表示的视图。
背景技术
使用各种技术来表示通信会话的参与者,例如视频会议、交互式游戏会话以及其他交互式社交体验。例如,参与者可以看到参与会话的用户的逼真或不逼真表示(例如,头像)。用户表示可基于空间约束和空间关系来定位并且根据空间约束和空间关系而移动。
发明内容
本文所公开的各种具体实施包括在通信会话期间提供在扩展现实(XR)体验内的用户的至少一部分的表示(例如,头像)的设备、***和方法。XR体验在通信会话期间呈现多个用户的表示,其中每个表示的定位基于空间约束以及环境的先前获取的扫描与当前物理环境之间的空间关系。空间约束(在本文中也被称为空间实况)是指XR体验中内容元素之间的相对定位以及它们随时间的相对移动对于参与多用户通信会话的所有用户而言是相同的要求。空间约束可提供自然且期望的体验,其中一致的空间定位和移动得到期望的特性。例如,XR环境可包括第一用户、第二用户和虚拟电视,其中第一用户正面向并查看虚拟电视。空间约束可确保对于第二用户而言,第一用户看起来正面向虚拟电视,而不是面向另一方向。
本文的某些具体实施基于将第一用户的当前物理环境的三维(3D)表示(例如,3D扫描,诸如先前捕获的点云)与当前物理环境对准并且确定第一用户在当前物理环境内的定位来提供第一用户相对于该3D表示的定位。例如,在多用户通信会话期间,可提供此类定位信息以在提供给第二用户的3D表示的视图内定位第一用户的头像,在该多用户通信会话中,第二用户查看扫描环境,第一用户的头像准确地定位在该扫描环境内。例如,如果第一用户定位在第一用户的当前物理环境中的桌子后面,则第二用户将在其3D表示的视图中看到定位在桌子的表示后面的相同相对定位中的第一用户的头像。基于检测到第一用户位于与3D表示相关联的物理环境内并且将3D表示相对于物理环境对准来实现将第一用户定位在桌子的表示后面的相同相对定位中,例如,使得第一用户在物理环境内的当前定位可用于识别第一用户相对于3D表示的对应定位。
一般来讲,本说明书中描述的主题的一个创新方面可具体体现于方法中,在包括一个或多个处理器的第一设备处,该方法包括以下动作:确定环境的三维(3D)表示对应于第一设备的当前物理环境;确定3D表示与当前物理环境之间的空间关系;基于第一设备在当前物理环境中的位置以及3D表示与当前物理环境之间的空间关系来确定对应于第一设备相对于3D表示的定位的定位数据;以及在第一设备与第二设备之间的通信会话期间提供定位数据,其中在通信会话期间向第二设备的用户呈现3D表示的视图,该视图包括基于定位数据定位的第一设备的用户的表示。
这些实施方案和其他实施方案均可任选地包括以下特征中的一个或多个特征。
在一些方面,确定3D表示与当前物理环境之间的空间关系包括基于视觉匹配来对准特征。在一些方面,3D表示包括特征图,该特征图包括与物理环境相关联的特征,并且视觉匹配基于将与3D表示相关联的特征图和在当前物理环境中识别的特征进行匹配。在一些方面,3D表示包括锚定点,每个锚定点与物理环境内的特定位置相关联,并且视觉匹配基于锚定点。
在一些方面,确定3D表示与当前物理环境之间的空间关系基于视觉即时定位和地图构建(SLAM)。在一些方面,确定3D表示与当前物理环境之间的空间关系基于将3D表示的WiFi签名和在当前物理环境中的第一设备的WiFi签名进行匹配。在一些方面,确定3D表示与当前物理环境之间的空间关系基于3D表示与在当前物理环境中的第一设备的传感器数据之间的最佳拟合分析。在一些方面,确定3D表示与当前物理环境之间的空间关系基于将与由3D表示表示的物理环境中的对象相关联的语义数据和在当前物理环境中的对象相关联的语义数据进行匹配。
在一些方面,第一设备和第二设备在不同的物理环境中。在一些方面,在扩展现实(XR)体验中呈现通信会话的视图。在一些方面,第一设备或第二设备是头戴式设备(HMD)。
在一些方面,基于在通信会话期间获得的传感器数据来生成第一设备的用户的至少一部分的表示。在一些方面,该方法还包括基于在第一设备处的用户输入来更新在第二设备处的视图的至少一部分。
在一些方面,3D表示包括表示物理环境的至少一部分的点云。在一些方面,在第一设备处的3D表示的视图包括对在第二设备处的3D表示的视图的指示。
一般来讲,本说明书中描述的主题的一个创新方面可具体体现于方法中,在包括一个或多个处理器的第一设备处,该方法包括以下动作:获得对环境的三维(3D)表示的选择;确定环境的所选择的3D表示是否对应于第一设备的当前物理环境;以及根据对环境的3D表示对应于当前物理环境的确定,确定3D表示与当前物理环境之间的空间关系;以及呈现当前物理环境的视图,同时放弃环境的3D表示的视图。
这些实施方案和其他实施方案均可任选地包括以下特征中的一个或多个特征。
在一些方面,根据对环境的3D表示不对应于当前物理环境的确定,该方法还包括获得3D表示与当前物理环境之间的空间关系的近似值。
在一些方面,获得3D表示与当前物理环境之间的空间关系的近似值包括确定3D表示与当前物理环境之间的最佳拟合对准。在一些方面,获得3D表示与当前物理环境之间的空间关系的近似值基于用户输入。
在一些方面,该方法还包括根据对环境的3D表示不对应于当前物理环境的确定,基于3D表示之间的空间关系的近似值来呈现3D表示的视图,并且呈现当前物理环境的视图。在一些方面,3D表示的视图呈现为叠置在当前物理环境的视图上。
在一些方面,该方法还包括:基于第一设备在当前物理环境中的位置以及3D表示与当前物理环境之间的空间关系或3D表示与当前物理环境之间的空间关系的近似值来确定对应于第一设备相对于3D表示的定位的定位数据,以及在第一设备与第二设备之间的通信会话期间提供定位数据,其中在通信会话期间向第二设备的用户呈现通信会话的视图,该视图包括基于定位数据定位的第一设备的用户的表示。
在一些方面,基于在通信会话期间获得的传感器数据来生成第一设备的用户的至少一部分的表示。在一些方面,该方法还包括基于在第一设备处的用户输入来更新在第二设备处的通信会话的视图的至少一部分。在一些方面,在第一设备处的3D表示的视图或当前物理环境的视图包括对在第二设备处的3D表示的视图的指示。
在一些方面,确定3D表示与当前物理环境之间的空间关系包括基于视觉匹配来对准特征。在一些方面,3D表示包括特征图,该特征图包括与物理环境相关联的特征,并且视觉匹配基于将与3D表示相关联的特征图和在当前物理环境中识别的特征进行匹配。在一些方面,3D表示包括锚定点,每个锚定点与物理环境内的特定位置相关联,并且视觉匹配基于锚定点。
在一些方面,确定3D表示与当前物理环境之间的空间关系基于视觉即时定位和地图构建(SLAM)。在一些方面,确定3D表示与当前物理环境之间的空间关系基于将3D表示的WiFi签名和在当前物理环境中的第一设备的WiFi签名进行匹配。在一些方面,确定3D表示与当前物理环境之间的空间关系基于3D表示与在当前物理环境中的第一设备的传感器数据之间的最佳拟合分析。在一些方面,确定3D表示与当前物理环境之间的空间关系基于将与由3D表示表示的物理环境中的对象相关联的语义数据和在当前物理环境中的对象相关联的语义数据进行匹配。
在一些方面,第一设备和第二设备在不同的物理环境中。在一些方面,在扩展现实(XR)体验中呈现通信会话的视图。在一些方面,第一设备或第二设备是头戴式设备(HMD)。
在一些方面,基于在通信会话期间获得的传感器数据来生成第一设备的用户的至少一部分的表示。在一些方面,该方法还包括基于在第一设备处的用户输入来更新在第二设备处的视图的至少一部分。
在一些方面,3D表示包括表示物理环境的至少一部分的点云。在一些方面,在第一设备处的3D表示的视图包括对在第二设备处的3D表示的视图的指示。
根据一些具体实施,一种设备包括一个或多个处理器、非暂态存储器以及一个或多个程序;该一个或多个程序被存储在非暂态存储器中并且被配置为由一个或多个处理器执行,并且该一个或多个程序包括用于执行或使得执行本文所述的方法中的任一种方法的指令。根据一些具体实施,一种非暂态计算机可读存储介质中存储有指令,这些指令当由设备的一个或多个处理器执行时使该设备执行或使执行本文所述方法中的任一者。根据一些具体实施,一种设备包括:一个或多个处理器、非暂态存储器以及用于执行或使执行本文所述方法中的任一者的装置。
附图说明
因此,本公开可被本领域的普通技术人员理解,更详细的描述可参考一些例示性具体实施的方面,其中一些具体实施在附图中示出。
图1是根据一些具体实施的在物理环境内使用的设备的示例。
图2示出了基于来自图1的设备的物理环境的传感器数据的示例性特征图。
图3示出了基于来自图1的设备的物理环境的传感器数据的示例性锚定点。
图4是根据一些具体实施的在物理环境内使用的设备的示例以及来自该设备的基于特征图的示例性视图。
图5示出了根据一些具体实施的在通信会话期间在不同的物理环境中操作的示例性电子设备。
图6示出了图5的电子设备在通信会话期间的示例性视图,其中该视图是与该设备的物理环境不同的扩展现实(XR)环境的视图。
图7示出了图5的电子设备在通信会话期间的示例性视图,其中该视图是作为该设备的物理环境的表示的XR环境的视图。
图8示出了图5的电子设备在通信会话期间的示例性视图,其中该视图是作为该设备的物理环境的表示的XR环境的视图。
图9是示出根据一些具体实施的用于在第一设备与第二设备之间的通信会话期间确定对应于第一设备相对于三维(3D)表示的定位的定位数据的方法的流程图。
图10是示出根据一些具体实施的用于确定环境的3D表示是否对应于第一设备的当前物理环境并且在通信会话期间确定对应于第一设备相对于3D表示的定位的定位数据的方法的流程图。
图11是根据一些具体实施的电子设备的框图。
根据通常的做法,附图中示出的各种特征可能未按比例绘制。因此,为了清楚起见,可以任意地扩展或减小各种特征的尺寸。另外,一些附图可能未描绘给定的***、方法或设备的部件中的所有部件。最后,在整个说明书和附图中,类似的附图标号可用于表示类似的特征。
具体实施方式
描述了许多细节以便提供对附图中所示的示例具体实施的透彻理解。然而,附图仅示出了本公开的一些示例方面,因此不应被视为限制。本领域的普通技术人员将理解,其他有效方面和/或变体不包括本文所述的所有具体细节。此外,没有详尽地描述众所周知的***、方法、部件、设备和电路,以免模糊本文所述的示例性具体实施的更多相关方面。
图1示出了根据一些具体实施的在物理环境100中操作的示例性电子设备105。在该示例中,示例性物理环境100包括物理对象,诸如壁挂120、植株125和桌子130。另外,物理环境100包括持有设备105的用户110。在一些具体实施中,设备105被配置为向用户110呈现扩展现实(XR)环境。所呈现的环境可包括扩展现实特征。
在一些具体实施中,设备105是手持式电子设备(例如,智能电话或平板计算机)。在一些具体实施中,设备105是近眼设备,诸如头戴式设备。设备105利用一个或多个显示元件来呈现视图。例如,设备105可包围用户110的视场。在一些具体实施中,设备105的功能由多于一个设备提供。在一些具体实施中,设备105与单独的控制器或服务器通信以管理和协调用户的体验。这样的控制器或服务器可位于物理环境100中或者可相对于该物理环境是远程的。
具体地,图1示出了用户110执行对物理环境100的扫描。例如,用户110正经由电子设备105获取环境100(例如,办公室区域)的传感器数据(例如,图像数据、深度数据等)。所获取的传感器数据可提供对应于设备105此时的环境的三维(3D)表示。3D表示可以是在扫描过程期间生成的3D点云。在一些具体实施中,用于3D表示的传感器数据的后处理可生成可被识别以便于后续对准的特征图和/或锚定点。物理环境100的示例性特征图在图2中示出,并且物理环境100的示例性所识别的锚定点在图3中示出。
图2示出了基于来自图1的设备的物理环境100的传感器数据的示例性特征图200。具体地,在设备105获取物理环境100的传感器数据(例如,用户110在办公室空间内四处走动以扫描其办公室)之后,可基于一种或多种图像分析技术来生成特征图200。例如,基于所获取的图像数据和对象检测算法,可识别物理环境100中的一个或多个对象或属性以用于特征图提取。具体地,如图2所示,可识别多个不同的对象、房间特征/属性等。例如,如果用户110扫描图1中的桌子130周围的区域,则可识别以下对象:对象1 220(例如,壁挂120)、对象2 225(例如,植株125)和桌子230(例如,桌子130)。另外,如果用户110扫描图2中的桌子130周围的区域,则可识别以下特征或房间属性:地板240、壁1 242(例如,桌子130左侧的壁)、壁2 244(例如,桌子130正后方的壁)、壁3 246(例如,桌子130右侧的壁)以及天花板248。在一些具体实施中,检测物理环境100的对象、房间属性等可基于使用机器学习(例如,神经网络、决策树、支持向量机、贝叶斯网络等)的对象检测技术。
图3示出了基于来自图1的设备的物理环境的传感器数据的锚定点表示300中的示例性锚定点。具体地,在设备105获取物理环境100的传感器数据(例如,用户110在办公室空间内四处走动以扫描其办公室)之后,可基于一种或多种图像分析技术来生成锚定点表示300。例如,基于所获取的图像数据和锚定点检测算法,可识别物理环境100中的一个或多个对象或属性以用于锚定点选择。具体地,如图3所示,可识别多个不同的对象、房间特征/属性等以用于锚定点选择。例如,如果用户110扫描图1中的桌子130周围的区域,则可识别以下(但不限于)锚定点:锚定点302(例如,与地板相邻的房间的底角)、锚定点304(例如,壁挂120的底角)、锚定点306(例如,桌子130的底边/角)、锚定点308(例如,桌子130的顶表面角)、锚定点310(例如,与天花板相邻的房间的顶角)以及锚定点312(例如,与地板相邻的植株125的底边)。在一些具体实施中,检测物理环境100的锚定点可基于使用机器学习(例如,神经网络、决策树、支持向量机、贝叶斯网络等)的锚定点检测技术。
图4是根据一些具体实施的在物理环境100内使用的设备105的操作环境400的示例以及来自设备105的基于特征图410的示例性视图405。具体地,操作环境400示出了用户110坐在图1的物理环境100中的桌子130后面(例如,在用户110已经执行了物理环境100的3D表示之后)。在操作环境400中,用户110已经将设备105放置在桌子130的远边处以便开始对准过程(例如,将当前时间在桌子130后面的用户的当前物理环境与来自图1的物理环境100的扫描环境对准)。例如,操作环境400示出了产生要用于与所获得的特征图(例如,图2的特征图200)进行比较的当前物理环境的特征图410的过程。
特征图410从如位置指示标识412所描绘的电子设备105的角度示出了示例性视点414。特征图410包括如由对象422(例如,壁挂120)、对象424(例如,植株125)、对象426(例如,桌子130)指示的位置/定位信息。另外,特征图410识别用户110的位置,如表示420所示。因此,如在3D环境450的视图405中所示,设备105的用户可以从设备105的视角(例如,从位置指示标识412的视角,诸如前向相机或表示设备105的前向相机视图的XR环境)看到3D环境450的视图。例如,视图405示出了3D环境450,包括植株125的表示460、壁挂120的表示465、桌子130的表示470以及用户110的表示480。表示460、465、470可以是实际对象的图像(例如,视频),可以是如通过透明或半透明显示器看到的每个物理对象的视图,可以是表示每个物理对象的虚拟内容,或者表示460、465、470可以是虚拟内容和图像的组合和/或直传视频(例如,XR体验)。相似地,用户110的表示480可以是用户110的实际视频,可以是表示用户110的生成的虚拟内容(例如,头像),或者可以是如通过透明或半透明显示器看到的用户110的视图。
图5示出了在通信会话期间(例如,当电子设备105、155彼此共享信息或与中间设备(诸如通信会话服务器)共享信息时)分别在不同的物理环境100、150中操作的电子设备105、155的示例性操作环境500。在图5的该示例中,物理环境100是包括壁挂120、植株125和桌子130的房间。电子设备105包括一个或多个相机、麦克风、深度传感器或可用于捕获关于物理环境100及其内的对象的信息和关于电子设备105的用户110的信息以及评估该物理环境及其内的对象的其他传感器。关于物理环境100和/或用户110的信息可用于在通信会话期间提供视觉和音频内容。例如,通信会话可向3D环境的一个或多个参与者(例如,用户110、160)提供基于物理环境100的相机图像和/或深度相机图像生成的视图以及基于用户110的相机图像和/或深度相机图像的用户110的表示。
在该示例中,物理环境150是包括壁挂165、沙发170和咖啡桌180上的咖啡杯175的房间。电子设备155包括一个或多个相机、麦克风、深度传感器或可用于捕获关于物理环境150及其内的对象的信息和关于电子设备155的用户160的信息以及评估该物理环境及其内的对象的其他传感器。关于物理环境150和/或用户160的信息可用于在通信会话期间提供视觉和音频内容。例如,通信会话可提供基于物理环境100的相机图像和/或深度相机图像(来自电子设备105)生成的3D环境的视图以及基于用户160的相机图像和/或深度相机图像(来自电子设备155)的用户160的表示。例如,在通过通信会话指令集522的与设备155的通信中,3D环境可由设备105通过通信会话指令集512来发送(例如,经由网络连接502)。然而,应当注意,可以在其他3D环境中提供用户110、160的表示。例如,通信会话可涉及定位于任何完全虚拟环境或包括一些物理环境表示和一些虚拟环境表示的扩展现实(XR)环境内的用户110、160中的任一者或两者的表示。此类视图在接下来描述的图6至图8的示例中示出。
图6示出了在与电子设备105的通信会话期间提供视图605的图5的示例性电子设备155的示例性操作环境600。在该示例中,在通信会话期间,电子设备155提供视图605,该视图使得用户160能够从通信会话查看所获得的3D环境650(例如,XR环境)内用户110的至少一部分的表示620。例如,用户160查看用户110的表示和用户110的物理环境(例如,用户110的办公室)。另外,视图605包括植株125的表示660、壁挂120的表示665以及桌子130的表示670。在一些具体实施中,用户110的表示620可以例如基于包括在通信会话期间获得的用户110的图像和其他传感器数据的传感器数据来提供用户110的实况实时视图。当用户110四处走动、做出手势和做出面部表情时,可以针对视图605中的表示620显示对应的移动、手势和表情。例如,当用户110在物理环境100中向左移动两英尺时,视图605可以在视图605中示出对应于用户110的移动,表示620向左移动两英尺。
3D环境650基于将用户110的当前物理环境100的3D表示(例如,如本文参考图1描述的先前捕捉的点云)和当前物理环境100对准(例如,如图4所示,坐在桌子后面)并且确定用户110在当前物理环境100内的定位来示出用户110相对于该3D表示的定位。例如,确定用户110在当前时刻定位在其办公室中的何处。例如,在多用户通信会话期间,可提供此类定位信息以在提供给第二用户160的3D表示(例如,3D环境650)的视图605内定位用户110的头像620,在该多用户通信会话中,第二用户160查看扫描环境,第一用户110的头像620准确地定位在该扫描环境内。例如,如果第一用户110定位在第一用户的当前物理环境100中的桌子130后面,则第二用户将在3D表示(例如,3D环境650)的视图605中看到定位在桌子130的表示670后面的相同相对定位中的第一用户110的头像(例如,表示620)。这基于检测到第一用户110位于与3D表示相关联的环境内(例如,用户位于物理环境100即用户的办公室空间中)并且将3D表示相对于物理环境对准来实现。因此,第一用户110在环境100内的当前定位可用于识别用户110的表示620相对于3D表示(例如,3D环境650)的对应定位。
在一些具体实施中,3D环境650是基于公共坐标系的可与其他用户共享的XR环境(例如,用于多人通信会话的头像的虚拟房间)。换句话讲,3D环境650的公共坐标系与用户110的物理环境100和用户160的物理环境150的坐标系不同。例如,可使用公共参考点来对准坐标系。在一些具体实施中,公共参考点可以是每个用户可在其相应视图内可视化的3D环境650内的虚拟对象。例如,用户表示(例如,用户的头像)在3D环境650内围绕其定位的公共中心件办公桌。另选地,公共参考点在每个视图(例如,视图605)内不可见。例如,3D环境650的公共坐标系使用公共参考点(例如,表示670)来定位每个相应用户表示(例如,围绕办公桌/桌子)。因此,如果公共参考点是可见的,则当查看其他用户表示时,设备的每个视图(例如,视图605)将能够使3D环境650的“中心”可视化以用于透视。公共参考点的可视化可变得与多用户通信会话更相关,使得每个用户的视图可在通信会话期间向每个其他用户的位置添加透视。
在一些具体实施中,用户110的表示620可以是逼真的或不逼真的和/或可表示用户110的当前和/或先前的外观。例如,可基于用户的实况图像和先前图像的组合来生成用户110的照片般逼真表示。先前图像可用于生成表示620的不可获得其实况图像数据的部分(例如,用户面部的不在电子设备105的相机或传感器的视野中或可被例如头戴式耳机或其他方式遮挡的部分)。在一个示例中,电子设备105是头戴式设备(HMD),并且用户面部的实况图像数据包括用户的脸颊和嘴的面向下的相机图像和用户的眼睛的面向内的相机图像,其可与当前不能从设备105的传感器观察到的用户面部、头部和躯干的用户其他部分的先前图像数据组合。关于用户外观的先前数据可在通信会话期间的较早时间、在电子设备的先前使用期间、在用于从多个观点和/或条件获得用户外观的传感器数据的登记过程期间或以其他方式获得。
一些具体实施提供了在通信会话期间在除用户的物理环境之外的3D环境内用户的至少一部分的表示,并且基于检测到条件,提供用户的物理环境的另一个对象的表示以提供上下文。例如,在通信会话期间,物理环境150的一个或多个其他对象的表示可被显示在视图605中。例如,基于确定用户160正与物理环境150中的物理对象交互,可在视图605中显示表示(例如,逼真或代理)以提供用于用户160的交互的上下文。例如,如果第二用户160拾取诸如家庭相框的对象以向第一用户110示出,则设备155处的视图605可包括相框的真实视图(例如,实况视频)。因此,在显示XR环境时,视图605可呈现表示拾取通用对象的用户的虚拟对象,显示类似于相框的虚拟对象、显示来自所获得的3D表示的实际相框的先前采集的图像,允许通过透明或半透明显示器拾取通用对象的用户的视图等。
图7示出了在使用设备105与用户160的通信会话期间图5的电子设备105的示例性视图705的示例性操作环境700,其中视图705是作为设备155的物理环境100的表示的3D环境750的视图。具体地,操作环境700示出了用于通信会话的预览模式/预览屏幕,使得演示者(用户110)可以在通信会话期间查看其他用户(例如,用户160)正被呈现什么内容或者在允许其他用户查看用户110的3D环境750之前查看该内容。在该示例中,在通信会话期间,电子设备105提供视图705,该视图使得用户110能够从通信会话查看3D环境750(例如,XR环境)内其自身的至少一部分的表示720(例如,用户110在预览模式中看到其自身)。例如,用户110查看其自身的表示和用户110的物理环境100的表示(例如,用户110的办公室)。视图705包括植株125的表示760、挂壁120的表示775以及桌子130的表示770。另外,视图705包括通知气泡790,该通知气泡向用户110提供关于正与或将与设备155处的用户160共享3D环境的什么视图以用于通信会话的指示。例如,通知气泡790在实况通信会话期间向用户110提供指示文本:“你正与设备155共享该视图”。另选地,如果场景是在通信会话开始之前,则通知气泡790可以向用户110提供指示文本,例如,“你将与设备155共享该视图,你希望继续吗?”
图8示出了在使用设备105与用户160的通信会话期间图5的电子设备105的示例性视图805的示例性操作环境800,其中视图805是作为设备155的物理环境100的表示的3D环境850的视图。具体地,操作环境800示出了用于通信会话的预览模式/预览屏幕,使得演示者(用户110)可以在通信会话期间查看其他用户(例如,用户160)正被呈现什么内容或者在允许其他用户查看使用可由用户选择的另选虚拟内容(例如,虚拟内容875——虚拟时钟)的用户110的3D环境850之前查看该内容。在该示例中,在通信会话期间,电子设备105提供视图805,该视图使得用户110能够从通信会话查看3D环境850(例如,XR环境)内其自身的至少一部分的表示820(例如,用户110在预览模式中看到其自身)。例如,用户110查看其自身的表示和用户110的物理环境100的表示(例如,用户110的办公室)。视图805还包括植株125的表示860和桌子130的表示870。
在一些具体实施中,如图8所示,用户110可以将虚拟对象添加到正与在设备155处的用户160共享的XR环境。附加地或另选地,在一些具体实施中,隐私选项可使得用户110能够限制或以其他方式选择要共享的3D表示的部分。例如,如图8所示,用户110移除壁挂120的表示(例如,图7的表示775)(例如,出于隐私原因,或仅因为用户想要使其办公室更吸引人),并且添加虚拟内容875(例如,虚拟时钟)。虚拟内容875可替换与设备155共享的在3D环境850中的对象,或者附加虚拟内容可被添加到其他位置(例如,添加虚拟对象,诸如桌子130的表示870顶部上的虚拟桌子装饰物)。
在一些具体实施中,视觉处理(诸如高亮、添加或移除颜色、显示边界等)可被应用于视图705/805以指示正与或将与另一用户共享的3D环境的部分。该视觉处理可在预览模式、通信会话或两者期间应用。
在一些具体实施中,可使用来自环境100的3D表示的视觉元素来生成视图705/805。例如,环境100的点云表示可在预览模式、通信会话或两者期间显示在视图705/805内。在其他具体实施中,当确定3D表示对应于(例如,表示)用户110所处的环境时,可以不使用来自环境100的3D表示的视觉元素来生成视图705/805。在这些具体实施中,设备105可替代地呈现环境100的直传视频,或者可允许用户通过透明或半透明显示器直接查看环境100。在这样做时,可有利地向用户110呈现比使用3D表示可获得的更高质量的环境100的视图。例如,点云通常是3D对象或环境的稀疏表示,并且包含可见的孔穴或间隙。
在图1至图8的示例中,电子设备105、155被示出为手持式设备。电子设备105、155可以是移动电话、平板计算机、膝上型计算机等等。在一些具体实施中,电子设备105、155可由用户穿戴。例如,电子设备105、155可以是手表、头戴式设备(HMD)、头戴设备(眼镜)、耳机、耳挂式设备等。在一些具体实施中,设备105、155的功能通过两个或更多个设备来实现,例如移动设备和基站或头戴式设备和耳挂式设备。各种功能可以分布在多个设备中,包括但不限于功率功能、CPU功能、GPU功能、存储功能、存储器功能、视觉内容显示功能、音频内容生产功能等。可以用于实现电子设备105、155的功能的多个设备可以通过有线或无线通信彼此通信。
图9是示出用于在第一设备与第二设备之间的通信会话期间确定对应于第一设备相对于3D表示的定位的定位数据的方法900的流程图。在一些具体实施中,设备诸如电子设备105或电子设备155或两者的组合执行方法900。在一些具体实施中,在移动设备、台式计算机、膝上型计算机、HMD、耳挂式设备或服务器设备上执行方法900。方法900由处理逻辑部件(包括硬件、固件、软件或其组合)执行。在一些具体实施中,在执行存储在非暂态计算机可读介质(例如,存储器)中的代码的处理器上执行方法900。
在框910处,方法900确定3D表示是否对应于第一设备的当前物理环境。3D表示(例如,3D扫描)可以是在先前执行的扫描过程期间生成的点云。在一些具体实施中,3D表示包括表示当前物理环境的至少一部分的点云。例如,设备105扫描图1的物理环境100。
在一些具体实施中,当生成3D表示时,可识别特征图和/或锚定点以便于后续对准。例如,设备105扫描图1的物理环境100并且生成图2的特征图200。附加地或另选地,设备105扫描图1的物理环境100并且生成如图3的锚定点表示300中所示的锚定点。例如,在扫描过程期间,设备105当前可执行视觉即时定位与地图构建(SLAM)过程,同时生成物理环境的3D点云表示。3D点云可具有相对于在扫描过程期间生成的SLAM地图的定位和/或旋转偏移。在这些示例中,框910可包括对当前物理环境执行SLAM过程,并且将在扫描过程期间生成的SLAM地图和当前物理环境的SLAM地图进行比较。当这两个SLAM地图在彼此的阈值相似度内时,可确定3D表示对应于当前物理环境。当这两个SLAM地图不在彼此的阈值相似度内时,可确定3D表示不对应于当前物理环境
在其他具体实施中,3D表示可与其他类型的位置数据(诸如GPS、WiFi、信标、蜂窝信号等)相关联。在这些示例中,框910可包括将与3D表示相关联的位置数据和在当前物理环境处获得的对应位置数据进行比较。
在框920处,方法900包括确定3D表示与当前物理环境之间的空间关系。例如,确定空间关系可涉及基于视觉匹配(诸如基于比较图像和/或基于图像识别的特征)来进行对准。附加地或另选地,确定空间关系可涉及基于锚定点来进行视觉匹配。在一些具体实施中,对准可包括将与3D表示相关联的特征图和在当前物理环境中识别的特征进行匹配、WIFI匹配、检测平面、最佳拟合分析、使用识别地板和壁的语义数据、高级2D匹配等。
在一些具体实施中,确定3D表示与当前物理环境之间的空间关系包括基于视觉匹配来对准特征。例如,基于比较图像和/或基于图像识别的特征,如图2的特征图200和/或图4的特征图410所示。在一些具体实施中,3D表示包括特征图(例如,图2的特征图200),该特征图包括与当前物理环境相关联的特征,并且视觉匹配基于将与3D表示相关联的特征图和在当前物理环境中识别的特征进行匹配。例如,如本文关于图4的特征图410所示和所讨论的,特征图匹配过程识别在环境的当前扫描中的特定特征(例如,用户坐在其桌子旁准备通信会话)。在一些具体实施中,3D表示包括锚定点(例如,图3的锚定点表示300),其中每个锚定点与在当前物理环境内的特定位置相关联,并且视觉匹配基于锚定点。例如,如本文参考图4的特征图410所讨论的,除了特征图410之外或作为其替代,可使用图3的锚定点。锚定点匹配过程可识别环境的当前扫描中的特定锚(例如,用户坐在其桌子旁准备通信会话),并且基于当前扫描中所识别的锚,将这些锚与所获取的3D表示进行匹配(例如,基于位置数据、取向、视觉特征、拐角、通常静止的对象的一部分等)。
在一些具体实施中,确定3D表示与当前物理环境之间的空间关系基于视觉即时定位和地图构建(SLAM)。另选地或附加地,在一些具体实施中,确定3D表示与当前物理环境之间的空间关系基于将3D表示的WiFi签名和在当前物理环境中的第一设备的WiFi签名进行匹配。WiFi匹配基于从设备到已知WiFi信号的距离来对电子设备进行地理定位。例如,如果扫描与附近的WiFi信号(以及当进行捕获时其相对强度)相关联,则***可在稍后尝试基于由***感测到的当前WiFi签名来重新定位设备(例如,粗略重新定位)。
在一些具体实施中,确定3D表示与当前物理环境之间的空间关系基于3D表示与在当前物理环境中的第一设备的传感器数据之间的最佳拟合分析。在一些具体实施中,确定3D表示与当前物理环境之间的空间关系基于在3D表示与在当前物理环境中的第一设备的传感器数据之间匹配与在当前物理环境中的对象相关联的语义数据。例如,语义数据可用于识别地板和壁,并且使用高级2D匹配可用于确定3D表示与当前物理环境之间的空间关系。
在一些具体实施中,如上所述,3D表示(例如,3D点云)可与在扫描过程期间生成的SLAM地图对准。在这些具体实施中,框920可包括将在扫描过程期间生成的SLAM地图和当前物理环境的SLAM地图对准,并且基于3D表示与在扫描过程期间生成的SLAM地图之间的已知定位和/或旋转偏移来确定3D表示与当前物理环境之间的空间关系。以这种方式执行对准有利地允许3D表示(例如,3D点云)与SLAM地图之间的对准,否则该对准可能难以实现。
在框930处,方法900基于第一设备在当前物理环境中的位置以及3D表示与当前物理环境之间的空间关系来确定对应于第一设备相对于3D表示的定位的定位数据。在一些具体实施中,定位数据可包括位置、取向或两者的组合(例如,姿势)。
在框940处,方法900在第一设备与第二设备之间的通信会话期间提供定位数据。在一些具体实施中,在通信会话期间向第二设备的用户呈现3D表示的视图,该视图包括基于定位数据定位的第一设备的用户的表示。在一些具体实施中,第一用户的表示可基于在通信会话期间获得的实况传感器数据(例如,实时头像)。另外,隐私选项可使得第一用户能够限制或以其他方式选择要共享的3D表示的部分。在一些具体实施中,可以向第一用户提供关于正与第二用户共享什么内容的指示。
图10是示出用于确定环境的3D表示是否对应于第一设备的当前物理环境并且在通信会话期间确定对应于第一设备相对于3D表示的定位的定位数据的方法的方法1000的流程图。在一些具体实施中,设备诸如电子设备105或电子设备155或两者的组合执行方法1000。在一些具体实施中,在移动设备、台式计算机、膝上型计算机、HMD、耳挂式设备或服务器设备上执行方法1000。方法1000由处理逻辑部件(包括硬件、固件、软件或它们的组合)执行。在一些具体实施中,在执行存储在非暂态计算机可读介质(例如,存储器)中的代码的处理器上执行方法1000。
在框1010处,方法1000获得对环境的3D表示的选择。例如,用户可选择期望的3D表示(例如,物理环境诸如办公室空间的3D扫描)以呈现在通信会话中。例如,用户可选择在物理地位于其办公室中时使用其办公室的扫描(例如,图1的当前物理环境100)来主持通信会话。另选地,用户可能想要在物理地位于其办公室中时使用不同的环境(例如,不同的房间,诸如不同的办公室空间,而不是进行3D扫描的当前物理环境100的办公室区域)的虚拟表示来主持通信会话。3D表示(例如,3D扫描)可以是在先前执行的扫描过程期间生成的点云。在一些具体实施中,3D表示包括表示当前物理环境的至少一部分的点云。例如,设备105扫描图1的物理环境100。在一些具体实施中,获得对环境的3D表示的选择可包括接收由另一用户(诸如多用户通信会话中的另一用户)作出的对环境的3D表示的选择。
在框1020处,方法1000确定环境的所选择的3D表示是否对应于第一设备的当前物理环境。例如,基于位置信息和/或用户输入,***可确定用户所处的当前房间是或不是与所选择的3D表示(例如,3D扫描)相同的房间。例如,位置信息(诸如GPS坐标、WiFi匹配等)可用于确定用户位于与所选择的3D扫描不同的房间中。附加地或另选地,用户可具有选择其办公室的3D扫描(或库中可用的其他3D扫描)的可选选项,并且被告知他们正在选择不属于当前环境的3D扫描。
在一些具体实施中,当生成3D表示时,可识别特征图和/或锚定点以便于后续对准。例如,设备105扫描图1的物理环境100并且生成图2的特征图200。附加地或另选地,设备105扫描图1的物理环境100并且生成如图3的锚定点表示300中所示的锚定点。例如,在扫描过程期间,设备105当前可执行视觉即时定位与地图构建(SLAM)过程,同时生成物理环境的3D点云表示。3D点云可具有相对于在扫描过程期间生成的SLAM地图的定位和/或旋转偏移。在这些示例中,框1010可包括对当前物理环境执行SLAM过程,并且将在扫描过程期间生成的SLAM地图和当前物理环境的SLAM地图进行比较。当这两个SLAM地图在彼此的阈值相似度内时,可确定3D表示对应于当前物理环境。当这两个SLAM地图不在彼此的阈值相似度内时,可确定3D表示不对应于当前物理环境。
在其他具体实施中,3D表示可与其他类型的位置数据(诸如GPS、WiFi、信标、蜂窝信号等)相关联。在这些示例中,框1010可包括将与3D表示相关联的位置数据和在当前物理环境处获得的对应位置数据进行比较。
在框1030处,根据对环境的3D表示对应于当前物理环境的确定,方法1000包括确定对3D表示的选择与当前物理环境之间的空间关系,并且在框1035处,方法1000呈现当前物理环境的视图的呈现,同时放弃3D表示的视图。例如,该方法可以将环境的所获得的3D表示与当前物理环境自动对准,并且呈现当前物理环境的视图,这可包括呈现该环境的直传视频或者允许用户通过透明或半透明显示器直接查看该环境。在一些具体实施中,在框1035处呈现当前物理环境的视图包括放弃3D表示的显示。这可有利地在表示具有较低质量的情况下向用户提供物理环境的较高质量的表示。在一些具体实施中,虽然可不显示对应于物理环境(例如,壁、地板、物理对象等)的3D表示的部分,但是可显示虚拟内容(例如,不对应于物理环境中的物理物品的虚拟内容),诸如应用程序、图像、媒体等。这可以向用户提供与多用户通信会话中的其他参与者所看到的环境匹配的环境的视图。确定空间关系可涉及基于视觉匹配(诸如基于比较图像和/或基于图像识别的特征)来进行对准。附加地或另选地,确定空间关系可涉及基于锚定点来进行视觉匹配。在一些具体实施中,对准可包括将与3D表示相关联的特征图和在当前物理环境中识别的特征进行匹配、WIFI匹配、检测平面、最佳拟合分析、使用识别地板和壁的语义数据、高级2D匹配等。
在一些具体实施中,确定3D表示与当前物理环境之间的空间关系包括基于视觉匹配来对准特征。例如,基于比较图像和/或基于图像识别的特征,如图2的特征图200和/或图4的特征图410所示。在一些具体实施中,3D表示包括特征图(例如,图2的特征图200),该特征图包括与当前物理环境相关联的特征,并且视觉匹配基于将与3D表示相关联的特征图和在当前物理环境中识别的特征进行匹配。例如,如本文关于图4的特征图410所示和所讨论的,特征图匹配过程识别在环境的当前扫描中的特定特征(例如,用户坐在其桌子旁准备通信会话)。在一些具体实施中,3D表示包括锚定点(例如,图3的锚定点表示300),其中每个锚定点与在当前物理环境内的特定位置相关联,并且视觉匹配基于锚定点。例如,如本文参考图4的特征图410所讨论的,除了特征图410之外或作为其替代,可使用图3的锚定点。锚定点匹配过程可识别环境的当前扫描中的特定锚(例如,用户坐在其桌子旁准备通信会话),并且基于当前扫描中所识别的锚,将这些锚与所获取的3D表示进行匹配(例如,基于位置数据、取向、视觉特征、拐角、通常静止的对象的一部分等)。
在一些具体实施中,确定3D表示与当前物理环境之间的空间关系基于视觉即时定位和地图构建(SLAM)。另选地或附加地,在一些具体实施中,确定3D表示与当前物理环境之间的空间关系基于将3D表示的WiFi签名和在当前物理环境中的第一设备的WiFi签名进行匹配。WiFi匹配基于从设备到已知WiFi信号的距离来对电子设备进行地理定位。例如,如果扫描与附近的WiFi信号(以及当进行捕获时其相对强度)相关联,则***可在稍后尝试基于由***感测到的当前WiFi签名来重新定位设备(例如,粗略重新定位)。
在一些具体实施中,确定3D表示与当前物理环境之间的空间关系基于3D表示与在当前物理环境中的第一设备的传感器数据之间的最佳拟合分析。在一些具体实施中,确定3D表示与当前物理环境之间的空间关系基于在3D表示与在当前物理环境中的第一设备的传感器数据之间匹配与在当前物理环境中的对象相关联的语义数据。例如,语义数据可用于识别地板和壁,并且使用高级2D匹配可用于确定3D表示与当前物理环境之间的空间关系。
在一些具体实施中,如上所述,3D表示(例如,3D点云)可与在扫描过程期间生成的SLAM地图对准。在这些具体实施中,框1020可包括将在扫描过程期间生成的SLAM地图和当前物理环境的SLAM地图对准,并且基于3D表示与在扫描过程期间生成的SLAM地图之间的已知定位和/或旋转偏移来确定3D表示与当前物理环境之间的空间关系。以这种方式执行对准有利地允许3D表示(例如,3D点云)与SLAM地图之间的对准,否则该对准可能难以实现。
在框1040处,根据对环境的3D表示不对应于当前物理环境的确定,方法1000包括获得3D表示与当前物理环境之间的空间关系的近似值,并且在框1045处,方法1000基于近似值来呈现3D表示的视图,并且呈现当前物理环境的视图。因此,3D表示不对应于用户的当前物理环境。例如,用户可能想要在其当前房间(诸如不同的办公室空间,而不是所获得的3D扫描的办公室区域(例如,当前物理环境100))中主持通信会话。例如,在视图中向用户呈现3D扫描,因为用户没有物理地位于期望的环境中。
在一些具体实施中,获得3D表示与当前物理环境之间的空间关系的近似值包括确定3D表示与当前物理环境之间的最佳拟合对准。例如,由于所选择的3D表示不对应于当前环境,因此***可尝试以适合用户的物理环境的方式自动地放置3D表示。
另选地,在一些具体实施中,获得3D表示与当前物理环境之间的空间关系的近似值基于用户输入。例如,由于所选择的3D表示不对应于当前环境,因此***可告知用户模拟3D扫描与当前环境的最佳估计拟合(例如,提示用户手动地对准(例如,拖放)3D表示和当前环境)。
在一些具体实施中,3D表示的视图呈现为叠置在当前物理环境的视图上。例如,基于3D表示与当前物理环境之间的空间关系的近似值来呈现当前物理环境和/或3D表示的视图可包括呈现当前物理环境的直传视频或者允许用户通过透明或半透明显示器直接查看当前物理环境。
在框1050处,方法1000基于第一设备在当前物理环境中的位置以及3D表示与当前物理环境之间的空间关系来确定对应于第一设备相对于3D表示的定位的定位数据。在一些具体实施中,定位数据可包括位置、取向或两者的组合(例如,姿势)。
在框1060处,方法1000在第一设备与第二设备之间的通信会话期间提供定位数据。在一些具体实施中,在通信会话期间向第二设备的用户呈现3D表示的视图,该视图包括基于定位数据定位的第一设备的用户的表示。在一些具体实施中,第一用户的表示可基于在通信会话期间获得的实况传感器数据(例如,实时头像)。另外,隐私选项可使得第一用户能够限制或以其他方式选择要共享的3D表示的部分。在一些具体实施中,可以向第一用户提供关于正与第二用户共享什么内容的指示。
方法900和方法1000可任选地包括以下具体实施中的一个或多个具体实施。
在一些具体实施中,在第一设备与第二设备之间的通信会话期间提供3D表示的视图或当前物理环境的视图,第一设备和第二设备在不同的物理环境中。例如,如图6所示,电子设备155提供视图605,该视图使得用户160能够查看3D环境650内用户110的表示620(例如,头像)。
在一些具体实施中,基于在通信会话期间获得的传感器数据来生成第一设备的用户的至少一部分的表示和第二设备的用户的至少一部分的表示。例如,如图6所示,电子设备155提供视图605,该视图使得用户160能够查看3D环境650内用户110的至少一部分(例如,躯干中部以上)的表示620(例如,头像)。另外,例如,如图7和图8所示,电子设备105分别提供视图705、805,该视图使得用户110能够分别查看3D环境750、850内其自身的至少一部分的表示720、820(例如,向用户示出其他用户160在通信会话期间将看到什么内容)。
在一些具体实施中,在第一设备处的3D表示的视图或当前物理环境的视图包括对在第二设备处的3D表示的视图的指示。例如,如图7所示,向用户110提供关于正与在设备155处的用户160共享XR环境的什么视图的指示(例如,通知气泡790)。附加地或另选地,在一些具体实施中,指示可包括正被显示给另一用户(例如,在设备155处的用户160)的视图的每个部分中对用户110的视觉标记或某种类型的视觉特征。例如,灰色区域可以向用户110示出未向在设备155处的用户160示出的3D环境750的内容。例如,仅示出了用户110的表示720和桌子130的表示770,并且剩余部分被模糊和/或变灰,使得在设备155处的用户160仅可看到未被模糊和/或变灰的那些部分(例如,表示720和表示770)。
在一些具体实施中,方法900和1000基于在第一设备处的用户输入来更新在第二设备处的视图的至少一部分。例如,如图8所示,用户110可以将虚拟对象添加到正与设备155处的用户160共享的XR环境。附加地或另选地,在一些具体实施中,隐私选项可使得用户110能够限制或以其他方式选择要共享的3D表示的部分。例如,如图8所示,用户110移除画作的表示775(例如,出于隐私原因,或仅因为用户想要使其办公室更吸引人),并且添加虚拟内容875(例如,虚拟时钟)。虚拟内容875可替换与设备155共享的3D环境850中的对象,或者附加虚拟内容可被添加到其他位置(例如,添加虚拟对象,诸如桌子130的表示870顶部上的虚拟桌子装饰物)。
在一些具体实施中,在XR体验中呈现通信会话的视图。在一些具体实施中,第一设备和/或第二设备是HMD。例如,如果通信会话中的每个用户(例如,用户110和用户160)正佩戴着HMD,则在参与视频/XR会话时提供每个用户的表示(例如,头像)的视图将比显示用户的视图更合适,因为HMD可能是笨重的且可能覆盖用户的面部。因此,本文所述的过程提供有效方式来获得房间(例如,人的办公室)的先前获取的3D表示,随后获得用户的当前位置数据(例如,用户现在正坐在桌子旁),以便快速地将先前3D表示与用户的当前位置对准,以发送给第二用户以向其示出第一用户的3D/XR环境。例如,如果第一用户定位在第一用户的当前物理环境中的桌子后面,则第二用户将在其3D表示的视图中看到定位在桌子的表示后面的相同相对定位中的第一用户的头像。这基于检测到第一用户位于与3D表示相关联的环境内并且将3D表示相对于物理环境对准来实现,例如,使得第一用户在环境内的当前定位可用于识别用户相对于3D表示的对应定位。
在一些具体实施中,方法900和1000包括基于用户输入来确定从第一呈现模式切换到第二呈现模式。例如,用户可选择自拍模式、私聊会话(例如,直接消息传送)模式、在呈现期间询问问题等。在一些具体实施中,作为输入,当前在通信会话中的参与者的数量可以是相关的。例如,通信会话应用程序可基于人数(例如,有几个人正在观看第一用户110在其桌子130后面讲话)来选择不同的布局。附加地或另选地,用户输入可包括在特定方向或运动中移动其设备。
在一些具体实施中,在通信会话的隐私特征期间,元素(例如,作为头像的用户表示或其他对象)被示出为“打码”、消隐的等。例如,当在第一呈现模式与隐私呈现模式之间切换时,可更改(例如,模糊/打码)与表示相关联的视觉属性,并且反之亦然。视觉属性对于第三设备的视点而言可以是可见的。例如,当两个用户在直接消息传送会话中交互时,多用户通信会话中的第三设备上的第三用户可看到进行直接消息传送会话的这两个用户的头像是模糊或消隐的,这可以在多用户通信会话期间向第三用户指示这两个用户此时不可用于交互。然后,当直接消息传送会话已经结束时,此时这两个用户的头像的视觉属性可恢复,使得第三用户随后可以在需要时再次与其交互。
在一些具体实施中,方法900和1000可包括利用不同的呈现模式,这些呈现模式可包括呈现预览窗口(例如,预览模式),该预览窗口包括可以向另一用户示出的3D/XR环境的预览。预览窗口随后将允许用户潜在地修改3D/XR环境的特定元素。例如,如图8所示,用户110移除壁挂120的表示,并且用虚拟内容875(例如,虚拟时钟)替换它。
图11是电子设备1100的框图。设备1100示出了电子设备105或电子设备155的示例性设备配置。尽管示出了一些具体特征,但本领域的技术人员将从本公开中认识到,为简洁起见并且为了不模糊本文所公开的具体实施的更多相关方面,未示出各种其他特征。为此,作为非限制性示例,在一些具体实施中,设备1100包括一个或多个处理单元1102(例如,微处理器、ASIC、FPGA、GPU、CPU、处理核心等)、一个或多个输入/输出(I/O)设备及传感器1106、一个或多个通信接口1108(例如,USB、FIREWIRE、THUNDERBOLT、IEEE 802.3x、IEEE802.11x、IEEE 802.16x、GSM、CDMA、TDMA、GPS、IR、BLUETOOTH、ZIGBEE、SPI、I2C和/或类似类型的接口)、一个或多个编程(例如,I/O)接口1110、一个或多个输出设备1112、一个或多个面向内部和/或面向外部的图像传感器***1114、存储器1120以及用于互连这些部件和各种其他部件的一条或多条通信总线1104。
在一些具体实施中,一条或多条通信总线1104包括互连***部件并控制***部件之间的通信的电路。在一些具体实施中,一个或多个I/O设备及传感器1106包括以下各项中的至少一者:惯性测量单元(IMU)、加速度计、磁力计、陀螺仪、温度计、一个或多个生理传感器(例如,血压监测仪、心率监测仪、血氧传感器、血糖传感器等)、一个或多个麦克风、一个或多个扬声器、触觉引擎或者一个或多个深度传感器(例如,结构光、渡越时间等)等。
在一些具体实施中,一个或多个输出设备1112包括一个或多个显示器,该一个或多个显示器被配置为向用户呈现3D环境的视图。在一些具体实施中,一个或多个输出设备1112对应于全息、数字光处理(DLP)、液晶显示器(LCD)、硅上液晶(LCoS)、有机发光场效应晶体管(OLET)、有机发光二极管(OLED)、表面传导电子发射器显示器(SED)、场发射显示器(FED)、量子点发光二极管(QD-LED)、微机电***(MEMS)和/或类似显示器类型。在一些具体实施中,一个或多个显示器对应于衍射、反射、偏振、全息等波导显示器。在一个示例中,设备1100包括单个显示器。又如,设备1100包括针对用户的每只眼睛的显示器。在一些具体实施中,一个或多个输出设备1112包括一个或多个音频产生设备。在一些具体实施中,该一个或多个输出设备1112包括一个或多个扬声器、环绕声扬声器、扬声器阵列或用于产生空间化声音(例如,3D音频效应)的耳机。此类设备可虚拟地将声源放置在3D环境中,包括一个或多个听者的后面、上方或下方。生成空间化声音可涉及变换声波(例如,使用头部相关的传输函数(HRTF)、混响或消除技术)来模拟自然声波(包括来自墙壁和地板的反射),该自然声波从3D环境中的一个或多个点发出。空间化的声音可以诱使听者的大脑将声音解释成如同该声音发生在3D环境中的一个或多个点处(例如,来自一个或多个特定声源),即使实际声音可能由其他位置中的扬声器产生。一个或多个输出设备1112可附加地或另选地被配置为生成触觉。
在一些具体实施中,一个或多个图像传感器***1114被配置为获得对应于物理环境的至少一部分的图像数据。例如,该一个或多个图像传感器***1114可包括一个或多个RGB相机(例如,具有互补金属氧化物半导体(CMOS)图像传感器或电荷耦合设备(CCD)图像传感器)、单色相机、IR相机、深度相机、基于事件的相机等。在各种具体实施中,一个或多个图像传感器***1114还包括发射光的照明源,诸如闪光灯。在各种具体实施中,一个或多个图像传感器***1114还包括相机上图像信号处理器(ISP),该ISP被配置为对图像数据执行多个处理操作。
存储器1120包括高速随机存取存储器,诸如DRAM、SRAM、DDR RAM或其他随机存取固态存储器设备。在一些具体实施中,存储器1120包括非易失性存储器,诸如一个或多个磁盘存储设备、光盘存储设备、闪存存储器设备或其他非易失性固态存储设备。存储器1120可选地包括与一个或多个处理单元1102远程定位的一个或多个存储设备。存储器1120包括非暂态计算机可读存储介质。
在一些具体实施中,存储器1120或存储器1120的非暂态计算机可读存储介质存储可选的操作***1130和一个或多个指令集1140。操作***1130包括用于处理各种基础***服务和用于执行硬件相关任务的过程。在一些具体实施中,指令集1140包括由以电荷形式存储的二进制信息定义的可执行软件。在一些具体实施中,指令集1140是由一个或多个处理单元1102可执行以实施本文所述技术中的一种或多种的软件。
指令集1140包括内容提供程序指令集1142,该内容提供程序指令集被配置为在执行时例如在通信会话期间提供3D环境的视图,如本文所述。指令集1140还包括通信会话提供程序指令集1144,该通信会话提供程序指令集被配置为在执行时确定提供3D环境的视图内的通信会话,如本文所述。指令集1140可体现为单个软件可执行文件或多个软件可执行文件。
尽管指令集1140被示出为驻留在单个设备上,但应当理解,在其他具体实施中,元件的任何组合可位于单独的计算设备中。此外,图11更多地用作存在于特定具体实施中的各种特征的功能描述,该各种特征与本文所述的具体实施的结构示意图不同。如本领域的普通技术人员将认识到的,单独显示的项目可以组合,并且一些项目可以分开。指令集的实际数量以及如何在其中分配特征将根据具体实施而变化,并且可以部分地取决于为特定具体实施选择的硬件、软件和/或固件的特定组合。
应当理解,上文所描述的具体实施以示例的方式引用,并且本公开不限于上文已特别示出和描述的内容。相反地,范围包括上文所描述的各种特征的组合和子组合两者,以及本领域的技术人员在阅读前述描述时将想到的并且在现有技术中未公开的所述各种特征的变型和修改。
所描述的技术可采集和使用来自各种源的信息。在一些情况下,该信息可包括标识或可用于定位或联系特定个体的个人信息。该个人信息可包括人口统计数据、位置数据、电话号码、电子邮件地址、出生日期、社交媒体账户名称、工作住址或家庭地址、与用户的健康或健身水平相关联的数据或记录、或其他个人或标识信息。
个人信息的收集、存储、传递、公开、分析或其他用途应当遵守既定的隐私政策或实践。应当实施并使用一般被认为满足或超过行业或政府要求的隐私政策和惯例。个人信息应当被收集用于合法且合理的用途,并且不在这些用途之外共享或出售。信息的收集或共享应当在接收到用户的知情同意之后发生。
可设想,在一些情况下,用户可选择性地阻止使用或访问个人信息。可提供硬件或软件特征,以防止或阻止对个人信息的访问。应当处理个人信息以降低无意或未授权访问或使用的风险。通过一旦不再需要就限制数据的收集和删除数据可降低风险。当适用时,数据去标识可用于保护用户的隐私。
尽管所描述的技术可广泛地包括个人信息的使用,但是可在不访问这种个人信息的情况下实施本技术。换句话讲,本技术不会由于缺少一些或所有这种个人信息而被致使不可操作。
本文阐述了许多具体细节以提供对要求保护的主题的全面理解。然而,本领域的技术人员将理解,可以在没有这些具体细节的情况下实践要求保护的主题。在其他实例中,没有详细地介绍普通技术人员已知的方法、装置或***,以便不使要求保护的主题晦涩难懂。
除非另外特别说明,否则应当理解,在整个说明书中,利用诸如“处理”、“计算”、“计算出”、“确定”和“标识”等术语的论述是指计算设备的动作或过程,诸如一个或多个计算机或类似的电子计算设备,其操纵或转换表示为计算平台的存储器、寄存器或其他信息存储设备、传输设备或显示设备内的物理电子量或磁量的数据。
本文论述的一个或多个***不限于任何特定的硬件架构或配置。计算设备可以包括部件的提供以一个或多个输入为条件的结果的任何合适的布置。合适的计算设备包括基于多用途微处理器的计算机***,其访问存储的软件,该软件将计算***从通用计算设备编程或配置为实现本发明主题的一种或多种具体实施的专用计算设备。可以使用任何合适的编程、脚本或其他类型的语言或语言的组合来在用于编程或配置计算设备的软件中实现本文包含的教导内容。
本文所公开的方法的具体实施可以在这样的计算设备的操作中执行。上述示例中呈现的框的顺序可以变化,例如,可以将框重新排序、组合和/或分成子块。某些框或过程可以并行执行。
本文中“适用于”或“被配置为”的使用意味着开放和包容性的语言,其不排除适用于或被配置为执行额外任务或步骤的设备。另外,“基于”的使用意味着开放和包容性,因为“基于”一个或多个所述条件或值的过程、步骤、计算或其他动作在实践中可以基于额外条件或超出所述的值。本文包括的标题、列表和编号仅是为了便于解释而并非旨在为限制性的。
还将理解的是,虽然术语“第一”、“第二”等可能在本文中用于描述各种元素,但是这些元素不应当被这些术语限定。这些术语只是用于将一个元素与另一元素区分开。例如,第一节点可以被称为第二节点,并且类似地,第二节点可以被称为第一节点,其改变描述的含义,只要所有出现的“第一节点”被一致地重命名并且所有出现的“第二节点”被一致地重命名。第一节点和第二节点都是节点,但它们不是同一个节点。
本文中所使用的术语仅仅是为了描述特定具体实施并非旨在对权利要求进行限制。如在本具体实施的描述和所附权利要求中所使用的那样,单数形式的“一个”和“该”旨在也涵盖复数形式,除非上下文清楚地另有指示。还将理解的是,本文中所使用的术语“和/或”是指并且涵盖相关联的所列出的项目中的一个或多个项目的任何和全部可能的组合。还将理解的是,术语“包括”在本说明书中使用时是指定存在所陈述的特征、整数、步骤、操作、元件和/或部件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、部件,和/或其分组。
如本文所使用的,术语“如果”可以被解释为表示“当所述先决条件为真时”或“在所述先决条件为真时”或“响应于确定”或“根据确定”或“响应于检测到”所述先决条件为真,具体取决于上下文。类似地,短语“如果确定[所述先决条件为真]”或“如果[所述先决条件为真]”或“当[所述先决条件为真]时”被解释为表示“在确定所述先决条件为真时”或“响应于确定”或“根据确定”所述先决条件为真或“当检测到所述先决条件为真时”或“响应于检测到”所述先决条件为真,具体取决于上下文。
本发明的前述描述和概述应被理解为在每个方面都是例示性和示例性的,而非限制性的,并且本文所公开的本发明的范围不仅由例示性具体实施的详细描述来确定,而是根据专利法允许的全部广度。应当理解,本文所示和所述的具体实施仅是对本发明原理的说明,并且本领域的技术人员可以在不脱离本发明的范围和实质的情况下实现各种修改。

Claims (43)

1.一种方法,所述方法包括:
在包括一个或多个处理器的第一设备处:
确定环境的三维(3D)表示对应于所述第一设备的当前物理环境;
确定所述3D表示与所述当前物理环境之间的空间关系;
基于所述第一设备在所述当前物理环境中的位置以及所述3D表示与所述当前物理环境之间的所述空间关系来确定对应于所述第一设备相对于所述3D表示的定位的定位数据;以及
在所述第一设备与第二设备之间的通信会话期间提供所述定位数据,其中在所述通信会话期间向所述第二设备的用户呈现所述3D表示的视图,所述视图包括基于所述定位数据定位的所述第一设备的用户的表示。
2.根据权利要求1所述的方法,其中所述3D表示包括表示物理环境的至少一部分的点云。
3.根据权利要求1或2所述的方法,其中确定所述3D表示与所述当前物理环境之间的所述空间关系包括基于视觉匹配来对准特征。
4.根据权利要求3所述的方法,其中所述3D表示包括特征图,所述特征图包括与物理环境相关联的特征,并且所述视觉匹配基于将与所述3D表示相关联的所述特征图和在所述当前物理环境中识别的特征进行匹配。
5.根据权利要求3所述的方法,其中所述3D表示包括锚定点,每个锚定点与物理环境内的特定位置相关联,并且所述视觉匹配基于所述锚定点。
6.根据权利要求1至5中任一项所述的方法,其中确定所述3D表示与所述当前物理环境之间的所述空间关系基于视觉即时定位和地图构建(SLAM)。
7.根据权利要求1至5中任一项所述的方法,其中确定所述3D表示与所述当前物理环境之间的所述空间关系基于将所述3D表示的WiFi签名和在所述当前物理环境中的所述第一设备的WiFi签名进行匹配。
8.根据权利要求1至5中任一项所述的方法,其中确定所述3D表示与所述当前物理环境之间的所述空间关系基于所述3D表示与在所述当前物理环境中的所述第一设备的传感器数据之间的最佳拟合分析。
9.根据权利要求1至5中任一项所述的方法,其中确定所述3D表示与所述当前物理环境之间的所述空间关系基于将与由所述3D表示表示的在物理环境中的对象相关联的语义数据和所述当前物理环境中的对象相关联的语义数据进行匹配。
10.根据权利要求1至9中任一项所述的方法,其中所述第一设备和所述第二设备在不同的物理环境中。
11.根据权利要求1至10中任一项所述的方法,其中基于在所述通信会话期间获得的传感器数据来生成所述第一设备的所述用户的至少一部分的所述表示。
12.根据权利要求1至11中任一项所述的方法,所述方法还包括:
基于在所述第一设备处的用户输入来更新在所述第二设备处的所述视图的至少一部分。
13.根据权利要求1至12中任一项所述的方法,其中在所述第一设备处的所述3D表示的所述视图包括对在所述第二设备处的所述3D表示的所述视图的指示。
14.根据权利要求1至13中任一项所述的方法,其中在扩展现实(XR)体验中呈现所述通信会话的视图。
15.根据权利要求1至14中任一项所述的方法,其中所述第一设备或所述第二设备是头戴式设备(HMD)。
16.一种***,所述***包括:
非暂态计算机可读存储介质;和
一个或多个处理器,所述一个或多个处理器耦接到所述非暂态计算机可读存储介质,其中所述非暂态计算机可读存储介质包括程序指令,所述程序指令当在所述一个或多个处理器上执行时,使所述***执行操作,所述操作包括:
确定三维(3D)表示对应于第一设备的当前物理环境;
确定所述3D表示与所述当前物理环境之间的空间关系;
基于所述第一设备在所述当前物理环境中的位置以及所述3D表示与所述当前物理环境之间的所述空间关系来确定对应于所述第一设备相对于所述3D表示的定位的定位数据;以及
在所述第一设备与第二设备之间的通信会话期间提供所述定位数据,其中在所述通信会话期间向所述第二设备的用户呈现所述3D表示的视图,所述视图包括基于所述定位数据定位的所述第一设备的用户的表示。
17.根据权利要求16所述的***,其中确定所述3D表示与所述当前物理环境之间的所述空间关系包括基于视觉匹配来对准特征。
18.根据权利要求17所述的***,其中所述3D表示包括特征图,所述特征图包括与所述当前物理环境相关联的特征,并且所述视觉匹配基于将与所述3D表示相关联的所述特征图和在所述当前物理环境中识别的特征进行匹配。
19.根据权利要求17所述的***,其中所述3D表示包括锚定点,每个锚定点与在所述当前物理环境内的特定位置相关联,并且所述视觉匹配基于所述锚定点。
20.一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储程序指令,所述程序指令经由一个或多个处理器可执行以执行操作,所述操作包括:
确定三维(3D)表示对应于第一设备的当前物理环境;
确定所述3D表示与所述当前物理环境之间的空间关系;
基于所述第一设备在所述当前物理环境中的位置以及所述3D表示与所述当前物理环境之间的所述空间关系来确定对应于所述第一设备相对于所述3D表示的定位的定位数据;以及
在所述第一设备与第二设备之间的通信会话期间提供所述定位数据,其中在所述通信会话期间向所述第二设备的用户呈现所述3D表示的视图,所述视图包括基于所述定位数据定位的所述第一设备的用户的表示。
21.一种方法,所述方法包括:
在包括一个或多个处理器的第一设备处:
获得对环境的三维(3D)表示的选择;
确定环境的所选择的3D表示是否对应于所述第一设备的当前物理环境;以及
根据对环境的所述3D表示对应于所述当前物理环境的确定:
确定所述3D表示与所述当前物理环境之间的空间关系;以及
呈现所述当前物理环境的视图,同时放弃所述环境的所述3D表示的视图的呈现。
22.根据权利要求21所述的方法,其中根据对环境的所述3D表示不对应于所述当前物理环境的确定,所述方法还包括:
获得所述3D表示与所述当前物理环境之间的空间关系的近似值。
23.根据权利要求22所述的方法,其中获得所述3D表示与所述当前物理环境之间的所述空间关系的近似值包括确定所述3D表示与所述当前物理环境之间的最佳拟合对准。
24.根据权利要求22所述的方法,其中获得所述3D表示与所述当前物理环境之间的所述空间关系的近似值基于用户输入。
25.根据权利要求22至24中任一项所述的方法,所述方法还包括:
根据对环境的所述3D表示不对应于所述当前物理环境的确定,基于所述3D表示之间的所述空间关系的所述近似值来呈现所述3D表示的视图,并且呈现所述当前物理环境的视图。
26.根据权利要求25所述的方法,其中所述3D表示的所述视图呈现为叠置在所述当前物理环境的所述视图上。
27.根据权利要求21至26中任一项所述的方法,所述方法还包括:
基于所述第一设备在所述当前物理环境中的位置以及所述3D表示与所述当前物理环境之间的所述空间关系或所述3D表示与所述当前物理环境之间的所述空间关系的所述近似值来确定对应于所述第一设备相对于所述3D表示的定位的定位数据;以及
在所述第一设备与第二设备之间的通信会话期间提供所述定位数据,其中在所述通信会话期间向所述第二设备的用户呈现所述通信会话的视图,所述视图包括基于所述定位数据定位的所述第一设备的用户的表示。
28.根据权利要求27所述的方法,其中基于在所述通信会话期间获得的传感器数据来生成所述第一设备的所述用户的至少一部分的所述表示。
29.根据权利要求27或28所述的方法,所述方法还包括:
基于在所述第一设备处的用户输入来更新在所述第二设备处的所述通信会话的所述视图的至少一部分。
30.根据权利要求27至29中任一项所述的方法,其中在所述第一设备处的所述3D表示的所述视图或所述当前物理环境的所述视图包括对在所述第二设备处的所述3D表示的所述视图的指示。
31.根据权利要求21至30中任一项所述的方法,其中所述3D表示包括表示物理环境的至少一部分的点云。
32.根据权利要求21至31中任一项所述的方法,其中确定所述3D表示与所述当前物理环境之间的所述空间关系包括基于视觉匹配来对准特征。
33.根据权利要求32所述的方法,其中所述3D表示包括特征图,所述特征图包括与物理环境相关联的特征,并且所述视觉匹配基于将与所述3D表示相关联的所述特征图和在所述当前物理环境中识别的特征进行匹配。
34.根据权利要求32所述的方法,其中所述3D表示包括锚定点,每个锚定点与物理环境内的特定位置相关联,并且所述视觉匹配基于所述锚定点。
35.根据权利要求21至34中任一项所述的方法,其中确定所述3D表示与所述当前物理环境之间的所述空间关系基于视觉即时定位和地图构建(SLAM)。
36.根据权利要求21至34中任一项所述的方法,其中确定所述3D表示与所述当前物理环境之间的所述空间关系基于将所述3D表示的WiFi签名和在所述当前物理环境中的所述第一设备的WiFi签名进行匹配。
37.根据权利要求21至34中任一项所述的方法,其中确定所述3D表示与所述当前物理环境之间的所述空间关系基于所述3D表示与在所述当前物理环境中的所述第一设备的传感器数据之间的最佳拟合分析。
38.根据权利要求21至34中任一项所述的方法,其中确定所述3D表示与所述当前物理环境之间的所述空间关系基于将与由所述3D表示表示的物理环境中的对象相关联的语义数据和在所述当前物理环境中的对象相关联的语义数据进行匹配。
39.根据权利要求21至38中任一项所述的方法,其中所述第一设备和所述第二设备在不同的物理环境中。
40.根据权利要求21至39中任一项所述的方法,其中在扩展现实(XR)体验中呈现所述通信会话的视图。
41.根据权利要求21至40中任一项所述的方法,其中所述第一设备或所述第二设备是头戴式设备(HMD)。
42.一种***,所述***包括:
非暂态计算机可读存储介质;和
一个或多个处理器,所述一个或多个处理器耦接到所述非暂态计算机可读存储介质,其中所述非暂态计算机可读存储介质包括程序指令,所述程序指令当在所述一个或多个处理器上执行时,使所述***执行操作,所述操作包括:
获得对环境的三维(3D)表示的选择;
确定环境的所选择的3D表示是否对应于第一设备的当前物理环境;以及
根据对环境的所述3D表示对应于所述当前物理环境的确定:
确定所述3D表示与所述当前物理环境之间的空间关系;以及
呈现所述当前物理环境的视图,同时放弃所述环境的所述3D表示的视图。
43.一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储程序指令,所述程序指令经由一个或多个处理器可执行以执行操作,所述操作包括:
获得对环境的三维(3D)表示的选择;
确定环境的所选择的3D表示是否对应于第一设备的当前物理环境;以及
根据对环境的所述3D表示对应于所述当前物理环境的确定:
确定所述3D表示与所述当前物理环境之间的空间关系;以及
呈现所述当前物理环境的视图,同时放弃所述环境的所述3D表示的视图。
CN202280062463.3A 2021-09-16 2022-08-30 为多用户通信会话对准扫描环境 Pending CN117999115A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202163244865P 2021-09-16 2021-09-16
US63/244,865 2021-09-16
PCT/US2022/041952 WO2023043607A1 (en) 2021-09-16 2022-08-30 Aligning scanned environments for multi-user communication sessions

Publications (1)

Publication Number Publication Date
CN117999115A true CN117999115A (zh) 2024-05-07

Family

ID=83438313

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202280062463.3A Pending CN117999115A (zh) 2021-09-16 2022-08-30 为多用户通信会话对准扫描环境

Country Status (4)

Country Link
US (1) US20240202944A1 (zh)
EP (1) EP4384290A1 (zh)
CN (1) CN117999115A (zh)
WO (1) WO2023043607A1 (zh)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015161307A1 (en) * 2014-04-18 2015-10-22 Magic Leap, Inc. Systems and methods for augmented and virtual reality
US9916002B2 (en) * 2014-11-16 2018-03-13 Eonite Perception Inc. Social applications for augmented reality technologies
US10169917B2 (en) * 2015-08-20 2019-01-01 Microsoft Technology Licensing, Llc Augmented reality
EP3861533A4 (en) * 2018-10-05 2022-12-21 Magic Leap, Inc. CROSS REALITY SYSTEM
US11361513B2 (en) * 2019-04-23 2022-06-14 Valve Corporation Head-mounted display with pass-through imaging

Also Published As

Publication number Publication date
US20240202944A1 (en) 2024-06-20
EP4384290A1 (en) 2024-06-19
WO2023043607A1 (en) 2023-03-23

Similar Documents

Publication Publication Date Title
US11790871B2 (en) Detection and display of mixed 2D/3D content
CN110954083B (zh) 移动设备的定位
US10460512B2 (en) 3D skeletonization using truncated epipolar lines
US12003890B2 (en) Environment for remote communication
CN107852573B (zh) 混合现实社交交互
CN107850779B (zh) 虚拟位置定位锚
WO2018153267A1 (zh) 群组视频会话的方法及网络设备
US10516870B2 (en) Information processing device, information processing method, and program
WO2019096027A1 (zh) 一种通信处理方法、终端及存储介质
CN110888567A (zh) 三维内容中基于位置的虚拟元件模态
CN114365197A (zh) 在具有多个物理参与者的环境中放置虚拟内容
CN113228625A (zh) 支持复合视频流的视频会议
GB2543913A (en) Virtual conference room
KR102148151B1 (ko) 디지털 커뮤니케이션 네트워크에 기반한 지능형 채팅
US20190043263A1 (en) Program executed on a computer for providing vertual space, method and information processing apparatus for executing the program
US10984607B1 (en) Displaying 3D content shared from other devices
US20160371885A1 (en) Sharing of markup to image data
US20240202944A1 (en) Aligning scanned environments for multi-user communication sessions
CN116530078A (zh) 用于显示从多个视角采集的经立体渲染的图像数据的3d视频会议***和方法
US20240037886A1 (en) Environment sharing
US20230401805A1 (en) Merged 3D Spaces During Communication Sessions
US20230289993A1 (en) 3D Representation of Physical Environment Objects
US20230419625A1 (en) Showing context in a communication session
US20240203055A1 (en) Representing flat surfaces in point-based representations of physical environments
CN117999781A (zh) 3d聚光灯

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