CN115297314A - 用于调试程序执行和内容回放的方法和设备 - Google Patents
用于调试程序执行和内容回放的方法和设备 Download PDFInfo
- Publication number
- CN115297314A CN115297314A CN202210471671.0A CN202210471671A CN115297314A CN 115297314 A CN115297314 A CN 115297314A CN 202210471671 A CN202210471671 A CN 202210471671A CN 115297314 A CN115297314 A CN 115297314A
- Authority
- CN
- China
- Prior art keywords
- environment
- pov
- implementations
- data stream
- virtual agent
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 72
- 230000004044 response Effects 0.000 claims abstract description 53
- 230000003190 augmentative effect Effects 0.000 claims abstract description 7
- 239000000203 mixture Substances 0.000 claims abstract description 6
- 230000008447 perception Effects 0.000 claims description 82
- 230000021317 sensory perception Effects 0.000 claims description 55
- 230000003287 optical effect Effects 0.000 claims description 24
- 230000027455 binding Effects 0.000 claims description 10
- 238000009739 binding Methods 0.000 claims description 10
- 239000003550 marker Substances 0.000 claims description 8
- 238000013213 extrapolation Methods 0.000 claims description 5
- 241001465754 Metazoa Species 0.000 claims description 3
- 239000013598 vector Substances 0.000 description 30
- 238000012545 processing Methods 0.000 description 26
- 238000012800 visualization Methods 0.000 description 22
- 230000001953 sensory effect Effects 0.000 description 21
- 210000003128 head Anatomy 0.000 description 14
- 238000012512 characterization method Methods 0.000 description 13
- 230000003993 interaction Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 230000033001 locomotion Effects 0.000 description 10
- 230000009471 action Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 9
- 230000000007 visual effect Effects 0.000 description 9
- 230000035807 sensation Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000009877 rendering Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 239000002131 composite material Substances 0.000 description 5
- 230000007613 environmental effect Effects 0.000 description 5
- 230000007704 transition Effects 0.000 description 5
- 239000000872 buffer Substances 0.000 description 4
- 238000012937 correction Methods 0.000 description 4
- 230000007935 neutral effect Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000004438 eyesight Effects 0.000 description 3
- 239000004973 liquid crystal related substance Substances 0.000 description 3
- 230000035945 sensitivity Effects 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 102100037458 Dephospho-CoA kinase Human genes 0.000 description 2
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 2
- 239000000654 additive Substances 0.000 description 2
- 230000000996 additive effect Effects 0.000 description 2
- 239000008280 blood Substances 0.000 description 2
- 210000004369 blood Anatomy 0.000 description 2
- 108010049285 dephospho-CoA kinase Proteins 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 210000001525 retina Anatomy 0.000 description 2
- 229910052710 silicon Inorganic materials 0.000 description 2
- 239000010703 silicon Substances 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 241000282465 Canis Species 0.000 description 1
- WQZGKKKJIJFFOK-GASJEMHNSA-N Glucose Natural products OC[C@H]1OC(O)[C@H](O)[C@@H](O)[C@@H]1O WQZGKKKJIJFFOK-GASJEMHNSA-N 0.000 description 1
- 241000238631 Hexapoda Species 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- QVGXLLKOCUKJST-UHFFFAOYSA-N atomic oxygen Chemical compound [O] QVGXLLKOCUKJST-UHFFFAOYSA-N 0.000 description 1
- 230000036772 blood pressure Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000002772 conduction electron Substances 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000001816 cooling Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000005669 field effect Effects 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 239000008103 glucose Substances 0.000 description 1
- 125000001475 halogen functional group Chemical group 0.000 description 1
- 230000004886 head movement Effects 0.000 description 1
- 238000010438 heat treatment Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 229910052760 oxygen Inorganic materials 0.000 description 1
- 239000001301 oxygen Substances 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 239000002096 quantum dot Substances 0.000 description 1
- 230000004270 retinal projection Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 230000004304 visual acuity Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/30—Image reproducers
- H04N13/332—Displays for viewing with the aid of special glasses or head-mounted displays [HMD]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
- G06F3/013—Eye tracking input arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
- G06F3/012—Head tracking input arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/20—Scenes; Scene-specific elements in augmented reality scenes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/189—Recording image signals; Reproducing recorded image signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/30—Image reproducers
- H04N13/363—Image reproducers using image projection screens
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/30—Image reproducers
- H04N13/366—Image reproducers using viewer tracking
- H04N13/383—Image reproducers using viewer tracking for tracking with gaze detection, i.e. detecting the lines of sight of the viewer's eyes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Health & Medical Sciences (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本公开涉及用于调试程序执行和内容回放的方法和设备。在一个具体实施中,本发明提供了一种用于记录XR环境的方法。该方法包括:经由该显示设备呈现具有一个或多个虚拟代理的图形环境,其中该图形环境对应于包括该一个或多个虚拟代理的扩展现实(XR)内容和从物理环境的第一视点(POV)捕获的该物理环境的图像流的合成;经由该一个或多个输入设备检测从该一个或多个虚拟代理中选择第一虚拟代理的用户输入;以及响应于检测到该用户输入,记录与该图形环境相关联的多个数据流,该多个数据流包括来自该第一POV的该图形环境的第一图像流和来自该第一虚拟代理的当前POV的该图形环境的一个或多个数据流。
Description
相关申请
本申请要求2021年5月3日提交的美国临时专利申请第63/183,188号的优先权,其全部内容以引用方式并入本文。
技术领域
本公开整体涉及调试程序执行和内容回放,并且具体地涉及用于扩展现实(XR)环境的选择性记录和回放的***和方法。
背景技术
通常,可以记录XR体验,由此,记录的视频数据包括与场景相关联的视频透传数据和XR数据两者的合成。当开发人员打算调试程序执行和图形内容回放(诸如虚拟代理(VA)和/或XR内容)时,此记录的视频数据可能不足。
发明内容
本文所公开的各种具体实施包括用于记录XR环境的设备、***和方法。根据一些具体实施,所述方法在包括非暂态存储器和一个或多个处理器的计算***处执行,其中所述计算***通信地耦接到显示设备和一个或多个输入设备。该方法包括:经由该显示设备呈现具有一个或多个虚拟代理的图形环境,其中该图形环境对应于包括一个或多个虚拟代理的扩展现实(XR)内容和从物理环境的第一视点(POV)捕获的物理环境的图像流的合成;经由一个或多个输入设备检测从一个或多个虚拟代理中选择第一虚拟代理的用户输入;以及响应于检测到用户输入,记录与图形环境相关联的多个数据流,该多个数据流包括来自第一POV的图形环境的第一图像流和来自第一虚拟代理的当前POV的图形环境的一个或多个数据流。
本文所公开的各种具体实施包括用于回放XR环境的记录的设备、***和方法。根据一些具体实施,所述方法在包括非暂态存储器和一个或多个处理器的计算***处执行,其中所述计算***通信地耦接到显示设备和一个或多个输入设备。该方法包括:选择包括一个或多个虚拟代理(VA)的图形环境的先前记录的实例;响应于检测到第一用户输入,从第一视点(POV)呈现图形环境的先前记录的实例,并呈现与图形环境的先前记录的实例的回放相关联的多个控件,包括用于从第一POV更改为第二POV以及用于激活一个或多个层的用户界面(UI)元素;检测在一个或多个VA中选择相应VA的第二用户输入;以及响应于检测到第二用户输入,从与相应VA相关联的第二POV呈现图形环境的先前记录的实例。
根据一些具体实施,一种电子设备包括一个或多个显示器、一个或多个处理器、非暂态存储器和一个或多个程序;该一个或多个程序被存储在非暂态存储器中并且被配置为由一个或多个处理器执行,并且该一个或多个程序包括用于执行或使得执行本文所述方法中的任一种的指令。根据一些具体实施,一种非暂态计算机可读存储介质中存储有指令,这些指令在由设备的一个或多个处理器执行时使该设备执行或使执行本文所述方法中的任一种。根据一些具体实施,一种设备包括:一个或多个显示器、一个或多个处理器、非暂态存储器以及用于执行或使执行本文所述方法中的任一种的装置。
根据一些具体实施,一种计算***包括一个或多个处理器、非暂态存储器、用于与显示设备和一个或多个输入设备进行通信的接口、以及一个或多个程序;一个或多个程序被存储在非暂态存储器中并且被配置为由一个或多个处理器执行,并且一个或多个程序包括用于执行或导致执行本文所述的方法中的任一种方法的操作的指令。根据一些实施方案,一种非暂态计算机可读存储介质具有存储在其中的指令,这些指令当由具有与显示设备和一个或多个输入设备通信的接口的计算***的一个或多个处理器执行时,使得所述计算***执行或使得执行本文所述的方法中的任一种方法的操作。根据一些具体实施,一种计算***包括一个或多个处理器、非暂态存储器、用于与显示设备和一个或多个输入设备通信的接口、以及用于执行或导致执行本文所述的方法中的任一种方法的操作的装置。
附图说明
因此,本公开可被本领域的普通技术人员理解,更详细的描述可参考一些例示性具体实施的方面,其中一些具体实施在附图中示出。
图1是根据一些具体实施的示例性操作架构的框图。
图2是根据一些具体实施的示例性控制器的框图。
图3是根据一些具体实施的示例性电子设备的框图。
图4A是根据一些具体实施的示例性记录架构的框图。
图4B是根据一些具体实施的图4A中的记录架构的示例性部分的框图。
图4C示出了根据一些具体实施的用于记录库的示例性数据结构。
图4D是根据一些具体实施的示例性运行时架构的框图。
图5示出了根据一些具体实施的示例性数据结构。
图6A至图6F示出了根据一些具体实施的记录场景的实例序列。
图7A至图7S示出了根据一些具体实施的记录回放场景的实例序列。
图8是根据一些具体实施的记录XR环境的方法的流程图表示。
图9是根据一些具体实施的回放XR环境的记录的方法的另一流程图表示。
根据通常的做法,附图中示出的各种特征部可能未按比例绘制。因此,为了清楚起见,可以任意地扩展或减小各种特征部的尺寸。另外,一些附图可能未描绘给定的***、方法或设备的所有部件。最后,在整个说明书和附图中,类似的附图标号可用于表示类似的特征部。
具体实施方式
描述了许多细节以便提供对附图中所示的示例具体实施的透彻理解。然而,附图仅示出了本公开的一些示例方面,因此不应被视为限制。本领域的普通技术人员将理解,其他有效方面和/或变体不包括本文所述的所有具体细节。此外,没有详尽地描述众所周知的***、方法、部件、设备和电路,以免模糊本文所述的示例性具体实施的更多相关方面。
物理环境是指人们在没有电子设备帮助的情况下能够对其感测和/或与其交互的物理世界。物理环境可包括物理特征,诸如物理表面或物理对象。例如,物理环境对应于包括物理树木、物理建筑物和物理人的物理公园。人们能够诸如通过视觉、触觉、听觉、味觉和嗅觉来直接感测物理环境和/或与物理环境交互。相反,扩展现实(XR)环境是指人们经由电子设备感测和/或交互的完全或部分模拟的环境。例如,XR环境可包括增强现实(AR)内容、混合现实(MR)内容、虚拟现实(VR)内容等。在XR***的情况下,跟踪人的物理运动的一个子集或其表示,并且作为响应,以符合至少一个物理定律的方式调节在XR***中模拟的一个或多个虚拟对象的一个或多个特征。例如,XR***可以检测头部移动,并且作为响应,以与此类视图和声音在物理环境中变化的方式类似的方式调节呈现给人的图形内容和声场。又如,XR***可以检测呈现XR环境的电子设备(例如,移动电话、平板电脑、膝上型电脑等)的移动,并且作为响应,以类似于此类视图和声音在物理环境中将如何改变的方式调节呈现给人的图形内容和声场。在一些情况下(例如,出于可达性原因),XR***可响应于物理运动的表示(例如,声音命令)来调节XR环境中图形内容的特征。
有许多不同类型的电子***使人能够感测和/或与各种XR环境交互。示例包括头戴式***、基于投影的***、平视显示器(HUD)、集成有显示能力的车辆挡风玻璃、集成有显示能力的窗户、被形成为设计用于放置在人的眼睛上的透镜的显示器(例如,类似于隐形眼镜)、耳机/听筒、扬声器阵列、输入***(例如,具有或不具有触觉反馈的可穿戴或手持式控制器)、智能电话、平板电脑、以及台式/膝上型计算机。头戴式***可具有集成不透明显示器和一个或多个扬声器。另选地,头戴式***可被配置为接受外部不透明显示器(例如,智能电话)。头戴式***可结合用于捕获物理环境的图像或视频的一个或多个成像传感器、和/或用于捕获物理环境的音频的一个或多个麦克风。头戴式***可具有透明或半透明显示器,而不是不透明显示器。透明或半透明显示器可以具有媒介,代表图像的光通过该媒介被引导到人的眼睛。显示器可以利用数字光投影、OLED、LED、uLED、硅基液晶、激光扫描光源或这些技术的任意组合。媒介可以是光学波导、全息图媒介、光学组合器、光学反射器、或它们的任意组合。在一些具体实施中,透明或半透明显示器可被配置为选择性地变得不透明。基于投影的***可以采用将图形图像投影到人的视网膜上的视网膜投影技术。投影***也可以被配置为将虚拟对象投影到物理环境中,例如作为全息图或在物理表面上。
图1是根据一些具体实施的示例性操作架构100的框图。尽管示出了相关特征,但本领域的普通技术人员将从本公开中认识到,为简洁起见并且为了不模糊本文所公开的示例性具体实施的更多相关方面,未示出各种其他特征。为此,作为非限制性示例,操作架构100包括可选的控制器110和电子设备120(例如,平板电脑、移动电话、膝上型电脑、近眼***、可穿戴计算设备等)。
在一些具体实施中,控制器110被配置为管理和协调用户150和任选地其他用户的XR体验(在本文中有时也称为“XR环境”或“虚拟环境”或“图形环境”)。在一些具体实施中,控制器110包括软件、固件和/或硬件的合适组合。下文参考图2更详细地描述控制器110。在一些具体实施中,控制器110是相对于物理环境105处于本地或远程位置的计算设备。例如,控制器110是位于物理环境105内的本地服务器。在另一个示例中,控制器110是位于物理环境105之外的远程服务器(例如,云服务器、中央服务器等)。在一些具体实施中,控制器110经由一个或多个有线或无线通信信道144(例如,蓝牙、IEEE 802.11x、IEEE 802.16x、IEEE802.3x等)与电子设备120通信地耦接。在一些具体实施中,控制器110的功能由电子设备120提供。这样,在一些具体实施中,控制器110的部件集成到电子设备120中。
在一些具体实施中,电子设备120被配置为向用户150呈现音频和/或视频(A/V)内容。在一些具体实施中,电子设备120被配置为向用户150呈现用户界面(UI)和/或XR环境128。在一些具体实施中,电子设备120包括软件、固件和/或硬件的合适组合。下文参考图3更详细地描述电子设备120。
根据一些具体实施,当用户150物理地存在于物理环境105内时,电子设备120向用户150呈现XR体验,其中物理环境105包括处于电子设备120的视场(FOV)111内的桌子107。这样,在一些具体实施中,用户150将电子设备120拿在他/她的一只或两只手中。在一些具体实施中,在呈现XR体验时,电子设备120被配置为呈现XR内容(在本文中有时也被称为“图形内容”或“虚拟内容”),包括XR圆柱体109,并使得能够实现显示器122上物理环境105(例如,包括桌子107)的视频透传。例如,包括XR圆柱体109的XR环境128是立体的或三维的(3D)。
在一个示例中,XR圆柱体109对应于显示器锁定的内容,使得当FOV 111由于电子设备120的平移和/或旋转运动而改变时,XR圆柱体109保持显示在显示器122上的相同位置处。作为另一示例,XR圆柱体109对应于世界锁定的内容,使得当FOV 111由于电子设备120的平移和/或旋转运动而改变时,XR圆柱体109保持显示在其原始位置处。因此,在该示例中,如果FOV 111不包括原始位置,则XR环境128将不包括XR圆柱体109。例如,电子设备120对应于近眼***、移动电话、平板电脑、膝上型电脑、可穿戴计算设备等。
在一些具体实施中,显示器122对应于使得能够实现物理环境105(包括桌子107)的光学透传的加成显示器。例如,显示器122对应于透明透镜,并且电子设备120对应于用户150佩戴的一副眼镜。因此,在一些具体实施中,电子设备120通过将XR内容(例如,XR圆柱体109)投影到加成显示器上而呈现用户界面,其继而从用户150的角度叠置在物理环境105上。在一些具体实施中,电子设备120通过将XR内容(例如,XR圆柱体109)显示在加成显示器上而呈现用户界面,其继而从用户150的角度叠置在物理环境105上。
在一些具体实施中,用户150穿戴电子设备120,诸如近眼***。因此,电子设备120包括被提供以显示XR内容的一个或多个显示器(例如,单个显示器或每只眼睛一个显示器)。例如,电子设备120包围用户150的FOV。在此类具体实施中,电子设备120通过在一个或多个显示器上显示对应于XR环境128的数据或者通过将对应于XR环境128的数据投影到用户150的视网膜上来呈现XR环境128。
在一些具体实施中,电子设备120包括显示XR环境128的集成显示器(例如,内置显示器)。在一些具体实施中,电子设备120包括可头戴式壳体。在各种具体实施中,头戴式壳体包括附接区,具有显示器的另一设备可附接到该附接区。例如,在一些具体实施中,电子设备120可附接到可头戴式壳体。在各种具体实施中,可头戴式壳体被成形为形成用于接收包括显示器的另一设备(例如,电子设备120)的接收器。例如,在一些具体实施中,电子设备120滑动/卡扣到可头戴式壳体中或以其他方式附接到该可头戴式壳体。在一些具体实施中,附接到可头戴式壳体的设备的显示器呈现(例如,显示)XR环境128。在一些具体实施中,将电子设备120替换成被配置为呈现XR内容的XR室、壳体或房间,在其中用户150不穿戴电子设备120。
在一些具体实施中,控制器110和/或电子设备120使得用户150的XR表示基于来自电子设备120和/或物理环境105内的可选的远程输入设备的移动信息(例如,身体姿态数据、眼睛跟踪数据、手/肢体/手指/末端跟踪数据等)在XR环境128内移动。在一些具体实施中,可选的远程输入设备对应于物理环境105内的固定或可移动的感官设备(例如,图像传感器、深度传感器、红外(IR)传感器、事件相机、麦克风等)。在一些具体实施中,每个远程输入设备被配置为在用户150物理地在物理环境105内时收集/捕获输入数据并且将输入数据提供给控制器110和/或电子设备120。在一些具体实施中,远程输入设备包括麦克风,并且输入数据包括与用户150相关联的音频数据(例如,语音样本)。在一些具体实施中,远程输入设备包括图像传感器(例如,相机),并且输入数据包括用户150的图像。在一些具体实施中,输入数据表征用户150在不同时间的身体姿态。在一些具体实施中,输入数据表征用户150在不同时间的头部姿态。在一些具体实施中,输入数据表征在不同时间与用户150的手相关联的手跟踪信息。在一些具体实施中,输入数据表征用户150的身体部分(诸如他/她的手)的速度和/或加速度。在一些具体实施中,输入数据指示用户150的关节位置和/或关节取向。在一些具体实施中,远程输入设备包括反馈设备,诸如扬声器、灯等。
图2是根据一些具体实施的控制器110的示例的框图。尽管示出了一些具体特征,但本领域的技术人员将从本公开中认识到,为简洁起见并且为了不模糊本文所公开的具体实施的更多相关方面,未示出各种其他特征。为此,作为非限制性示例,在一些具体实施中,控制器110包括一个或多个处理单元202(例如,微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、图形处理单元(GPU)、中央处理单元(CPU)、处理内核等)、一个或多个输入/输出(I/O)设备206、一个或多个通信接口208(例如,通用串行总线(USB)、IEEE 802.3x、IEEE 802.11x、IEEE 802.16x、全球移动通信***(GSM)、码分多址(CDMA)、时分多址(TDMA)、全球定位***(GPS)、红外(IR)、蓝牙、ZIGBEE和/或类似类型的接口)、一个或多个编程(例如,I/O)接口210、存储器220以及用于互连这些部件和各种其他部件的一条或多条通信总线204。
在一些具体实施中,该一条或多条通信总线204包括互连***部件和控制***部件之间的通信的电路。在一些具体实施中,一个或多个I/O设备206包括键盘、鼠标、触控板、触摸屏、操纵杆、一个或多个麦克风、一个或多个扬声器、一个或多个图像传感器、一个或多个显示器等中的至少一者。
存储器220包括高速随机存取存储器,诸如动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、双倍数据速率随机存取存储器(DDR RAM)或者其他随机存取固态存储器设备。在一些具体实施中,存储器220包括非易失性存储器,诸如一个或多个磁盘存储设备、光盘存储设备、闪存存储器设备或其他非易失性固态存储设备。存储器220任选地包括远离所述一个或多个处理单元202定位的一个或多个存储设备。存储器220包括非暂态计算机可读存储介质。在一些具体实施中,存储器220或存储器220的非暂态计算机可读存储介质存储下文参照图2所述的下述程序、模块和数据结构或者它们的子集。
操作***230包括用于处理各种基础***服务和用于执行硬件相关任务的过程。
在一些具体实施中,数据获取器242被配置为从控制器110的I/O设备206、电子设备120的I/O设备及传感器306、和任选的远程输入设备中的至少一者获取数据(例如,捕获的物理环境105的图像帧、呈现数据、输入数据、用户交互数据、相机姿态跟踪信息、眼睛跟踪信息、头部/身体姿态跟踪信息、手部/肢体/手指/四肢跟踪信息、传感器数据、位置数据等)。为此,在各种具体实施中,数据获取器242包括指令和/或用于这些指令的逻辑部件以及启发法和用于该启发法的元数据。
在一些具体实施中,映射器和***引擎244被配置为映射物理环境105并至少跟踪电子设备120或用户150相对于物理环境105的定位/位置。为此,在各种具体实施中,映射器和***引擎244包括指令和/或用于这些指令的逻辑部件以及启发法和用于该启发法的元数据。
在一些具体实施中,数据传输器246被配置为至少向电子设备120和任选地一个或多个其他设备传输数据(例如,呈现数据,诸如与XR环境相关联的渲染的图像帧、位置数据等)。为此,在各种具体实施中,数据传输器246包括指令和/或用于指令的逻辑部件以及启发法和用于启发法的元数据。
在一些具体实施中,内容选择器422被配置为基于一个或多个用户请求和/或用户输入(例如,语音命令、从XR内容项的用户界面(UI)菜单中的选择等),从内容库425中选择XR内容(有时也称为“图形内容”或“虚拟内容”)和/或一个或多个虚拟代理(VA)。下文参考图4A更详细地描述内容选择器422。为此,在各种具体实施中,内容选择器422包括指令和/或用于这些指令的逻辑部件以及启发法和用于该启发法的元数据。
在一些具体实施中,内容库425包括多个内容项,诸如听觉/视觉(A/V)内容、VA和/或XR内容、对象、项、场景等。作为一个示例,XR内容包括用户捕获的视频、电影、TV剧集和/或其他XR内容的3D重建。在一些具体实施中,内容库425由用户150预先填充或手动创作。在一些具体实施中,内容库425相对于控制器110和/或电子设备120位于本地。在一些具体实施中,内容库425位于远离控制器110和/或电子设备120的位置(例如,位于远程服务器、云服务器等处)。
在一些具体实施中,内容管理器430被配置为管理和更新XR环境128的布局、设置、结构等,该XR环境包括VA、XR内容、与XR内容相关联的一个或多个用户界面(UI)元素等中的一者或多者。下文参考图4A更详细地描述内容管理器430。为此,在各种具体实施中,内容管理器430包括指令和/或用于这些指令的逻辑部件以及启发法和用于该启发法的元数据。在一些具体实施中,内容管理器430包括过去帧缓冲器434、内容更新器436和反馈引擎438。在一些具体实施中,过去帧缓冲器434包括用于一个或多个过去实例和/或帧的XR内容、渲染的图像帧等。
在一些具体实施中,内容更新器436被配置为基于平移或旋转运动、用户命令、用户输入等随时间推移修改XR环境128。为此,在各种具体实施中,内容更新器436包括指令和/或用于这些指令的逻辑部件以及启发法和用于该启发法的元数据。
在一些具体实施中,反馈引擎438被配置为生成与XR环境128相关联的感官反馈(例如,视觉反馈(诸如文本或照明变化)、音频反馈、触觉反馈等)。为此,在各种具体实施中,反馈引擎438包括指令和/或用于这些指令的逻辑部件以及启发法和用于该启发法的元数据。
在一些具体实施中,记录管理器470被配置为填充和管理记录库475,该记录库包括与XR环境128相关联的记录。下文参考图4A更详细地描述记录管理器470。为此,在各种具体实施中,记录管理器470包括指令和/或用于这些指令的逻辑部件以及启发法和用于该启发法的元数据。在一些具体实施中,记录管理器470包括外推器471、时序器472、层处理程序474、用户配置文件或一组用户偏好476,以及记录库475。
在一些具体实施中,外推器471被配置为填充与来自一个或多个VA的POV的各种感官感知相关联的数据流中的数据间隙。下文参考图4A更详细地描述外推器471。为此,在各种具体实施中,外推器471包括指令和/或用于这些指令的逻辑部件以及启发法和用于该启发法的元数据。
在一些具体实施中,时序器472被配置为使与记录相关联的多个数据流在时间上同步。下文参考图4A更详细地描述时序器472。为此,在各种具体实施中,时序器472包括指令和/或用于这些指令的逻辑部件以及启发法和用于该启发法的元数据。
在一些具体实施中,层处理程序474被配置为基于用户命令和/或用户输入启用和/或禁用与记录相关联的一个或多个层。下文参考图4A更详细地描述层处理程序474。为此,在各种具体实施中,层处理程序474包括指令和/或用于这些指令的逻辑部件以及启发法和用于该启发法的元数据。
在一些具体实施中,用户配置文件或一组用户偏好476包括记录特定用户的可修改偏好,诸如仅记录层A和层B,记录所有层,记录所有VA和所有VA感官感知等。在一些具体实施中,记录库475包括XR环境128的多个先前记录的实例。图4C示出了记录库475内的示例性记录480。在一些具体实施中,记录库475相对于控制器110和/或电子设备120位于本地。在一些具体实施中,记录库475位于远离控制器110和/或电子设备120的位置(例如,位于远程服务器、云服务器等处)。
在一些具体实施中,渲染引擎450被配置为渲染XR环境128(有时也称为“图形环境”或“虚拟环境”)或与该XR环境相关联的图像帧以及VA、XR内容、与XR内容相关联的一个或多个UI元素等。为此,在各种具体实施中,渲染引擎450包括指令和/或用于这些指令的逻辑部件以及启发法和用于该启发法的元数据。在一些具体实施中,渲染引擎450包括姿态确定器452、渲染器454、任选的图像处理架构462和任选的合成器464。本领域的普通技术人员将理解,对于视频透传配置,可以存在任选的图像处理架构462和任选的合成器464,但对于完全VR或光学透传配置,可以移除该任选的图像处理架构和该任选的合成器。
在一些具体实施中,姿态确定器452被配置为确定电子设备120和/或用户150相对于A/V内容和/或XR内容的当前相机姿态。下文参考图4A更详细地描述姿态确定器452。为此,在各种具体实施中,姿态确定器452包括指令和/或用于这些指令的逻辑部件以及启发法和用于该启发法的元数据。
在一些具体实施中,渲染器454被配置为根据与其相关的当前相机姿态来渲染A/V内容和/或XR内容。下文参考图4A更详细地描述渲染器454。为此,在各种具体实施中,渲染器454包括指令和/或用于这些指令的逻辑部件以及启发法和用于该启发法的元数据。
在一些具体实施中,图像处理架构462被配置为从电子设备120和/或用户150的当前相机姿态获取(例如,接收、检索或捕获)包括物理环境105的一个或多个图像的图像流。在一些具体实施中,图像处理架构462还被配置为对图像流执行一个或多个图像处理操作,诸如扭曲、颜色校正、γ校正、锐化、降噪、白平衡等。下文参考图4A更详细地描述图像处理架构462。为此,在各种具体实施中,图像处理架构462包括指令和/或用于这些指令的逻辑部件以及启发法和用于该启发法的元数据。
在一些具体实施中,合成器464被配置为将渲染的A/V内容和/或XR内容与来自图像处理架构462的物理环境105的经处理的图像流合成,以产生XR环境128的渲染的图像帧以供显示。下文参考图4A更详细地描述合成器464。为此,在各种具体实施中,合成器464包括指令和/或用于这些指令的逻辑部件以及启发法和用于该启发法的元数据。
尽管数据获取器242、映射器和***引擎244、数据传输器246、内容选择器422、内容管理器430、记录管理器470和渲染引擎450被示出为驻留在单个设备(例如,控制器110)上,但应当理解,在其他具体实施中,数据获取器242、映射器和***引擎244、数据传输器246、内容选择器422、内容管理器430、记录管理器470和渲染引擎450的任何组合可以位于单独的计算设备中。
在一些具体实施中,控制器110的功能和/或部件与下文在图3中所示的电子设备120组合或由其提供。此外,图2更多地用作存在于特定具体实施中的各种特征部的功能描述,而不是本文所述的具体实施的结构示意图。如本领域的普通技术人员将认识到的,单独显示的项目可以组合,并且一些项目可以分开。例如,图2中单独示出的一些功能模块可以在单个模块中实现,并且单个功能块的各种功能可在各种具体实施中通过一个或多个功能块来实现。模块的实际数量和特定功能的划分以及如何在其中分配特征将根据具体实施而变化,并且在一些具体实施中,部分地取决于为特定实施方案选择的硬件、软件和/或固件的特定组合。
图3是根据一些具体实施的电子设备120(例如,移动电话、平板电脑、膝上型电脑、近眼***、可穿戴计算设备等)的示例的框图。尽管示出了一些具体特征,但本领域的技术人员将从本公开中认识到,为简洁起见并且为了不模糊本文所公开的具体实施的更多相关方面,未示出各种其他特征。出于该目的,作为非限制性示例,在一些具体实施中,电子设备120包括一个或多个处理单元302(例如,微处理器、ASIC、FPGA、GPU、CPU、处理核心等)、一个或多个输入/输出(I/O)设备及传感器306、一个或多个通信接口308(例如,USB、IEEE802.3x、IEEE 802.11x、IEEE 802.16x、GSM、CDMA、TDMA、GPS、IR、BLUETOOTH、ZIGBEE和/或类似类型的接口)、一个或多个编程(例如,I/O)接口310、一个或多个显示器312、图像捕获设备370(一个或多个任选的面向内部和/或面向外部的图像传感器)、存储器320以及用于互连这些部件和各种其他部件的一条或多条通信总线304。
在一些具体实施中,一条或多条通信总线304包括互连和控制***部件之间的通信的电路。在一些具体实施中,一个或多个I/O设备及传感器306包括惯性测量单元(IMU)、加速度计、陀螺仪、磁力仪、温度计、一个或多个生理传感器(例如,血压监测仪、心率监测仪、血氧饱和度监测仪、血糖监测仪等)、一个或多个麦克风、一个或多个扬声器、触觉引擎、加热和/或冷却单元、皮肤剪切引擎、一个或多个深度传感器(例如,结构化光、飞行时间、LiDAR等)、定位和映射引擎、眼睛跟踪引擎、身体/头部姿态跟踪引擎、手部/肢体/手指/四肢跟踪引擎、相机姿态跟踪引擎等中的至少一者。
在一些具体实施中,一个或多个显示器312被配置为向用户呈现XR环境。在一些具体实施中,一个或多个显示器312也被配置为向用户呈现平面视频内容(例如,与电视剧或电影相关联的二维或“平面”AVI、FLV、WMV、MOV、MP4等文件,或物理环境105的实时视频透传)。在一些具体实施中,一个或多个显示器312对应于触摸屏显示器。在一些具体实施中,一个或多个显示器312对应于全息、数字光处理(DLP)、液晶显示器(LCD)、硅上液晶(LCoS)、有机发光场效应晶体管(OLET)、有机发光二极管(OLED)、表面传导电子发射器显示器(SED)、场发射显示器(FED)、量子点发光二极管(QD-LED)、微机电***(MEMS)和/或相似显示器类型。在一些具体实施中,一个或多个显示器312对应于衍射、反射、偏振、全息等波导显示器。例如,电子设备120包括单个显示器。又如,电子设备120包括针对用户的每只眼睛的显示器。在一些具体实施中,一个或多个显示器312能够呈现AR和VR内容。在一些具体实施中,一个或多个显示器312能够呈现AR或VR内容。
在一些具体实施中,图像捕获设备370对应于一个或多个RGB相机(例如,具有互补金属氧化物半导体(CMOS)图像传感器或电荷耦合器件(CCD)图像传感器)、IR图像传感器、基于事件的相机等。在一些具体实施中,图像捕获设备370包括透镜组件、光电二极管和前端架构。在一些具体实施中,图像捕获设备370包括面向外部和/或面向内部的图像传感器。
存储器320包括高速随机存取存储器,诸如DRAM、SRAM、DDR RAM或其他随机存取固态存储器设备。在一些具体实施中,存储器320包括非易失性存储器,诸如一个或多个磁盘存储设备、光盘存储设备、闪存存储器设备或其他非易失性固态存储设备。存储器320任选地包括远离所述一个或多个处理单元302定位的一个或多个存储设备。存储器320包括非暂态计算机可读存储介质。在一些具体实施中,存储器320或者存储器320的非暂态计算机可读存储介质存储下述程序、模块和数据结构或者它们的子集,其中包括可选的操作***330和呈现引擎340。
操作***330包括用于处理各种基础***服务和用于执行硬件相关任务的过程。在一些具体实施中,呈现引擎340被配置为经由一个或多个显示器312向用户呈现媒体项和/或XR内容。出于该目的,在各种具体实施中,呈现引擎340包括数据获取器342、呈现器466、交互处理程序420和数据传输器350。
在一些具体实施中,数据获取器342被配置为从电子设备120的I/O设备及传感器306、控制器110、和远程输入设备中的至少一者获取数据(例如,呈现数据,诸如与用户界面或XR环境相关联的渲染的图像帧、输入数据、用户交互数据、头部跟踪信息、相机姿态跟踪信息、眼睛跟踪信息、手部/肢体/手指/四肢跟踪信息、传感器数据、位置数据等)。为此,在各种具体实施中,数据获取器342包括指令和/或用于这些指令的逻辑部件以及启发法和用于该启发法的元数据。
在一些具体实施中,交互处理程序420被配置为检测与所呈现的A/V内容和/或XR内容的用户交互(例如,经由手部跟踪检测到的手势输入、经由眼睛跟踪检测到的眼睛注视输入、语音命令等)。为此,在各种具体实施中,交互处理程序420包括指令和/或用于这些指令的逻辑部件以及启发法和用于该启发法的元数据。
在一些具体实施中,呈现器466被配置为经由一个或多个显示器312呈现和更新A/V内容和/或XR内容(例如,与用户界面或XR环境128相关联的渲染的图像帧,包括XR内容、与XR内容相关联的一个或多个UI元素以及与一个或多个UI元素中的一个UI元素相关联的焦点指示符)。为此,在各种具体实施中,呈现器466包括指令和/或用于这些指令的逻辑部件以及启发法和用于该启发法的元数据。
在一些具体实施中,数据传输器350被配置为至少向控制器110传输数据(例如,呈现数据、位置数据、用户交互数据、头部跟踪信息、相机姿态跟踪信息、眼睛跟踪信息、手部/肢体/手指/四肢跟踪信息等)。为此,在各种具体实施中,数据传输器350包括指令和/或用于这些指令的逻辑以及启发法和用于该启发法的元数据。
尽管数据获取器342、交互处理程序420、呈现器466和数据传输器350被示出为驻留在单个设备(例如,电子设备120)上,但应当理解,在其他具体实施中,数据获取器342、交互处理程序420、呈现器466和数据传输器350的任何组合可以位于单独的计算设备中。
此外,图3更多地用作存在于特定具体实施中的各种特征部的功能描述,而不是本文所述具体实施的结构示意。如本领域的普通技术人员将认识到的,单独显示的项目可以组合,并且一些项目可以分开。例如,图3中单独示出的一些功能模块可以在单个模块中实现,并且单个功能块的各种功能可在各种具体实施中通过一个或多个功能块来实现。模块的实际数量和特定功能的划分以及如何在其中分配特征将根据具体实施而变化,并且在一些具体实施中,部分地取决于为特定实施方案选择的硬件、软件和/或固件的特定组合。
图4A是根据一些具体实施的示例性记录架构400的框图。尽管示出了相关特征,但本领域的普通技术人员将从本公开中认识到,为简洁起见并且为了不模糊本文所公开的示例性具体实施的更多相关方面,未示出各种其他特征。为此,作为非限制性示例,记录架构400包括在计算***中,该计算***诸如图1和图2所示的控制器110;图1和图3所示的电子设备120;和/或它们的合适组合中。
如图4A所示,控制器110、电子设备120和/或其组合的一个或多个本地传感器402获取与物理环境105相关联的本地传感器数据403。例如,本地传感器数据403包括物理环境105的图像或其流、物理环境105的同时定位与地图构建(SLAM)信息以及电子设备120或用户150相对于物理环境105的位置、物理环境105的环境照明信息、物理环境105的环境音频信息、物理环境105的声学信息、物理环境105的维度信息、物理环境105内的对象的语义标签等。在一些具体实施中,本地传感器数据403包括未处理的或后处理的信息。
类似地,如图4A所示,与物理环境105内的任选远程输入设备相关联的一个或多个远程传感器404获取与物理环境105相关联的远程传感器数据405。例如,远程传感器数据405包括物理环境105的图像或其流、物理环境105的SLAM信息以及电子设备120或用户150相对于物理环境105的位置、物理环境105的环境照明信息、物理环境105的环境音频信息、物理环境105的声学信息、物理环境105的维度信息、物理环境105内的对象的语义标签等。在一些具体实施中,远程传感器数据405包括未处理的或后处理的信息。
根据一些具体实施,隐私架构408摄取本地传感器数据403和远程传感器数据405。在一些具体实施中,隐私架构408包括与用户信息和/或识别信息相关联的一个或多个隐私过滤器。在一些具体实施中,隐私架构408包括选择加入特征部,其中电子设备120通知用户150正在监视哪些用户信息和/或识别信息以及将如何使用这些用户信息和/或识别信息。在一些具体实施中,隐私架构408选择性地防止和/或限制内容递送架构400或其部分获取和/或传输用户信息。为此,隐私架构408响应于提示用户150进行用户偏好和/或选择来接收来自用户150的用户偏好和/或选择。在一些具体实施中,隐私架构408防止内容递送架构400获取和/或传输用户信息,除非并且直到隐私架构408从用户150获取到知情同意。在一些具体实施中,隐私架构408匿名化(例如,加扰、模糊化、加密等)某些类型的用户信息。例如,隐私架构408接收指定隐私架构408将哪些类型的用户信息匿名化的用户输入。作为另一示例,隐私架构408独立于用户指定(例如,自动地)匿名化可能包括敏感和/或识别信息的某些类型的用户信息。
根据一些具体实施,身体/头部姿态跟踪引擎412在经受隐私架构408之后获取本地传感器数据403和远程传感器数据405。在一些具体实施中,身体/头部姿态跟踪引擎412基于输入数据确定姿态表征向量413,并且随时间推移更新姿态表征向量413。在一些具体实施中,身体/头部姿态跟踪引擎412还执行手部/四肢跟踪。
图5示出了根据一些具体实施的姿态表征向量413的示例性数据结构。如图5所示,姿态表征向量413可以对应于N-元组表征向量或表征张量,其包括时间戳511(例如,姿态表征向量413最近更新的时间)、头部姿态描述符512A(例如,向上、向下、中性等)、头部姿态的平移值512B、头部姿态的旋转值512C、身体姿态描述符514A(例如,站立、坐着、俯卧等)、身体部位/四肢/肢体/关节的平移值514B、身体部位/四肢/肢体/关节的旋转值514C和/或杂项信息516。在一些具体实施中,姿态表征向量413还包括与手部/四肢跟踪相关联的信息。本领域的普通技术人员将理解,图5中的姿态表征向量413的数据结构仅仅是一个示例,其可以在各种其他具体实施中包括不同的信息部分,并且可以在各种其他具体实施中以多种方式构造。
根据一些具体实施,眼睛跟踪引擎414在经受隐私架构408之后获取本地传感器数据403和远程传感器数据405。在一些具体实施中,眼睛跟踪引擎414基于输入数据确定眼睛跟踪向量415,并且随时间推移更新眼睛跟踪向量415。
图5示出了根据一些具体实施的用于眼睛跟踪向量415的示例性数据结构。如图5所示,眼睛跟踪向量415可以对应于N-元组表征向量或表征张量,其包括时间戳521(例如,眼睛跟踪向量415最近更新的时间)、当前注视方向的一个或多个角度值522、当前注视方向的一个或多个平移值524和/或杂项信息526。本领域的普通技术人员将理解,图5中的眼睛跟踪向量415的数据结构仅仅是一个示例,其可以在各种其他具体实施中包括不同的信息部分,并且可以在各种其他具体实施中以多种方式构造。
例如,注视方向指示用户150当前正在查看的物理环境105中的点(例如,与相对于物理环境105或整个世界的x坐标、y坐标和z坐标相关联)、物理对象或感兴趣区域(ROI)。作为另一示例,注视方向指示用户150当前正在查看的XR环境128中的点(例如,与相对于XR环境128的x坐标、y坐标和z坐标相关联)、XR对象或感兴趣区域(ROI)。
根据一些具体实施,环境信息引擎416在经受隐私架构408之后获取本地传感器数据403和远程传感器数据405。在一些具体实施中,环境信息引擎416基于输入数据确定环境信息向量417,并且随时间推移更新环境信息向量417。
图5示出了根据一些具体实施的用于环境信息向量417的示例性数据结构。如图5所示,环境信息向量417可以对应于N-元组表征向量或表征张量,其包括时间戳531(例如,环境信息向量417最近更新的时间)、一个或多个环境音频值532、一个或多个环境照明值534、一个或多个环境值536(例如,温度、湿度、压力等)和/或杂项信息538。本领域的普通技术人员将理解,图5中的环境信息向量417的数据结构仅仅是一个示例,其可以在各种其他具体实施中包括不同的信息部分,并且可以在各种其他具体实施中以多种方式构造。
根据一些具体实施,交互处理程序420获取(例如,接收、检索或检测)由用户150提供的一个或多个用户输入421,该一个或多个用户输入与选择A/V内容、VA和/或XR内容以供呈现相关联。例如,一个或多个用户输入421对应于从经由手部跟踪检测到的UI菜单中选择XR内容的手势输入、从经由眼睛跟踪检测到的UI菜单中选择XR内容的眼睛注视输入、从经由麦克风检测到的UI菜单中选择XR内容的语音命令等。在一些具体实施中,内容选择器422基于一个或多个用户输入421(例如,语音命令、从XR内容项的菜单中的选择等),从内容库425中选择XR内容或VA 427。在一些具体实施中,交互处理程序420获取(例如,接收、检索或检测)由用户150提供的一个或多个用户输入421,该一个或多个用户输入与操纵或以其他方式修改所呈现的A/V内容、VA、XR内容、UI元素等相关联。
在各种具体实施中,内容管理器430管理和更新XR环境128的布局、设置、结构等,该XR环境包括VA、XR内容、与XR内容相关联的一个或多个UI元素等中的一者或多者。为此,内容管理器430包括过去帧缓冲器434、内容更新器436和反馈引擎438。
在一些具体实施中,过去帧缓冲器434包括用于一个或多个过去实例和/或帧的XR内容、渲染的图像帧等。在一些具体实施中,内容更新器436基于传感器输入419(即,向量413、415和417的集合)、与修改XR内容或VA相关联的未处理的用户输入423、物理环境105内的对象的平移或旋转运动、电子设备120(或用户150)的平移或旋转运动等,随时间推移修改XR环境128。在一些具体实施中,反馈引擎438生成与XR环境128相关联的感官反馈(例如,视觉反馈(诸如文本或照明变化)、音频反馈、触觉反馈等)。
根据一些具体实施,姿态确定器452至少部分地基于传感器输入419(即,向量413、415和417的集合)确定电子设备120和/或用户150相对于XR环境128和/或物理环境105的当前相机姿态。在一些具体实施中,渲染器454根据相对于其的当前相机姿态,渲染所选择的XR内容或VA 427、与XR内容相关联的一个或多个UI元素等。
根据一些具体实施,任选的图像处理架构462从图像捕获设备370获取图像流,该图像流包括来自电子设备120和/或用户150的当前相机姿态的物理环境105的一个或多个图像。在一些具体实施中,图像处理架构462还对图像流执行一个或多个图像处理操作,诸如扭曲、颜色校正、γ校正、锐化、降噪、白平衡等。在一些具体实施中,任选的合成器464将渲染的XR内容与来自图像处理架构462的物理环境105的经处理的图像流合成,以产生XR环境128的渲染的图像帧。在各种具体实施中,呈现器466经由一个或多个显示器312向用户150呈现XR环境128的渲染的图像帧。本领域的普通技术人员将理解,任选的图像处理架构462和任选的合成器464可能不适用于完全虚拟环境(或光学透传场景)。
在一些具体实施中,记录管理器470填充并管理记录库475。在一些具体实施中,记录管理器470至少部分地基于用户配置文件/偏好476填充记录480(例如,仅记录层A和层B,记录所有层,记录所有VA和所有VA感官感知等)。如图4B所示,记录管理器470摄取以下至少一些内容:未处理的用户输入423(例如,一个或多个层选择输入、VA选择输入、层选择输入、XR内容选择输入等);传感器输入419(即,向量413、415和417的集合);所选择的XR内容或VA427;经处理的XR内容431;渲染的XR内容455;物理环境105的经处理的图像流463;以及合成的内容465(例如,XR环境128的渲染的图像帧)。在图4B中,记录管理器基于摄取的内容生成记录480以供将来回放,并将记录480存储在记录库475中。
如图4C所示,记录480包括:环境数据482(例如,环境音频信息、环境照明信息等,类似于图4A中的环境信息向量417);层数据483(例如,与各个层相关联的数据流);与用户POV 484相关联的一个或多个数据流(例如,物理环境105的经处理的图像流463、渲染的XR内容455、合成的内容465等);与本文中称为VA POV-1 486A的第一VA的POV相关联的一个或多个流(例如,与诸如感觉-1、感觉-2、…、感觉-N等各种感官感知相关联的数据流);与本文中称为VA POV-2 486B的第二VA的POV相关联的多个流(例如,与诸如感觉-1、感觉-2、…、感觉-N等各种感官感知相关联的数据流);和与本文中称为VA POV-N 486N的第N VA的POV相关联的一个或多个流(例如,与诸如感觉-1、感觉-2、…、感觉-N等各种感官感知相关联的数据流)。
在一个示例中,层数据483包括与不同层相关联的一个或多个数据流,这些数据流已在记录期间基于用户输入421来切换打开。继续此示例,图6E示出了用于在记录期间切换层的菜单652。在另一示例中,与本文中称为VA POV-1 486A的第一VA的POV相关联的一个或多个流对应于不同感官模态,该不同感官模态已在记录期间基于用户输入421来切换打开。继续此示例,图6D示出了用于在记录期间切换感官模态的菜单642。
根据一些具体实施,相应VA的感觉对应于由相应VA的感知配置文件定义的不同感官感知或感官模态。例如,特定VA可以具有与可见波长感知、红外波长感知、嗅觉感知、听觉感知等相关联的感觉。在一些具体实施中,每个VA均与预定义感知配置文件相关联,该预定义感知配置文件包括其感官模态以及其感官模态的敏锐度值或参数(例如,20/20视力、嗅觉感知的灵敏度值、听觉感知的频率范围等)。本领域的普通技术人员将理解,在各种具体实施中,VA可以具有带多种不同感官模态以及相关联敏锐度值的变化的感知配置文件。
如图4C所示,记录480包括多个数据流,该多个数据流包括来自电子设备120或用户150的POV的渲染的XR内容455、物理环境105的经处理的图像流463、合成的内容465以及与来自至少一个VA的POV的各种感官感知相关联的一个或多个数据流。在一些具体实施中,时序器472使与记录480相关联的多个数据流在时间上同步。在一些具体实施中,外推器471填充与来自VA的POV的各种感官感知相关联的一个或多个数据流中的数据间隙。在一些具体实施中,层处理程序474基于切换一个或多个层的未处理的用户输入423启用或禁用一个或多个层。
如图4C所示,记录库475包括XR环境128的多个先前记录的实例,至少包括记录480。在一些具体实施中,记录库475相对于控制器110和/或电子设备120位于本地。在一些具体实施中,记录库475位于远离控制器110和/或电子设备120的位置(例如,位于远程服务器、云服务器等处)。
图4D是根据一些具体实施的示例性运行时架构490的框图。尽管示出了相关特征,但本领域的普通技术人员将从本公开中认识到,为简洁起见并且为了不模糊本文所公开的示例性具体实施的更多相关方面,未示出各种其他特征。为此,作为非限制性示例,运行时架构490包括在计算***中,诸如图1和图2所示的控制器110;图1和图3所示的电子设备120;和/或它们的合适组合中。图4D中的运行时架构490与图4A中的记录架构400类似并且改编自图4A中的该记录架构。因此,图4A和图4D中使用了类似的参考号。此外,为了简明起见,下文仅描述图4A和图4D之间的差异。在一些具体实施中,运行时架构490缺少记录管理器470。
在一些具体实施中,内容选择器422基于一个或多个用户输入421(例如,语音命令、基于手部跟踪输入或显示器122上的触摸输入从菜单的选择等),从内容库425和/或记录库480选择内容477。作为一个示例,所选择的内容477包括来自内容库425的XR内容或VA。作为另一示例,所选择的内容477包括来自记录库475的XR环境128(例如,记录480)的先前记录的实例。作为又一示例,所选择的内容477包括来自内容库425的XR内容或VA以及来自记录库475的XR环境128的先前记录的实例(例如,记录480)。
图6A至图6F示出了根据一些具体实施的记录场景的实例610-650和660的序列。尽管示出了一些具体特征,但本领域的技术人员将从本公开中认识到,为简洁起见并且为了不模糊本文所公开的具体实施的更多相关方面,未示出各种其他特征。为此,作为非限制性示例,实例610-650的序列由计算***渲染和呈现,该计算***诸如:图1和图2所示的控制器110;图1和图3所示的电子设备120;和/或它们的合适组合中。
如图6A至图6E所示,记录场景包括物理环境105和显示在电子设备120的显示器122上(例如,与用户150相关联)的XR环境128。当用户150物理地存在于物理环境105内时,电子设备120向用户150呈现XR环境128,该物理环境包括当前位于电子设备120的面向外部的图像传感器的FOV 111内的门115。因此,在一些具体实施中,用户150将电子设备120握持在他/她的手中,类似于图1中的操作环境100。
换句话讲,在一些具体实施中,电子设备120被配置为呈现XR内容并使得能够实现显示器122上的物理环境105的至少一部分的光学透传或视频透传(例如,门115)。例如,电子设备120对应于移动电话、平板电脑、膝上型电脑、近眼***、可穿戴计算设备等。
如图6A所示,在记录场景的实例610期间(例如,与时间T1相关联),电子设备120呈现XR环境128,该XR环境包括XR内容602(例如,3D圆柱体)以及虚拟代理604和606。如图6A所示,XR环境128包括与引导用户150记录XR环境128的VA POV相关联的文本框612(例如,“选择一个或多个VA或虚拟对象”进行记录)。本领域的普通技术人员将理解,文本框612仅仅是示例性通知,并且电子设备120可以呈现各种其他通知可视化或通知模态,诸如触觉反馈、声音通知等。
如图6B所示,在记录场景的实例620期间(例如,与时间T2相关联),电子设备120在与XR环境128内的VA 606相对应的位置处检测到用户输入622(例如,显示器122上的单击或双击手势)。本领域的普通技术人员将理解,用户输入622仅仅是示例性用户输入,并且电子设备120可以检测各种其他输入模态,诸如语音命令、手部跟踪输入等。
如图6C所示,在记录场景的实例630期间(例如,与时间T3相关联),响应于在图6B中检测到用户输入622,电子设备120呈现XR环境128,该XR环境包括与确认XR环境128的VA606的当前POV的记录相关联的文本框632(例如,“正在记录VA 606的POV”)。本领域的普通技术人员将理解,文本框632仅仅是示例性通知,并且可以向用户呈现各种其他可视化或通知模态。本领域的普通技术人员将理解,文本框632仅仅是示例性通知,并且电子设备120可以呈现各种其他通知可视化或通知模态,诸如触觉反馈、声音通知等。
在图6C至图6F中的记录场景期间,电子设备120在记录时还显示记录指示符635(例如,图标、徽章、文本等)。在一些具体实施中,记录指示符635还可以显示给参与XR体验(有时在本文中也称为“XR会话”)的其他用户(如果有的话)。本领域的普通技术人员将理解,记录指示符635仅仅是可以在各种其他一些具体实施中修改或替换的示例性可视化。
如图6D所示,在记录场景的实例640期间(例如,与时间T4相关联),电子设备120呈现XR环境128,该XR环境包括与VA 606的感官模态相关联的菜单642。作为一个示例,响应于检测到来自用户150的语音输入,电子设备120在XR环境128内呈现与切换感官模态相关联的菜单642。在图6D中,菜单642包括与VA 606的可以切换打开或关闭的不同感觉相关联的多个可选选项,诸如感觉-1 644A、感觉-2 644B、感觉-N 644N和全部感觉646。例如,菜单642内的多个可选选项可以通过各种输入模态来选择,诸如显示器122上的点击/触摸输入、手部跟踪输入、语音命令等。
如图6D所示,在记录场景的实例640期间(例如,与时间T4相关联),电子设备120经由身体/头部姿势跟踪引擎412检测用户150的左手151的与在菜单642内选择选项646相关联的手势输入。在图6D中,电子设备120在XR环境128内呈现用户150的左手151的表示645。响应于检测到左手151的手势输入,电子设备120在XR环境128内记录来自VA 606的当前POV的多个数据流,其中多个数据流中的每个数据流都与VA 606的不同感觉(例如,感官感知或感官模态)相关联(例如,可见波长感知、红外波长感知、嗅觉感知、听觉感知等)。本领域的普通技术人员将理解,用户150的左手151的手势输入仅仅是示例性用户输入,并且电子设备120可以检测各种其他输入模态,诸如语音命令、手部跟踪输入等。
如图6E所示,在记录场景的实例650期间(例如,与时间T5相关联),电子设备120呈现XR环境128,该XR环境包括与切换各个层相关联的菜单652。作为一个示例,响应于检测到来自用户150的语音输入,电子设备120在XR环境128内呈现与切换层相关联的菜单652。在图6E中,菜单652包括与可以切换打开或关闭的层相关联的多个可选选项,诸如网格/点云654A、遮挡654B、骨架绑定654C、预测轨迹654D、预测动作654E、标记654F、特定于应用的信息654G、其他654H和全部654I。例如,菜单652内的多个可选选项可以通过各种输入模态来选择,诸如显示器122上的点击/触摸输入、手部跟踪输入、语音命令等。本领域的普通技术人员将理解,菜单652中的可选选项是可以在各种其他具体实施中修改的示例。
如图6E所示,在记录场景的实例650期间(例如,与时间T5相关联),电子设备120检测与在菜单652内选择选项654I相关联的语音输入656(例如,“选择全部”)。响应于检测到语音输入656,电子设备120在记录VA 606的当前POV时切换打开(或启用)所有层。
在一些具体实施中,XR环境128可以包括多个UI元素,当选择这些元素时,会导致在XR环境128内执行操作或动作,诸如移除XR内容、操作XR内容、修改XR内容、显示一组选项、显示可以被实例化到XR环境128中的其他XR内容的菜单等。例如,与多个UI元素相关联的操作或动作可以包括以下一项:在XR环境128内平移XR内容,在XR环境128内旋转XR内容,修改XR内容的配置或部件,修改XR内容的形状或大小,修改XR内容的外观(例如,纹理、颜色、亮度、对比度、阴影等),修改与XR环境128相关联的照明,修改与XR环境128相关联的环境条件等。
如图6F所示,在记录场景的实例660期间(例如,与时间T3相关联),与同样参与和用户150的XR体验的第二用户152相关联的电子设备121在显示器123上显示XR环境129,该XR环境包括XR内容602以及虚拟代理606和607。例如,虚拟代理607对应于用户150,虚拟代理606对应于非用户字符,并且虚拟代理604对应于第二用户152。如图6F所示,XR环境129包括与在图6C中选择加入由用户150发起的记录相关联的通知662。如图6F所示,通知662包括:“是”示能表示664,当选择该示能表示时(例如,通过触摸输入、手部/四肢跟踪输入、语音输入等),该示能表示允许用户150记录第二用户152的虚拟代理(例如,图6A至图6E中的虚拟代理604);和“否”示能表示666,当选择该示能表示时,该示能表示不允许用户150记录第二用户152的虚拟代理(例如,图6A至图6E中的虚拟代理604)。本领域的普通技术人员将理解,通知662仅仅是示例性通知,并且电子设备122可以呈现各种其他通知可视化或通知模态,诸如触觉反馈、声音通知等。
如上所述,包括如关于图6A至图6E所述,本技术记录来自XR会话的信息,用于诸如调试被执行以提供XR会话的计算机编程指令的目的。可以设想,所收集的信息可以包括关于用户移动和与XR环境的交互的信息。负责记录、收集、存储、传输和/或处理记录的XR信息的实体应遵守完善的隐私政策和/或隐私惯例。这些策略和/或惯例至少应符合或超出行业或政府要求。
本公开还设想到某些特征部诸如隐私架构408(如上文参考图4所讨论)和记录指示符635(如图6C至图6E所示)可以提高用户对记录的认识,无论这些记录是用于调试还是其他允许的目的。此外,如图6A至图6E的示例性图示所示,发起XR记录涉及用户(例如,用户150)提供的明确指示。换句话讲,用户必须选择加入才能发起记录。此外,如图6F的示例所示,正在记录的其他用户(如果有的话)会收到通知,使得他们可以选择退出。本技术的实施者有意考虑这些方面以及任何其他方面,以最好地促进用户隐私。
图7A至图7S示出了根据一些具体实施的回放场景的实例710-7190的序列。尽管示出了一些具体特征,但本领域的技术人员将从本公开中认识到,为简洁起见并且为了不模糊本文所公开的具体实施的更多相关方面,未示出各种其他特征。为此,作为非限制性示例,实例710-7130的序列由计算***渲染和呈现,该计算***诸如:图1和图2所示的控制器110;图1和图3所示的电子设备120;和/或它们的合适组合中。
图7A至图7S中的实例710-7190的序列与图6A至图6E中的实例610-650的序列类似并且改编自图6A至图6E中的实例610-650的序列。因此,图6A至图6E和图7A至图7S中使用了类似的参考号。此外,为了简明起见,下文仅描述图6A至图6E和图7A至图7S之间的差异。
如图7A所示,在回放场景的实例710期间(例如,与时间T1相关联),电子设备120呈现XR环境128,该XR环境包括:与多个预先存在的记录相关联的菜单712以供回放。在图7A中,菜单712包括与预先存在的记录(诸如记录-1 714A、记录-2 714B和记录-N 714N)相关联的多个可选选项。例如,菜单712内的多个可选选项可以通过各种输入模态来选择,诸如显示器122上的点击/触摸输入、手部跟踪输入、语音命令等。如图7A所示,在回放场景的实例710期间(例如,与时间T1相关联),电子设备120检测与在菜单712内选择选项714A相关联的语音输入716(例如,“请回放记录-1”)。
如图7B所示,在回放场景的实例720期间(例如,与时间T2相关联),响应于在图7A中检测到语音输入716,电子设备120呈现与记录-1 714A的第一POV(例如,中性POV或与用户150相关联的POV)相关联的XR环境128A,该XR环境包括XR内容602(例如,3D圆柱体)以及虚拟代理604和606(例如,如图6A至图6E中所述)。在图7B中,XR环境128A包括控制菜单722,该控制菜单具有用于控制回放的多个UI元素,诸如时间洗涤器724、暂停示能表示726A、播放示能表示726B、音量调整示能表示726C和选项示能表示726N。例如,控制菜单722内用于控制回放的多个UI元素可以由各种输入模态控制,诸如显示器122上的点击/触摸输入、手部跟踪输入、语音命令等。本领域的普通技术人员将理解,控制菜单722的示能表示和布局是可以在各种其他具体实施中以多种方式修改的示例。
如图7B所示,在回放场景的实例720期间(例如,与时间T2相关联),电子设备120在与控制菜单722内的选项示能表示726N相对应的位置处检测到用户输入728(例如,显示器122上的单击或双击手势)。本领域的普通技术人员将理解,用户输入728仅仅是示例性用户输入,并且电子设备120可以检测各种其他输入模态,诸如语音命令、手部跟踪输入等。
如图7C所示,在回放场景的实例730期间(例如,与时间T3相关联),响应于在图7B中检测到用户输入728,电子设备120呈现与切换各个层相关联的菜单732。在图7C中,菜单732包括与可以切换打开或关闭的层相关联的多个可选选项,诸如网格/点云654A、遮挡654B、骨架绑定654C、预测轨迹654D、预测动作654E、标记654F、特定于应用的信息654G、其他654H和全部654I。例如,菜单732内的多个可选选项可以通过各种输入模态来选择,诸如显示器122上的点击/触摸输入、手部跟踪输入、语音命令等。
如图7D所示,在回放场景的实例740期间(例如,与时间T4相关联),电子设备120继续从第一POV呈现记录-1 714A,该记录包括XR内容602(例如,3D圆柱体)以及虚拟代理604和606。如图7D所示,在回放场景的实例740期间(例如,与时间T4相关联),电子设备120经由身体/头部姿态跟踪引擎412检测用户150的左手151的与在XR环境128A内选择VA 606相关联的手势输入。在图7D中,电子设备120在XR环境128A内呈现用户150的左手151的表示645。本领域的普通技术人员将理解,用户150的左手151的手势输入仅仅是示例性用户输入,并且电子设备120可以检测各种其他输入模态,诸如语音命令、手部跟踪输入等。
如图7E所示,在回放场景的实例750期间(例如,与时间T5相关联),响应于在图7D中检测到左手151的手势输入,电子设备120呈现XR环境128A,该XR环境包括与确认POV转变相关联的文本框752(例如,“转变到VA 606的POV”)。本领域的普通技术人员将理解,文本框752仅仅是示例性通知,并且电子设备120可以呈现各种其他通知可视化或通知模态,诸如触觉反馈、声音通知等。
如图7F所示,在回放场景的实例760期间(例如,与时间T6相关联),电子设备120呈现与记录-1 714A的第二POV(例如,VA 606的POV)相关联的XR环境128B,该XR环境包括XR内容602(例如,3D圆柱体)和虚拟代理604。在图7F中,XR环境128B包括XR环境128A的控制菜单722和视图762。本领域的普通技术人员将理解,在各种其他具体实施中,可以修改或以其他方式改变XR环境128A的视图762的画中画(PIP)性质。如图7F所示,在回放场景的实例760期间(例如,与时间T6相关联),电子设备120检测与示出各种感官模态的可视化相关联的语音输入764(例如,“显示感官感知选项”)。
如图7G所示,在回放场景的实例770期间(例如,与时间T7相关联),电子设备120继续呈现与记录-1 714A的第二POV(例如,VA 606的POV)相关联的XR环境128B,并且还响应于在图7F中检测到语音输入764而呈现菜单772。在图7G中,菜单772包括与切换打开或关闭VA606的各种感官模态相关联的多个可选选项,诸如感觉-1 644A、感觉-2 644B、感觉-N 644N和全部感觉646。例如,菜单772内的多个可选选项可以通过各种输入模态来选择,诸如显示器122上的点击/触摸输入、手部跟踪输入、语音命令等。
如图7H所示,在回放场景的实例780期间(例如,与时间T8相关联),响应于在图7G中检测到在菜单772内选择感觉-1 644A,电子设备120基于VA 606的感知配置文件,呈现VA606的视觉感官感知的可视化782。本领域的普通技术人员将理解,图7H中的视觉可视化782是可以在各种其他具体实施中替换或以其他方式修改的示例。例如,VA 606的感知配置文件包括VA 606的各种感官感知的参数和敏锐度值。继续此示例,VA 606的感知配置文件可以包括与VA 606的视觉感官感知相关联的视觉敏锐度值(例如,20/20视力)、与VA 606的视觉感官感知相关联的焦距值、与VA 606的视觉感官感知相关联的视见平截头体(例如,圆锥体等)视觉的3D形状等。
如图7I所示,在回放场景的实例790期间(例如,与时间T9相关联),响应于在图7G中检测到在菜单772内选择感觉-2 644B,电子设备120基于VA 606的感知配置文件,呈现VA606的听觉感官感知的可视化792。本领域的普通技术人员将理解,图7I中的听觉可视化792是可以在各种其他具体实施中替换或以其他方式修改的示例。例如,VA 606的感知配置文件包括VA 606的各种感官感知的参数和敏锐度值。继续此示例,VA 606的感知配置文件可以包括与VA 606的听觉感官感知相关联的一个或多个听觉敏锐度值(例如,频率范围、灵敏锐度值等)、与VA 606的听觉感官感知相关联的听觉范围的3D形状(例如,球体、部分球体等)等。
如图7J所示,在回放场景的实例7100期间(例如,与时间T10相关联),响应于在图7G中检测到在菜单772内选择感觉-N 644N,电子设备120基于VA 606的感知配置文件,分别呈现VA 606相对于VA 604和XR内容602的嗅觉感官感知的第一可视化7102和第二可视化7104。作为一个示例,关于第一可视化7102和第二可视化7104,更强的气味(如VA 606所感知)与更长或更粗的方向箭头相关联。本领域的普通技术人员将理解,图7J中的嗅觉可视化7102和7104是可以在各种其他具体实施中以热图、向量场、粒子流、有气味的或散发气味的对象的突出显示等来替换或以其他方式修改。
例如,VA 606的感知配置文件包括VA 606的各种感官感知的参数和敏锐度值。继续此示例,VA 606的感知配置文件可以包括与VA 606的嗅觉感官感知相关联的一个或多个嗅觉敏锐度值(例如,气味范围、灵敏度值等)、与VA 606的嗅觉感官感知相关联的听觉范围的3D形状(例如,球体、部分球体等)等。
如图7K所示,在回放场景的实例7110期间(例如,与时间T11相关联),电子设备120继续呈现与记录-1 714A的第二POV(例如,VA 606的POV)相关联的XR环境128B。此外,在图7K中,在回放场景的实例7110期间(例如,与时间T11相关联),电子设备120检测与另一POV转变相关联的语音输入7112(例如,“切换到VA 604的POV”)。
如图7L所示,在回放场景的实例7120期间(例如,与时间T12相关联),电子设备120继续呈现与记录-1 714A的第二POV相关联的XR环境128B,并且还响应于在图7K中检测到语音输入7112,呈现与确认POV转变相关联的文本框7122(例如,“转变到VA 604的POV”)。本领域的普通技术人员将理解,文本框7122仅仅是示例性通知,并且电子设备120可以呈现各种其他通知可视化或通知模态,诸如触觉反馈、声音通知等。
如图7M所示,在回放场景的实例7130期间(例如,与时间T13相关联),电子设备120呈现与记录-1 714A的第三POV(例如,VA 604的POV)相关联的XR环境128C,该XR环境包括XR内容602(例如,3D圆柱体)和虚拟代理606。在图7M中,XR环境128C包括XR环境128A的视图762。本领域的普通技术人员将理解,在各种具体实施中,可以修改或以其他方式改变XR环境128A的视图762的PIP性质。此外,在图7M中,在回放场景的实例7130期间(例如,与时间T13相关联),电子设备120检测与显示与切换各个层相关联的菜单732相关联的语音输入7132(例如,“显示层切换菜单”)。
如图7N所示,在回放场景的实例7140期间(例如,与时间T14相关联),响应于在图7M中检测到语音输入7132,电子设备120呈现与切换各个层相关联的菜单732。此外,在图7N中,在回放场景的实例7140期间(例如,与时间T14相关联),电子设备120在与菜单732内的示能表示654D相对应的位置处检测到用户输入7142(例如,显示器122上的单击或双击手势)。本领域的普通技术人员将理解,用户输入7142仅仅是示例性用户输入,并且电子设备120可以检测各种其他输入模态,诸如语音命令、手部跟踪输入等。
如图7O所示,在回放场景的实例7150期间(例如,与时间T15相关联),响应于在图7N中检测到选择示能表示654D,电子设备120显示VA 604的预测轨迹或路径7152。
如图7P所示,在回放场景的实例7160期间(例如,与时间T16相关联),响应于在图7M中检测到语音输入7132,电子设备120呈现与切换各个层相关联的菜单732。此外,在图7P中,在回放场景的实例7160期间(例如,与时间T16相关联),电子设备120在与菜单732内的示能表示654E相对应的位置处检测到用户输入7162(例如,显示器122上的单击或双击手势)。本领域的普通技术人员将理解,用户输入7162仅仅是示例性用户输入,并且电子设备120可以检测各种其他输入模态,诸如语音命令、手部跟踪输入等。
如图7Q所示,在回放场景的实例7170期间(例如,与时间T17相关联),响应于在图7P中检测到选择示能表示654E,电子设备120显示VA 604的预测动作7172的指示。例如,预测动作7172(例如,与VA 606交互)对应于VA 604的当前目标,诸如与其他VA进行对话,使用VA606表演短剧等。
如图7R所示,在回放场景的实例7180期间(例如,与时间T18相关联),响应于在图7M中检测到语音输入7132,电子设备120呈现与切换各个层相关联的菜单732。此外,在图7R中,在回放场景的实例7180期间(例如,与时间T18相关联),电子设备120在与菜单732内的示能表示654B相对应的位置处检测到第一用户输入7182(例如,显示器122上的单击或双击手势),并且还在与菜单732内的示能表示654C相对应的位置处检测到第二用户输入7184(例如,显示器122上的单击或双击手势)。本领域的普通技术人员将理解,用户输入7182和7184仅仅是示例性用户输入,并且电子设备120可以检测各种其他输入模态,诸如语音命令、手部跟踪输入等。
如图7S所示,在回放场景的实例7190期间(例如,与时间T19相关联),响应于在图7R中检测到选择示能表示654B,电子设备120显示通知7192(例如,“从VA 604的POV无遮挡”)。此外,在图7S中,在回放场景的实例7190期间(例如,与时间T19相关联),响应于在图7R中检测到选择示能表示654C,电子设备120显示VA 606的骨架表示7194。
图8是根据一些具体实施的记录XR环境的方法800的流程图表示。在各种具体实施中,方法800在包括非暂态存储器和一个或多个处理器的计算***处执行,其中该计算***通信地耦接到显示设备和一个或多个输入设备(例如,图1和图3中所示的电子设备120;图1和图2中的控制器110;和/或它们的合适组合中)。在一些具体实施中,方法800由处理逻辑部件(包括硬件、固件、软件或其组合)执行。在一些具体实施中,方法800由执行存储在非暂态计算机可读介质(例如,存储器)中的代码的处理器执行。在一些具体实施中,电子***对应于平板电脑、膝上型电脑、移动电话、近眼***、可穿戴计算设备等中的一者。
如上文所讨论的,可以记录XR体验,由此,记录的视频数据包括与场景相关联的视频透传数据和XR数据两者的合成。当开发人员打算调试程序执行和图形内容回放(诸如虚拟代理(VA)和/或XR内容)时,此记录的视频数据可能不足。因此,本文所述的创新使得能够从用户的视角以及从所选择的VA的各种感觉的视角来记录XR体验。因此,在回放期间,用户可以通过虚拟代理的眼睛看到或听到VA听到的东西,或者可视化VA可以闻到的东西。此外,可以在回放期间切换打开/关闭各种层,诸如MR内容、视频透传、遮挡、标记、网格、点云、骨架绑定、特定于应用的数据等。换句话讲,本文所述的方法允许用户在图形环境中选择各个实体进行记录和回放,从而实现改进的调试、开发和用于共享或纪念目的的一般记录。
如框802所示,方法800包括经由显示设备呈现图形环境,该图形环境对应于包括一个或多个VA的与来自第一POV的物理环境的图像流合成的XR内容。在一些具体实施中,该图形环境对应于包括一个或多个虚拟代理的XR内容和从物理环境的第一视点(POV)捕获的物理环境的图像流的合成。例如,第一POV对应于计算***(即,用户)相对于物理环境的当前位置。如图6A至图6E所示,计算***或其部件(例如,图4A和图4D中的渲染引擎450和/或呈现器466)呈现XR环境128。作为一个示例,图6A示出了电子设备120从物理环境105的第一POV(例如,电子设备120或用户150的POV)呈现XR环境128,该XR环境包括XR内容602(例如,3D圆柱体)以及VA 604和VA 606。在一些具体实施中,一个或多个VA对应于人类、动物或机器人等中的一者。
在一些具体实施中,方法800包括:获取(例如,接收、检索、捕获或生成)与物理环境相关联的图像流;(例如,经由远程源或经由本地输入设备)以及通过基于计算***的第一POV将与物理环境相关联的图像流与XR内容合成来生成图形环境,其中XR内容包括一个或多个虚拟代理。在一个示例中,第一POV对应于计算***(即,用户150)相对于物理环境105的当前位置。
如框804所示,方法800包括记录与图形环境(及其部件)相关联的数据流。如图4B和图4C所示,计算***或其部件(例如,记录管理器470)填充存储在记录库475内的记录480。如图4C所示,记录480包括多个数据流,该多个数据流包括来自电子设备120或用户150的POV的渲染的XR内容455、物理环境105的经处理的图像流463、合成的内容465以及与来自至少一个VA的POV的各种感官感知相关联的一个或多个数据流。
如框806所示,方法800包括经由一个或多个输入设备检测在图形环境内选择VA(或虚拟对象)的用户输入。如图4A所示,计算***或其部件(例如,内容选择器422)检测一个或多个用户输入421,并基于一个或多个用户输入421(例如,语音命令、从菜单中选择XR内容项等)从内容库425中选择XR内容或VA 427。作为一个示例,图6A至图6C示出了在XR环境128内选择VA 606,以便记录来自VA 606的POV的一个或多个数据流。例如,用户输入对应于手部跟踪输入、语音命令、眼睛跟踪输入等。在一些具体实施中,用户可以选择两个或更多个VA进行记录。
如框808所示,响应于检测到用户输入,方法800包括记录与所选择的VA的当前POV相关联的一个或多个数据流。作为一个示例,图6C示出了响应于在图6B中检测到选择VA606的用户输入622,电子设备120呈现与确认XR环境128的VA 606的当前POV的记录相关联的文本框632(例如,“正在记录VA 606的POV”)。作为一个示例,一个或多个数据流对应于虚拟代理的不同感官感知模态,诸如红外感知、光学感知、嗅觉感知、听觉感知等。作为另一示例,一个或多个数据流对应于对虚拟代理可见的不同层,诸如遮挡层、网格层、点云层、纹理层、骨架绑定层等。
如图4B和图4C所示,计算***或其部件(例如,记录管理器470)填充存储在记录库475内的记录480。如图4C所示,记录480包括多个数据流,该多个数据流包括来自电子设备120或用户150的POV的渲染的XR内容455、物理环境105的经处理的图像流463、合成的内容465以及与来自至少一个VA的POV的各种感官感知相关联的一个或多个数据流。如图4C所示,记录480包括:环境数据482(例如,环境音频信息、环境照明信息等,类似于图4A中的环境信息向量417);与用户POV 484相关联的一个或多个数据流(例如,物理环境105的经处理的图像流463、渲染的XR内容455、合成的内容465、所选择的层等);与本文中称为VA POV-1486A的第一VA的POV相关联的一个或多个流(例如,诸如感觉-1、感觉-2、…、感觉-N等各种感官感知的数据流);与本文中称为VA POV-2 486B的第二VA的POV相关联的多个流(例如,诸如感觉-1、感觉-2、…、感觉-N等各种感官感知的数据流);和与本文中称为VA POV-N486N的第N VA的POV相关联的一个或多个流(例如,诸如感觉-1、感觉-2、…、感觉-N等各种感官感知的数据流)。
在一些具体实施中,方法800包括在本地或在远程服务器上存储多个数据流。如图4C所示,记录库475包括XR环境的多个先前记录的实例,至少包括记录480。在一些具体实施中,记录库475相对于控制器110和/或电子设备120位于本地。在一些具体实施中,内容库425位于远离控制器110和/或电子设备120的位置(例如,位于远程服务器、云服务器等处)。
在一些具体实施中,如框810所示,一个或多个数据流中的每个数据流都与所选择的VA的不同感官感知相关联。例如,在图6D中,电子设备120在XR环境128内呈现菜单642,该菜单包括与VA 606的可以切换打开或关闭的不同感觉相关联的多个可选选项,诸如感觉-1644A、感觉-2 644B、感觉-N 644N和全部感觉646。例如,菜单642内的多个可选选项可以通过各种输入模态来选择,诸如显示器122上的点击/触摸输入、手部跟踪输入、语音命令等。
在一些具体实施中,来自第一虚拟代理的当前POV的图形环境的一个或多个数据流对应于来自第一虚拟代理的当前POV的多个不同感官感知,该多个不同感官感知包括来自第一虚拟代理的当前POV的热感知数据流(与红外波长相关联)、来自第一虚拟代理的当前POV的光学感知数据流(例如,与可见波长相关联)、来自第一虚拟代理的当前POV的听觉感知数据流或来自第一虚拟代理的当前POV的嗅觉感知数据流中的至少一者。在一些具体实施中,来自第一虚拟代理的当前POV的热感知、光学感知、听觉感知或嗅觉感知数据流中的至少一者对应于感官感知梯度。例如,感官感知梯度以颜色梯度、纹理梯度等来指示感官感知的强度和/或范围。
在一些具体实施中,如框812所示,方法800包括使用一种或多种数据外推技术填充一个或多个数据流中的至少一个数据流中的数据间隙。如图4B所示,计算***或其部件(例如,外推器471)填充与来自VA的POV的各种感官感知相关联的一个或多个数据流中的数据间隙。在一些具体实施中,来自第一虚拟代理的当前POV的热感知、光学感知、听觉感知或嗅觉感知数据流中的至少一者包括数据间隙,并且其中使用一种或多种数据外推技术来填充该数据间隙。
在一些具体实施中,如框814所示,在记录与所选择的VA的POV相关联的一个或多个数据流时,方法800包括:经由一个或多个输入设备检测启用/禁用一个或多个层的一个或多个切换输入;以及响应于检测到一个或多个切换输入,启用和/或禁用一个或多个层。如图4B所示,计算***或其部件(例如,层处理程序474)基于切换一个或多个层的未处理的用户输入423来启用或禁用一个或多个层。在一些具体实施中,一个或多个层对应于遮挡层、纹理贴图层、点云层、标记层、骨架绑定层或特定于应用的层中的一者。
例如,在图6E中,电子设备120在XR环境128内呈现菜单652,该菜单包括与可以切换开关或关闭的层相关联的多个可选选项,诸如网格/点云654A、遮挡654B、骨架绑定654C、预测轨迹654D、预测动作654E、标记654F、特定于应用的信息654G、其他654H和全部654I。例如,菜单652内的多个可选选项可以通过各种输入模态来选择,诸如显示器122上的点击/触摸输入、手部跟踪输入、语音命令等。
如框816所示,方法800包括通过将与图形环境相关联的数据流与和所选择的VA的当前POV相关联的一个或多个数据流进行时间同步来保存记录。如图4B所示,计算***或其部件(例如,时序器472)使与记录480相关联的多个数据流在时间上同步。此外,如图4B所示,计算***或其部件(例如,记录管理器470)将记录480存储在记录库475中。
在一些具体实施中,如框818所示,方法800包括:经由一个或多个输入设备检测涉及将另一VA(或虚拟对象)实例化的后续用户输入;以及响应于检测到后续用户输入,将VA(或虚拟对象)实例化到图形环境中。如图4A所示,计算***或其部件(例如,内容选择器422)检测与在XR环境128内将VA实例化相关联的一个或多个用户输入421,并基于一个或多个用户输入421将VA实例化。例如,用户输入对应于手部跟踪输入、语音命令、眼睛跟踪输入等。
在一些具体实施中,如框820所示,方法800包括:经由一个或多个输入设备检测涉及修改XR内容的后续用户输入;以及响应于检测到后续用户输入,修改XR内容(例如,更改外观、添加/删除部件、平移、旋转等)。如图4A所示,计算***或其部件(例如,内容选择器422)检测与在XR环境128内操纵XR内容或VA相关联的一个或多个用户输入421,并基于一个或多个用户输入421修改XR内容或VA。例如,用户输入对应于手部跟踪输入、语音命令、眼睛跟踪输入等。
图9是根据一些具体实施的回放XR环境的记录的方法900的流程图表示。在各种具体实施中,方法900在包括非暂态存储器和一个或多个处理器的计算***处执行,其中该计算***通信地耦接到显示设备和一个或多个输入设备(例如,图1和图3中所示的电子设备120;图1和图2中的控制器110;和/或它们的合适组合中)。在一些具体实施中,方法900由处理逻辑部件(包括硬件、固件、软件或其组合)执行。在一些具体实施中,方法900由执行存储在非暂态计算机可读介质(例如,存储器)中的代码的处理器执行。在一些具体实施中,电子***对应于平板电脑、膝上型电脑、移动电话、近眼***、可穿戴计算设备等中的一者。
如上文所讨论的,可以记录XR体验,由此,记录的视频数据包括与场景相关联的视频透传数据和XR数据两者的合成。当开发人员打算调试程序执行和图形内容回放(诸如虚拟代理(VA)和/或XR内容)时,此记录的视频数据可能不足。本文所述的方法允许用户在图形环境中选择各个实体进行记录和回放,从而实现改进的调试、开发和用于共享或纪念目的的一般记录。
如框902所示,方法900包括经由一个或多个输入设备检测第一用户输入,该第一用户输入选择包括一个或多个VA的图形环境的先前记录的实例以供回放。作为一个示例,在图7A中,电子设备120检测与在菜单712内选择选项714A相关联的语音输入716(例如,“请回放记录-1”)。
在一些具体实施中,方法900包括经由显示设备呈现先前记录的实例的表示的菜单,其中从先前记录的实例的表示的菜单中选择图形环境的先前记录的实例。在图7A中,菜单712包括与预先存在的记录(诸如记录-1 714A、记录-2 714B和记录-N 714N)相关联的多个可选选项。例如,菜单712内的多个可选选项可以通过各种输入模态来选择,诸如显示器122上的点击/触摸输入、手部跟踪输入、语音命令等。
在一些具体实施中,显示设备对应于透明透镜组件,并且其中图形环境的先前记录的实例被投影到透明透镜组件上。在一些具体实施中,显示设备对应于近眼***,并且其中呈现图形环境的先前记录的实例包括将图形环境的先前记录的实例与由面向外部的图像传感器捕获的物理环境的一个或多个图像合成。
如框904所示,响应于检测到第一用户输入,方法900包括经由显示设备从第一POV呈现图形环境的先前记录的实例,并呈现与图形环境的先前记录的实例的回放相关联的多个控件,包括用于从第一POV更改为第二POV以及用于激活一个或多个层的UI元素。作为一个示例,在图7B中,电子设备120呈现与记录-1 714A的第一POV相关联的XR环境128A以及控制菜单722,该控制菜单具有用于控制回放的多个UI元素,诸如时间洗涤器724、暂停示能表示726A、播放示能表示726B、音量调整示能表示726C和选项示能表示726N。例如,控制菜单722内用于控制回放的多个UI元素可以由各种输入模态控制,诸如显示器122上的点击/触摸输入、手部跟踪输入、语音命令等。
在一些具体实施中,第一POV对应于中性观察视角或捕获图形环境的先前记录的实例的用户视角中的一者。例如,中性观察视角对应于可以以六个自由度平移和/或旋转的虚拟相机POV。
在一些具体实施中,该多个控件还包括用于发起回放、暂停回放、更改回放速度、更改当前回放时间戳、向图形环境的先前记录的实例添加标记或修改图形环境的先前记录的实例的各部分的UI元素。例如,可以通过手部跟踪输入、眼睛跟踪输入、语音命令等来激活控件。
如框906所示,方法900包括经由一个或多个输入设备检测在一个或多个VA中选择相应VA的第二用户输入。作为一个示例,在图7D中,电子设备120经由身体/头部姿态跟踪引擎412检测用户150的左手151的与在XR环境128A内选择VA 606相关联的手势输入。在图7D中,电子设备120在XR环境128A内呈现用户150的左手151的表示645。
在一些具体实施中,第一用户输入和第二用户输入对应于显示器122上的触摸输入、手部跟踪输入、语音命令、眼睛跟踪输入等中的一者。在一些具体实施中,一个或多个虚拟代理对应于人类、动物或机器人等中的一者。
如框908所示,响应于检测到第二用户输入,方法900包括经由显示设备呈现来自与相应VA相关联的第二POV的图形环境的先前记录的实例。在一些具体实施中,用户150可以在记录的第三人称视角和各种VA POV的第一人称视角之间跳跃。例如,当从特定VA的第一人称视角查看记录时,第三人称视角可以显示为画中画迷你贴图。作为一个示例,在图7F中,响应于在图7D中检测到选择VA 606的手势输入,电子设备120呈现与记录-1 714A的第二POV(例如,VA 606的POV)相关联的XR环境128B,该XR环境包括XR内容602(例如,3D圆柱体)和虚拟代理604。在图7F中,XR环境128B包括XR环境128A的控制菜单722和视图762。本领域的普通技术人员将理解,在各种其他具体实施中,可以修改或以其他方式改变XR环境128A的视图762的画中画(PIP)性质。
在一些具体实施中,基于相应VA的感知配置文件,第二POV与相应VA的多个感官感知相关联。在一些具体实施中,感知配置文件包括VA的感官模态、感官模态的敏锐度值以及感官模态的范围值。作为一个示例,与犬科动物VA相比,昆虫VA与具有不同感官模态的不同感知配置文件相关联。作为一个示例,在图7G中,电子设备120呈现菜单772,该菜单包括与切换打开或关闭VA 606的各种感官模态相关联的多个可选选项,诸如感觉-1 644A、感觉-2644B、感觉-N 644N和全部感觉646。
在一些具体实施中,多个感官感知包括来自第二POV的图形环境的热感知(例如,与红外波长相关联)、光学感知(例如,与可见波长相关联)、听觉感知或嗅觉感知中的至少一者。在一些具体实施中,图形环境包括用于切换多个感官感知的UI元素。
在一些具体实施中,基于相应VA的感知配置文件,第二POV与相应VA的至少两个重叠的感官感知相关联。在一些具体实施中,该至少两个重叠的感官感知与视觉上不同的外观(例如,颜色、纹理等)相关联。
在一些具体实施中,基于相应VA的感知配置文件,第二POV与相应VA的第一感官感知相关联。在一些具体实施中,第一感官感知对应于可视化为着色或纹理化向量场的非光学感觉。作为一个示例,着色向量字段将VA狗可以在图形环境内闻到的项突出显示或为它们提供光晕。在一些具体实施中,第二POV包括图形环境内的相应VA和可操作项的投影轨迹中的至少一者的可视化。例如,VA的感知配置文件包括VA的各种感官感知的参数和敏锐度值。
在一些具体实施中,如框910所示,基于相应VA的感知配置文件,第二POV与相应VA的多个感官感知相关联。作为一个示例,在图7H中,响应于在图7G中检测到在菜单772内选择感觉-1 644A,电子设备120基于VA 606的感知配置文件呈现VA 606的视觉感官感知的可视化782。作为另一示例,响应于在图7G中检测到在菜单772内选择感觉-2 644B,电子设备120基于VA 606的感知配置文件呈现VA 606的听觉感官感知的可视化792。作为又一示例,响应于在图7G中检测到在菜单772内选择感觉-N 644N,电子设备120基于VA 606的感知配置文件,分别呈现VA 606相对于VA 604和XR内容602的嗅觉感官感知的第一可视化7102和第二可视化7104。
在一些具体实施中,如框912所示,在呈现记录时,方法900包括:经由一个或多个输入设备检测启用/禁用一个或多个层的一个或多个切换输入;以及响应于检测到一个或多个切换输入,启用和/或禁用一个或多个层。在一些具体实施中,图形环境包括用于切换一个或多个层的UI元素,并且其中一个或多个层对应于遮挡层、纹理贴图层、点云层、标记层、骨架绑定层或特定于应用的层中的一者。例如,在图7C中,响应于在图7B中检测到用户输入728,电子设备120呈现与切换各个层相关联的菜单732。在图7C中,菜单732包括与可以切换打开或关闭的层相关联的多个可选选项,诸如网格/点云654A、遮挡654B、骨架绑定654C、预测轨迹654D、预测动作654E、标记654F、特定于应用的信息654G、其他654H和全部654I。例如,菜单732内的多个可选选项可以通过各种输入模态来选择,诸如显示器122上的点击/触摸输入、手部跟踪输入、语音命令等。图7N至图7S示出了在回放期间切换各个层的用户输入,诸如图7O中的预测轨迹7152和图7Q中的预测动作7172。
在一些具体实施中,如框914所示,方法900包括:经由一个或多个输入设备检测涉及将另一VA(或虚拟对象)实例化的后续用户输入;以及响应于检测到后续用户输入,将VA(或虚拟对象)实例化到图形环境中。
在一些具体实施中,如框916所示,方法900包括:经由一个或多个输入设备检测涉及修改XR内容的后续用户输入;以及响应于检测到后续用户输入,修改XR内容(例如,更改外观、平移、旋转等)。
虽然上文描述了在所附权利要求书范围内的具体实施的各个方面,但是应当显而易见的是,上述具体实施的各种特征可通过各种各样的形式体现,并且上述任何特定结构和/或功能仅是例示性的。基于本公开,本领域的技术人员应当理解,本文所述的方面可以独立于任何其他方面来实现,并且这些方面中的两个或更多个可以采用各种方式组合。例如,可以使用本文阐述的任何数量的方面来实现装置和/或可以实践方法。另外,除了本文阐述的一个或多个方面之外或者不同于本文阐述的一个或多个方面,可以使用其他结构和/或功能来实现这样的装置和/或可以实践这样的方法。
还将理解的是,虽然术语“第一”、“第二”等可能在本文中用于描述各种元素,但是这些元素不应当被这些术语限定。这些术语只是用于将一个元件与另一元件区分开。例如,第一媒体项可以被称为第二媒体项,并且类似地,第二媒体项可以被称为第一媒体项,这改变描述的含义,只要出现的“第一媒体项”被一致地重命名并且出现的“第二媒体项”被一致地重命名。该第一媒体项和该第二媒体项都是媒体项,但它们不是相同的媒体项。
本文中所使用的术语仅仅是为了描述特定具体实施并非旨在对权利要求进行限制。如在本具体实施的描述和所附权利要求书中所使用的那样,单数形式的“一个”、“一”和“该”旨在也涵盖复数形式,除非上下文清楚地另有指示。还将理解的是,本文中所使用的术语“和/或”是指并且涵盖相关联的所列出的项目中的一个或多个项目的任何和全部可能的组合。还将理解的是,术语“包括”在本说明书中使用时是指定存在所陈述的特征、整数、步骤、操作、元件和/或部件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、部件,和/或其分组。
如本文所使用的,术语“如果”可以被解释为表示“当所述先决条件为真时”或“在所述先决条件为真时”或“响应于确定”或“根据确定”或“响应于检测到”所述先决条件为真,具体取决于上下文。类似地,短语“如果确定[所述先决条件为真]”或“如果[所述先决条件为真]”或“当[所述先决条件为真]时”被解释为表示“在确定所述先决条件为真时”或“响应于确定”或“根据确定”所述先决条件为真或“当检测到所述先决条件为真时”或“响应于检测到”所述先决条件为真,具体取决于上下文。
Claims (20)
1.一种方法,包括:
在包括非暂态存储器和一个或多个处理器的计算***处,其中所述计算***通信地耦接到显示设备和一个或多个输入设备:
经由所述显示设备呈现具有一个或多个虚拟代理的图形环境,其中所述图形环境对应于包括所述一个或多个虚拟代理的扩展现实(XR)内容和从物理环境的第一视点(POV)捕获的所述物理环境的图像流的合成;
经由所述一个或多个输入设备检测从所述一个或多个虚拟代理中选择第一虚拟代理的用户输入;以及
响应于检测到所述用户输入,记录与所述图形环境相关联的多个数据流,所述多个数据流包括来自所述第一POV的所述图形环境的第一图像流和来自所述第一虚拟代理的当前POV的所述图形环境的一个或多个数据流。
2.根据权利要求1所述的方法,其中来自所述第一虚拟代理的所述当前POV的所述图形环境的所述一个或多个数据流对应于来自所述第一虚拟代理的所述当前POV的多个不同感官感知,所述多个不同感官感知包括来自所述第一虚拟代理的所述当前POV的热感知数据流、来自所述第一虚拟代理的所述当前POV的光学感知数据流、来自所述第一虚拟代理的所述当前POV的听觉感知数据流或来自所述第一虚拟代理的所述当前POV的嗅觉感知数据流中的至少一者。
3.根据权利要求2所述的方法,其中来自所述第一虚拟代理的所述当前POV的所述热感知数据流、所述光学感知数据流、所述听觉感知数据流或所述嗅觉感知数据流中的至少一者包括数据间隙,并且其中使用一种或多种数据外推技术来填充所述数据间隙。
4.根据权利要求2所述的方法,其中来自所述第一虚拟代理的所述当前POV的所述热感知数据流、所述光学感知数据流、所述听觉感知数据流或所述嗅觉感知数据流中的至少一者对应于感官感知梯度。
5.根据权利要求1所述的方法,还包括:
经由所述一个或多个输入设备检测激活与所述多个数据流相关联的一个或多个层的后续用户输入;以及响应于检测到所述后续用户输入,记录所述多个数据流的所述一个或多个层。
6.根据权利要求5所述的方法,其中所述一个或多个层对应于遮挡层、纹理贴图层、点云层、标记层、骨架绑定层或特定于应用的层中的一者。
7.根据权利要求1所述的方法,还包括:
获取与所述物理环境相关联的所述图像流;以及
通过基于所述计算***的所述第一POV将与所述物理环境相关联的所述图像流与所述XR内容合成来生成所述图形环境,其中所述XR内容包括所述一个或多个虚拟代理。
8.根据权利要求1所述的方法,其中所述用户输入对应于触摸输入、手部跟踪输入、语音命令或眼睛跟踪输入中的一者。
9.根据权利要求1所述的方法,其中所述一个或多个虚拟代理对应于人类、动物或机器人中的一者。
10.根据权利要求1所述的方法,还包括:
在本地或在远程服务器上存储所述多个数据流。
11.一种设备,包括:
一个或多个处理器;
非暂态存储器;
接口,所述接口用于与显示设备和一个或多个输入设备进行通信;和
存储在所述非暂态存储器中的一个或多个程序,所述一个或多个程序当由所述一个或多个处理器执行时使所述设备:
经由所述显示设备呈现具有一个或多个虚拟代理的图形环境,其中所述图形环境对应于包括所述一个或多个虚拟代理的扩展现实(XR)内容和从物理环境的第一视点(POV)捕获的所述物理环境的图像流的合成;
经由所述一个或多个输入设备检测从所述一个或多个虚拟代理中选择第一虚拟代理的用户输入;以及
响应于检测到所述用户输入,记录与所述图形环境相关联的多个数据流,所述多个数据流包括来自所述第一POV的所述图形环境的第一图像流和来自所述第一虚拟代理的当前POV的所述图形环境的一个或多个数据流。
12.根据权利要求11所述的设备,其中来自所述第一虚拟代理的所述当前POV的所述图形环境的所述一个或多个数据流对应于来自所述第一虚拟代理的所述当前POV的多个不同感官感知,所述多个不同感官感知包括来自所述第一虚拟代理的所述当前POV的热感知数据流、来自所述第一虚拟代理的所述当前POV的光学感知数据流、来自所述第一虚拟代理的所述当前POV的听觉感知数据流或来自所述第一虚拟代理的所述当前POV的嗅觉感知数据流中的至少一者。
13.根据权利要求11所述的设备,其中来自所述第一虚拟代理的所述当前POV的所述热感知数据流、所述光学感知数据流、所述听觉感知数据流或所述嗅觉感知数据流中的至少一者包括数据间隙,并且其中使用一种或多种数据外推技术来填充所述数据间隙。
14.根据权利要求11所述的设备,其中来自所述第一虚拟代理的所述当前POV的所述热感知数据流、所述光学感知数据流、所述听觉感知数据流或所述嗅觉感知数据流中的至少一者对应于感官感知梯度。
15.根据权利要求11所述的设备,其中一个或多个程序还使得所述设备:
经由所述一个或多个输入设备检测激活与所述多个数据流相关联的一个或多个层的后续用户输入;以及响应于检测到所述后续用户输入,记录所述多个数据流的所述一个或多个层。
16.根据权利要求15所述的设备,其中所述一个或多个层对应于遮挡层、纹理贴图层、点云层、标记层、骨架绑定层或特定于应用的层中的一者。
17.一种存储一个或多个程序的非暂态存储器,所述一个或多个程序当由具有用于与显示设备和一个或多个输入设备通信的接口的设备的一个或多个处理器执行时使得所述设备:
经由所述显示设备呈现具有一个或多个虚拟代理的图形环境,其中所述图形环境对应于包括所述一个或多个虚拟代理的扩展现实(XR)内容和从物理环境的第一视点(POV)捕获的所述物理环境的图像流的合成;
经由所述一个或多个输入设备检测从所述一个或多个虚拟代理中选择第一虚拟代理的用户输入;以及
响应于检测到所述用户输入,记录与所述图形环境相关联的多个数据流,所述多个数据流包括来自所述第一POV的所述图形环境的第一图像流和来自所述第一虚拟代理的当前POV的所述图形环境的一个或多个数据流。
18.根据权利要求17所述的非暂态存储器,其中来自所述第一虚拟代理的所述当前POV的所述图形环境的所述一个或多个数据流对应于来自所述第一虚拟代理的所述当前POV的多个不同感官感知,所述多个不同感官感知包括来自所述第一虚拟代理的所述当前POV的热感知数据流、来自所述第一虚拟代理的所述当前POV的光学感知数据流、来自所述第一虚拟代理的所述当前POV的听觉感知数据流或来自所述第一虚拟代理的所述当前POV的嗅觉感知数据流中的至少一者。
19.根据权利要求17所述的非暂态存储器,其中来自所述第一虚拟代理的所述当前POV的所述热感知数据流、所述光学感知数据流、所述听觉感知数据流或所述嗅觉感知数据流中的至少一者包括数据间隙,并且其中使用一种或多种数据外推技术来填充所述数据间隙。
20.根据权利要求17所述的非暂态存储器,其中来自所述第一虚拟代理的所述当前POV的所述热感知数据流、所述光学感知数据流、所述听觉感知数据流或所述嗅觉感知数据流中的至少一者对应于感官感知梯度。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163183188P | 2021-05-03 | 2021-05-03 | |
US63/183,188 | 2021-05-03 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115297314A true CN115297314A (zh) | 2022-11-04 |
CN115297314B CN115297314B (zh) | 2024-05-28 |
Family
ID=83601184
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210471671.0A Active CN115297314B (zh) | 2021-05-03 | 2022-04-29 | 用于调试程序执行和内容回放的方法和设备 |
Country Status (3)
Country | Link |
---|---|
US (2) | US11868526B2 (zh) |
CN (1) | CN115297314B (zh) |
DE (1) | DE102022110363A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230027666A1 (en) * | 2021-07-13 | 2023-01-26 | Meta Platforms Technologies, Llc | Recording moments to re-experience |
US20230198994A1 (en) * | 2021-12-19 | 2023-06-22 | International Business Machines Corporation | Virtual reality enabled internet-of-things device resolution |
US11747954B1 (en) * | 2022-03-10 | 2023-09-05 | Samsung Electronics Company, Ltd. | Systems and methods for organizing contents in XR environments |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107850936A (zh) * | 2015-01-28 | 2018-03-27 | Ccp公司 | 用于提供物理环境的虚拟显示的方法和*** |
US20180114353A1 (en) * | 2016-10-20 | 2018-04-26 | Zspace, Inc. | Integrating Real World Conditions into Virtual Imagery |
US20180246698A1 (en) * | 2017-02-28 | 2018-08-30 | Magic Leap, Inc. | Virtual and real object recording in mixed reality device |
US10558264B1 (en) * | 2016-12-21 | 2020-02-11 | X Development Llc | Multi-view display with viewer detection |
US20200241634A1 (en) * | 2019-01-24 | 2020-07-30 | Dell Products, L.P. | ENCODING CONTENT FOR VIRTUAL, AUGMENTED, AND MIXED REALITY (xR) APPLICATIONS IN CONNECTIVITY-CONSTRAINED ENVIRONMENTS |
CN112116716A (zh) * | 2019-06-19 | 2020-12-22 | 苹果公司 | 基于检测到的对象来定位的虚拟内容 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10720184B2 (en) | 2016-03-16 | 2020-07-21 | Intel Corporation | Selective recording of augmented reality objects |
US10484643B2 (en) | 2016-11-10 | 2019-11-19 | Avaya Inc. | Intelligent contact recording in a virtual reality contact center |
WO2019037040A1 (zh) | 2017-08-24 | 2019-02-28 | 腾讯科技(深圳)有限公司 | 基于虚拟现实应用录制视频的方法、终端设备及存储介质 |
-
2022
- 2022-03-24 US US17/703,278 patent/US11868526B2/en active Active
- 2022-04-28 DE DE102022110363.3A patent/DE102022110363A1/de active Pending
- 2022-04-29 CN CN202210471671.0A patent/CN115297314B/zh active Active
-
2023
- 2023-11-29 US US18/523,324 patent/US20240094815A1/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107850936A (zh) * | 2015-01-28 | 2018-03-27 | Ccp公司 | 用于提供物理环境的虚拟显示的方法和*** |
US20180114353A1 (en) * | 2016-10-20 | 2018-04-26 | Zspace, Inc. | Integrating Real World Conditions into Virtual Imagery |
US10558264B1 (en) * | 2016-12-21 | 2020-02-11 | X Development Llc | Multi-view display with viewer detection |
US20180246698A1 (en) * | 2017-02-28 | 2018-08-30 | Magic Leap, Inc. | Virtual and real object recording in mixed reality device |
US20200241634A1 (en) * | 2019-01-24 | 2020-07-30 | Dell Products, L.P. | ENCODING CONTENT FOR VIRTUAL, AUGMENTED, AND MIXED REALITY (xR) APPLICATIONS IN CONNECTIVITY-CONSTRAINED ENVIRONMENTS |
CN112116716A (zh) * | 2019-06-19 | 2020-12-22 | 苹果公司 | 基于检测到的对象来定位的虚拟内容 |
Also Published As
Publication number | Publication date |
---|---|
CN115297314B (zh) | 2024-05-28 |
US20240094815A1 (en) | 2024-03-21 |
US20220350401A1 (en) | 2022-11-03 |
DE102022110363A1 (de) | 2022-11-03 |
US11868526B2 (en) | 2024-01-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11372655B2 (en) | Computer-generated reality platform for generating computer-generated reality environments | |
JP6967043B2 (ja) | 3次元コンテンツ内の場所に基づく仮想要素モダリティ | |
KR102562285B1 (ko) | 사용자 인터페이스와 연관된 몰입을 조정 및/또는 제어하기 위한 방법 | |
US11995230B2 (en) | Methods for presenting and sharing content in an environment | |
CN115297314B (zh) | 用于调试程序执行和内容回放的方法和设备 | |
CN111602104B (zh) | 用于与所识别的对象相关联地呈现合成现实内容的方法和设备 | |
US20230336865A1 (en) | Device, methods, and graphical user interfaces for capturing and displaying media | |
KR20240091224A (ko) | 사용자의 표현을 생성 및 디스플레이하기 위한 디바이스들, 방법들, 및 그래픽 사용자 인터페이스들 | |
KR20240047450A (ko) | 전자 디바이스들에 대한 병렬 렌더러들 | |
US11699412B2 (en) | Application programming interface for setting the prominence of user interface elements | |
US11321926B2 (en) | Method and device for content placement | |
US20230343049A1 (en) | Obstructed objects in a three-dimensional environment | |
CN113678173A (zh) | 用于虚拟对象的基于图绘的放置的方法和设备 | |
US20240248532A1 (en) | Method and device for visualizing multi-modal inputs | |
CN116974381A (zh) | 用于呈现合成现实伴随内容的方法和设备 | |
US11886625B1 (en) | Method and device for spatially designating private content | |
US20240112419A1 (en) | Method and Device for Dynamic Determination of Presentation and Transitional Regions | |
US20240104819A1 (en) | Representations of participants in real-time communication sessions | |
US20240256032A1 (en) | Methods for presenting and sharing content in an environment | |
US20240219998A1 (en) | Method And Device For Dynamic Sensory And Input Modes Based On Contextual State | |
CN117581180A (zh) | 用于在3d中导航窗口的方法和设备 | |
CN116458881A (zh) | 用于管理注意力累加器的方法和设备 | |
CN118076941A (zh) | 用于促进与***设备进行交互的方法和设备 | |
CN117916691A (zh) | 用于基于情境状态启用输入模式的方法和设备 | |
CN117480472A (zh) | 用于在环境中提供沉浸式体验的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |