CN117897677A - 人工现实设备采集控制和共享 - Google Patents
人工现实设备采集控制和共享 Download PDFInfo
- Publication number
- CN117897677A CN117897677A CN202280059316.0A CN202280059316A CN117897677A CN 117897677 A CN117897677 A CN 117897677A CN 202280059316 A CN202280059316 A CN 202280059316A CN 117897677 A CN117897677 A CN 117897677A
- Authority
- CN
- China
- Prior art keywords
- artificial reality
- reality device
- view
- user
- sensor data
- 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
Links
- 238000000034 method Methods 0.000 claims description 68
- 230000008569 process Effects 0.000 claims description 45
- 230000015654 memory Effects 0.000 claims description 21
- 230000004044 response Effects 0.000 claims description 12
- 230000008859 change Effects 0.000 claims description 4
- 238000013475 authorization Methods 0.000 claims description 3
- 230000006855 networking Effects 0.000 description 44
- 238000012545 processing Methods 0.000 description 22
- 238000010586 diagram Methods 0.000 description 20
- 238000004891 communication Methods 0.000 description 15
- 230000000694 effects Effects 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 12
- 230000033001 locomotion Effects 0.000 description 8
- 230000009471 action Effects 0.000 description 6
- 230000001815 facial effect Effects 0.000 description 5
- 239000003550 marker Substances 0.000 description 5
- 230000003190 augmentative effect Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 230000007613 environmental effect Effects 0.000 description 3
- 210000003128 head Anatomy 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 229920001621 AMOLED Polymers 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 210000004087 cornea Anatomy 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000004424 eye movement Effects 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000006996 mental state Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000036651 mood Effects 0.000 description 1
- 230000000877 morphologic effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 239000002096 quantum dot Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- 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
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/017—Head mounted
- G02B27/0172—Head mounted characterised by optical features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/32—User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/20—Perspective computation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/05—Geographic models
-
- 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/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/0101—Head-up displays characterised by optical features
- G02B2027/0138—Head-up displays characterised by optical features comprising image capture systems, e.g. camera
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/0101—Head-up displays characterised by optical features
- G02B2027/0141—Head-up displays characterised by optical features characterised by the informative content of the display
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Human Computer Interaction (AREA)
- Computing Systems (AREA)
- Remote Sensing (AREA)
- Multimedia (AREA)
- Optics & Photonics (AREA)
- Processing Or Creating Images (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本公开的各方面涉及一种人工现实采集和共享***。该人工现实采集和共享***可以提供显示了来自人工现实设备的世界视图或用户视角的视图的输出视图。该世界视图可以显示正由该人工现实采集和共享***采集的完整的周围区域,无论该人工现实设备的该用户是否正在观看周围环境的该部分。该视角版本可以显示周围区域的、位于该人工现实设备的显示区域中的部分。该人工现实采集和共享***还可以对其所采集到的传感器数据中描绘的人物应用过滤器。这可以包括:将过滤器应用于设备上视图或共享输出视图中的所识别的用户,或应用于该人工现实设备的周围区域中的人物的实时视图。
Description
技术领域
本公开涉及控制人工现实设备如何采集和共享周围环境信息。
背景技术
存在多个带有输入传感器阵列的人工现实***,该输入传感器阵列可以采集有关人工现实设备周围的区域的大量信息。用户通常知道其设备包括摄像头阵列和其它传感器阵列,然而,他们往往很难准确地理解这些传感器采集到的用户周围环境。例如,人工现实设备可以包括:采集人工现实设备周围的360度视图的RGB摄像头阵列;映射该人工现实设备周围的对象的形状的深度摄像头或其它深度感测设备;可确定该区域中的音频的音调、方向和定位的传声器阵列等。然而,人工现实设备用户可能不知道其周围的哪些区域正在被采集或者以什么分辨率采集。此外,人工现实设备的区域中的其他人可能不知道他们自己的哪些方面正在被采集和/或可能无法对人工现实设备如何观看和呈现他们进行控制。
发明内容
本发明涉及根据权利要求1所述的方法、根据权利要求8所述的计算机可读存储介质、根据权利要求9所述的***和根据权利要求10所述的软件产品。有利实施例可以包括从属权利要求的多个特征。
因此,根据本发明的一种用于采集和共享人工现实设备的周围环境信息的方法包括:在该人工现实设备处接收观看由该人工现实设备采集到的传感器数据的请求;获取对应于该请求的传感器数据,其中,该传感器数据包括图像数据,该图像数据显示了该人工现实设备的、处于该人工现实设备的用户的视角(point-of-view)内和视角外的周围环境;根据所获取的该传感器数据创建输出视图,该输出视图包括关于3D环境的视图,该关于3D环境的视图显示了由该人工现实设备检测和重建的、该人工现实设备的周围环境的多个部分;以及响应于该请求,提供该输出视图。
在一些实施例中,该请求可以源自该人工现实设备的用户。
在一些实施例中,该请求可以源自该人工现实设备外部的***,并且该输出视图可以通过采集中心来提供给观看用户,在该采集中心中,该观看用户访问基于两个或更多个输出视图的视图,其中,该两个或更多个输出视图中的至少一个输出视图来自第二人工现实设备。
在一些实施例中,该方法可以包括:在响应于该请求提供该输出视图之前,获取来自该人工现实设备的用户的、对共享该输出视图的授权。
在一些实施例中,该输出视图可以是该人工现实设备周围的区域的至少一部分的3D模型。
在一些实施例中,该输出视图可以是该人工现实设备周围的区域的至少一部分的点云。
在一些实施例中,该输出视图可以是通过展平描绘了该人工现实设备周围的区域的3D模型的至少一部分而创建的、该人工现实设备周围的区域的至少一部分的全景图像。
在一些实施例中,该方法还可以包括:识别并标记该传感器数据中描绘的一个或多个人物;将所标记的一个或多个人物与过滤器列表进行比较,以用设置的过滤器识别至少一个人物;以及将该设置的过滤器应用于对该至少一个人物的描绘,以改变该至少一个人物在输出视图中的外观。可选地,该设置的过滤器遮挡该至少一个人物的至少面部。
根据本发明的一种计算机可读存储介质存储有指令,这些指令在被计算***执行时,使得该计算***执行用于共享人工现实设备的周围环境信息的过程,该过程与以上论述的各方法中的任一种方法相对应,或者该过程包括:在该人工现实设备处接收观看由该人工现实设备采集到的传感器数据的请求;获取对应于该请求的传感器数据,其中,该传感器数据包括图像数据,该图像数据显示了该人工现实设备的、处于该人工现实设备的用户的视角内和视角外的周围环境;根据所获取的该传感器数据创建输出视图,该输出视图包括关于3D环境的视图,该关于3D环境的视图显示了由该人工现实设备检测的、该人工现实设备的周围环境的多个部分;以及响应于该请求,提供该输出视图。
在计算机可读存储介质的一些实施例中,该请求可以源自该人工现实设备外部的***。
在计算机可读存储介质的一些实施例中,该输出视图可以是该人工现实设备周围的区域的至少一部分的3D模型。
在计算机可读存储介质的一些实施例中,该输出视图可以是该人工现实设备周围的区域的至少一部分的点云。
在计算机可读存储介质的一些实施例中,该输出视图可以是通过展平描绘了该人工现实设备周围的区域的3D模型的至少一部分而创建的、该人工现实设备周围的区域的至少一部分的全景图像。
在计算机可读存储介质的一些实施例中,该过程还可以包括:识别并标记该传感器数据中描绘的一个或多个人物;将所标记的一个或多个人物与过滤器列表进行比较,以用设置的过滤器识别至少一个人物;以及将该设置的过滤器应用于对该至少一个人物的描绘,以改变该至少一个人物在输出视图中的外观。可选地,该设置的过滤器遮挡该至少一个人物的至少部分。
根据本发明的一种用于共享人工现实设备的周围环境信息的计算***包括:一个或多个处理器;以及一个或多个存储器,该一个或多个存储器存储有指令,这些指令在被该一个或多个处理器执行时,使得该计算***执行用于共享该人工现实设备的周围环境信息的过程,该过程与以上论述的各方法中的任一种方法相对应,或者该过程包括:在该人工现实设备处接收观看由该人工现实设备采集到的传感器数据的请求;获取对应于该请求的传感器数据,其中,该传感器数据包括图像数据,该图像数据显示了该人工现实设备的、处于该人工现实设备的用户的视角内和视角外的周围环境;根据所获取的该传感器数据创建输出视图,该输出视图包括关于3D环境的视图,该关于3D环境的视图显示了由该人工现实设备检测的、该人工现实设备的周围环境的多个部分;以及响应于该请求,提供该输出视图。
在该计算***的一些实施例中,该输出视图可以是该人工现实设备周围的区域的至少一部分的3D模型。
在该计算***的一些实施例中,该输出视图可以是通过展平描绘了该人工现实设备周围的区域的3D模型的至少一部分而创建的、该人工现实设备周围的区域的至少一部分的全景图像。
在该计算***的一些实施例中,该过程还可以包括:识别并标记该传感器数据中描绘的一个或多个人物;将所标记的一个或多个人物与过滤器列表进行比较,以用设置的过滤器识别至少一个人物;以及将该设置的过滤器应用于对该至少一个人物的描绘,以改变该至少一个人物在输出视图中的外观。
根据本发明的一种用于共享人工现实设备的周围环境信息的软件产品包括指令,这些指令在被计算***执行时,使得该计算***执行用于共享该人工现实设备的周围环境信息的过程,该过程与以上论述的各方法中的任一种方法相对应,或者该过程包括:在该人工现实设备处接收观看由该人工现实设备采集到的传感器数据的请求;获取对应于该请求的传感器数据,其中,该传感器数据包括图像数据,该图像数据显示了该人工现实设备的、处于该人工现实设备的用户的视角内和视角外的周围环境;从所获取的该传感器数据创建输出视图,该输出视图包括关于3D环境的视图,该关于3D环境的视图显示了由该人工现实设备检测的、该人工现实设备的周围环境的多个部分;以及响应于该请求,提供该输出视图。
附图说明
图1为示出了本技术的一些实施方式可在其上运行的各设备的概况的框图。
图2A为示出了可用于本技术的一些实施方式的虚拟现实头戴式设备(headset)的线示图。
图2B为示出了可用于本技术的一些实施方式的混合现实头戴式设备的线示图。
图2C为示出了各控制器的线示图,在一些实施方式中,用户可以用单手或双手握持这些控制器以与人工现实环境交互。
图3为示出了本技术的一些实施方式可在其中运行的环境的概况的框图。
图4为示出了在一些实施方式中可用于采用了所公开技术的***的各部件的框图。
图5为示出了在本技术的一些实施方式中、用于提供示出了人工现实设备的所采集到的传感器数据的输出视图的过程的流程图。
图6为示出了在一些实施方式中、用于向所采集到的传感器数据添加人物过滤器的过程的流程图。
图7为示出了来自人工现实设备的输出视图的世界视图版本的示例的概念图。
图8为示出了来自人工现实设备的输出视图的视角版本的示例的概念图。
图9A为示出了人物过滤器修改由人工现实设备采集到的人物视图的第一示例的概念图。
图9B为示出了人物过滤器修改由人工现实设备采集到的人物视图的第二示例的概念图。
通过结合附图参考以下具体实施方式,可以更好地理解这里所介绍的技术,在附图中,相似的附图标记指代相同或功能相似的元件。
具体实施方式
本公开的各方面涉及一种人工现实采集和共享***,该人工现实采集和共享***可以控制人工现实设备如何采集和共享周围环境信息。该人工现实采集和共享***可以提供输出视图,该输出视图显示了来自人工现实设备的世界视图或用户的视角的视图。世界视图可以显示正由人工现实采集和共享***采集的完整的周围区域,无论人工现实设备的用户是否正在观看该人工现实设备的周围环境的该部分。视角版本可以显示由人工现实采集和共享***采集的周围区域的、位于人工现实设备的显示区域(即,可由人工现实设备用户观看的区域)中的部分。可以将由人工现实采集和共享***创建的输出视图提供给人工现实设备的用户(例如,以查看人工现实设备正在如何采集其视角外的周围区域),或者可以例如通过将输出视图投射到另一显示器或将输出视图上传到可以由授权用户访问的资源库,来将该输出视图共享给第三方。在一些情况下,可以对来自同一区域的多个输出视图进行组合,例如,使得另一用户可以了解附近的任何设备正在采集哪些区域。作为一示例,观看用户可以在数个用户正在其中使用人工现实设备的咖啡馆中访问采集中心。每个人工现实设备可以提供具有如下周围环境的3D网格的世界视图输出视图:所述周围环境正在被该人工现实设备采集。可以将这些网格组合成观看用户可浏览的单个网格,从而确定周围的人工现实设备如何看到这个区域。
在一些实施方式中,世界视图输出视图可以基于由人工现实设备创建的对周围环境的重建。例如,人工现实设备可以使用各种传感器(例如,摄像头、深度传感器等)来确定关于人工现实设备的周围区域的空间信息。根据这个空间信息,人工现实设备可以创建周围区域的三维(three dimensional,3D)表示或“网格”。例如,该网格可以是点云或结构光表示,该点云或结构光表示示出了所测量到的、到周围区域中各种对象上的点的深度。在一些情况下,世界视图输出视图可以是从人工现实设备的位置展平的、关于该3D表示的视图。例如,可以将虚拟摄像头放置到由人工现实设备采集的周围区域的3D模型中,该虚拟摄像头可以在这个位置处从各种角度拍摄图像,这些图像可以用于创建深度信息的全景图像。该全景图像可以用作世界视图输出视图。
在一些实施方式中,可以由人工现实采集和共享***提供视角输出视图,该视角输出视图仅显示人工现实设备用户正在观看的周围区域。例如,人工现实设备用户可能想要将其世界视图共享给另一用户,并且可以选择该另一用户,并将其视图投射到被该另一用户看的观看设备。为了实现这一点,人工现实采集和共享***可以选择或过滤传感器数据,以排除所采集到的、描绘了人工现实设备用户的视角外的区域的传感器数据。
人工现实采集和共享***还可以应用过滤器,以控制该人工现实采集和共享***如何显示在其采集到的传感器数据中描绘的人物。这可以包括将过滤器应用于设备上视图或共享输出视图(如上所述)中所识别的用户,或将过滤器应用于周围区域中、通过人工现实设备看到的人物的实时视图。人工现实采集和共享***可以(例如,通过面部识别)识别所采集到的传感器数据中的人物,并且识别和标记他们。这可以包括:当人工现实设备和用户四处移动时,在被标记的用户处于被人工现实设备采集的区域中时,追踪被标记的用户的位置。人工现实采集和共享***可以将所确定的用户标识符与指定了应用于特定人物的过滤器的过滤器列表(如由这些人物或人工现实设备用户定义)进行比较,或者将过滤器应用于具有某些特性的人物(例如,人工现实设备用户在社交图谱上的朋友或不是人工现实设备用户关注焦点的人物)。过滤器列表还可以为用户指定过滤器的类型——例如面部模糊效果、颜色突出显示效果、覆盖图形的效果等。当针对过滤器识别出这种人物时,人工现实采集和共享***可以将过滤器应用于用户的视图——如人工现实设备用户所观看的视图或人工现实采集和共享***共享的输出视图中的视图。
所公开技术的实施例可以包括人工现实***,或者可以结合人工现实***来实现。人工现实或超现实(extra reality,XR)是在呈现给用户之前已经以某种方式进行了调整的现实形式,该人工现实或XR例如可以包括虚拟现实(virtual reality,VR)、增强现实(augmented reality,AR)、混合现实(mixed reality,MR)、混合现实(hybrid reality)或它们的某种组合和/或衍生物。人工现实内容可以包括完全生成的内容或与所采集的内容(例如,真实世界的照片)相结合的生成的内容。人工现实内容可以包括视频、音频、触觉反馈或它们的某种组合,以上中的任何一种都可以在单个通道中或在多个通道中呈现(例如给观看者带来三维效果的立体视频)。此外,在一些实施例中,人工现实还可以与应用、产品、附件、服务或它们的某种组合相关联,所述应用、产品、附件、服务或它们的某种组合例如用于在人工现实中创建内容和/或用于人工现实(例如,在人工现实中执行活动)。提供人工现实内容的人工现实***可以在各种平台上实现,这些平台包括连接到主计算机***的头戴式显示器(head-mounted display,HMD)、独立HMD、移动设备或计算***、“洞穴式(cave)”环境或其它投影***、或能够向一位或多位观看者提供人工现实内容的任何其它硬件平台。
如本文所使用的“虚拟现实”或“VR”是指如下沉浸式体验:在该沉浸式体验中,用户的视觉输入由计算***控制。“增强现实”或“AR”是指如下***:在所述***中,用户在真实世界的图像通过计算***之后,观看这些真实世界的图像。例如,背面带有摄像头的平板电脑可以采集多幅真实世界的图像,并且随后可以在该平板电脑的与摄像头相对的一侧的屏幕上显示这些图像。该平板电脑可以在多个图像通过***时,例如通过添加虚拟对象来处理并且调整或“增强”这些图像。“混合现实”或“MR”是指如下***:在所述***中,进入用户眼睛的光部分地由计算***产生,且部分地构成真实世界中的对象反射出的光。例如,MR头戴式设备可以被成形为一副具有透传式显示器的眼镜,该透传式显示器允许来自现实世界的光穿过一波导,该波导同时出射来自该MR头戴式设备中的投射器的光,从而允许MR头戴式设备呈现与用户可看到的真实对象相混合的虚拟对象。如本文所使用的,“人工现实”、“超现实”或“XR”是指以下中的任何一者:VR、AR、MR或它们的任意组合或混合。
一些现有的人工现实***采集视角传感器数据和周围的传感器数据这两者,这些现有的人工现实***通常无法向人工现实设备用户或周围用户传达传感器数据中的内容,也不允许用户对如何共享该信息、或者在该数据中是否描绘了人物或如何描绘人物进行任何控制。本文所描述的人工现实采集和共享***期望通过构建如下输出视图来克服现有人工现实***的这些限制:所述输出视图示出了人工现实设备用户的视角中的传感器数据或对人工现实设备正在采集的整个周围区域的世界视图重建。通过将这些输出视图提供给人工现实设备的用户或(具有相关联的隐私和认证控制的)第三方,人工现实采集和共享***允许用户了解人工现实设备如何工作以及正在收集什么数据。因此,人工现实设备用户变得对人工现实设备更熟悉并且更好地操作人工现实设备;而外部用户由于这些设备和这些设备采集的内容而变得更舒服。当外部用户开始了解到所采集到的环境数据可能更关注区域中对象的深度和形状,而不是这些对象及其活动的视频质量流时,这一点尤其正确。此外,人工现实采集和共享***可以允许人工现实设备用户和/或其它用户控制存储什么传感器数据和/或如何描绘人物。通过识别所采集到的传感器数据中的用户并应用为个体或为用户分类建立的过滤器,人工现实采集和共享***可以增加隐私、为所描绘的人物提供增强(例如,朋友或其它状态指示器、诸如将用户的注意力带到该用户可能想要与之交互的用户等关注提示等)、以及与人物进行交互(例如更快和更准确地选择这些人物或与他们共享项目)。
以下参照附图更详细地论述了数个实施方式。图1为示出了所公开技术的一些实施方式可在其上运行的各设备的概况的框图。这些设备可以包括计算***100的硬件部件,该硬件部件可以控制人工现实设备如何采集和共享周围环境信息。在各种实施方式中,计算***100可以包括单个计算设备103或多个计算设备(例如,计算设备101、计算设备102和计算设备103),该多个计算设备通过有线信道或无线信道通信,以分发处理并共享输入数据。在一些实施方式中,计算***100可以包括独立头戴式设备,该独立头戴式设备能够在无需外部处理或外部传感器的情况下,为用户提供计算机创建或增强的体验。在其它实施方式中,计算***100可以包括多个计算设备,该多个计算设备例如为头戴式设备和核心处理部件(例如,控制台、移动设备或服务器***),其中,一些处理操作在头戴式设备上执行而其它处理操作被转移(offload)到核心处理部件。以下结合图2A和图2B描述了示例头戴式设备。在一些实施方式中,可以仅由结合在头戴式设备中的传感器收集位置数据和环境数据,而在其它实施方式中,各非头戴式设备计算设备中的一个或多个非头戴式设备计算设备可以包括可追踪环境数据或位置数据的传感器部件。
计算***100可以包括一个或多个处理器110(例如,中央处理单元(centralprocessing unit,CPU)、图形处理单元(graphical processing unit,GPU)、全息处理单元(holographic processing unit,HPU)等)。处理器110可以是单个处理单元或多个处理单元,该多个处理单元位于一设备中或分布在多个设备上(例如,分布在计算设备101至103中的两个或更多个计算设备上)。
计算***100可以包括一个或多个输入设备120,该一个或多个输入设备向处理器110提供输入,从而向这些处理器通知动作。这些动作可以由硬件控制器传送,该硬件控制器对从输入设备接收到的信号进行解释,并使用通信协议向处理器110传送信息。每个输入设备120例如可以包括鼠标、键盘、触摸屏、触摸板、可穿戴输入设备(例如,触觉手套、手镯、戒指、耳环、项链、手表等)、摄像头(或其它基于光的输入设备,例如红外传感器)、传声器或其它用户输入设备。
处理器110例如可以通过使用内部总线或外部总线而耦接到其它硬件设备,上述总线例如为PCI总线、SCSI总线或无线连接。处理器110可以与设备(例如,显示器130)的硬件控制器进行通信。显示器130可以用于显示文本和图形。在一些实施方式中,显示器130包括输入设备,例如当该输入设备是触摸屏或该输入设备配备有眼动方向监测***时,该输入设备作为显示器的一部分。在一些实施方式中,显示器与输入设备分开。显示设备的示例为:LCD显示屏、LED显示屏、投影显示器、全息显示器或增强现实显示器(例如,平视显示设备或头戴式设备)等。其它I/O设备140也可以耦接到处理器,其它I/O设备例如为网络芯片或网卡、视频芯片或视频卡、音频芯片或音频卡、USB、火线或其它外部设备、摄像头、打印机、扬声器、CD-ROM驱动器、DVD驱动器、磁盘驱动器等。
在一些实施方式中,来自I/O设备140(例如,摄像头、深度传感器、IMU传感器、GPS单元、激光雷达(LiDAR)或其它飞行时间传感器等)的输入可以被计算***100用于识别和绘制用户的物理环境的地图,同时追踪用户在这个环境中的定位。这种同步定位与地图构建(simultaneous localization and mapping,SLAM)***可以生成针对一区域(其可以是房间、建筑物、户外空间等)的地图(例如,拓扑、网格等),和/或获取先前由该计算***100或已经绘制了该区域地图的另一计算***所生成的地图。该SLAM***可以基于诸如GPS数据等因素追踪该区域内的用户,将识别出的对象和结构与所映射的对象和结构相匹配,从而监测加速度和其它位置变化等。
计算***100可以包括这样的通信设备:该通信设备能够与其它本地计算设备或网络节点无线地通信或基于有线地通信。该通信设备可以通过网络例如使用TCP/IP协议与另一设备或服务器通信。计算***100可以利用该通信设备在多个网络设备上分发操作。
处理器110可以访问存储器150,该存储器可以被包含在计算***100的各计算设备中的一个计算设备上,或者可以分布在计算***100的多个计算设备或其它外部设备上。存储器包括用于易失性存储或非易失性存储的一个或多个硬件设备,并且可以包括只读存储器和可写存储器这两者。例如,存储器可以包括以下中的一者或多者:随机存取存储器(random access memory,RAM)、各种高速缓冲存储器、CPU寄存器、只读存储器(read-onlymemory,ROM)和可写非易失性存储器,该可写非易失性存储器例如为闪存、硬盘驱动器、软盘、CD、DVD、磁存储设备和磁带驱动器等。存储器不是脱离底层硬件的传播信号;因此存储器是非暂态的。存储器150可以包括存储程序和软件的程序存储器160,所述程序和软件例如为操作***162、人工现实采集和共享***164和其它应用程序166。存储器150还可以包括数据存储器170,该数据存储器可以包括可被提供给程序存储器160或计算***100的任何元件的传感器数据、输出视图、输出视图隐私或授权设置、用户标识符、过滤器、过滤器列表、配置数据、设置、用户选项或偏好等。
一些实施方式可以与许多其它计算***环境或配置一起运行。可适用于与该技术一起使用的计算***、环境和/或配置的示例包括但不限于XR头戴式设备、个人计算机、服务器计算机、手持式设备或膝上型设备、蜂窝电话、可穿戴电子设备、游戏控制台、平板设备、多处理器***、基于微处理器的***、机顶盒、可编程消费类电子设备、网络个人计算机(PC)、小型计算机、大型计算机、或包括上述***或设备中的任何***或设备的分布式计算环境等。
图2A为根据一些实施例的虚拟现实头戴式显示器(HMD)200的线示图。HMD 200包括前部刚性体205和带210。前部刚性体205包括电子显示器245的一个或多个电子显示元件、惯性运动单元(inertial motion unit,IMU)215、一个或多个位置传感器220、多个***225以及一个或多个计算单元230。位置传感器220、IMU 215和计算单元230可以位于HMD200内部,并且可以对用户不可见。在各种实施方式中,IMU 215、位置传感器220和***225可以以三自由度(three degrees of freedom,3DoF)或六自由度(six degrees offreedom,6DoF)来追踪HMD 200在真实世界中和虚拟环境中的移动和定位。例如,***225可以发射红外光束,这些红外光束在HMD 200周围的真实对象上产生光点。作为另一个示例,IMU 215例如可以包括:一个或多个加速度计;一个或多个陀螺仪;一个或多个磁力计;其它非基于摄像头的位置传感器、力传感器或方位传感器;或它们的组合。与HMD 200集成在一起的一个或多个摄像头(未示出)可以检测光点。HMD 200中的计算单元230可以使用所检测到的光点,来推测HMD 200的位置和移动,以及识别HMD 200周围的真实对象的形状和位置。
电子显示器245可以与前部刚性体205集成在一起,并且可以如计算单元230所指示的向用户提供图像光。在各种实施例中,电子显示器245可以是单个电子显示器或多个电子显示器(例如,用户的每只眼睛一个显示器)。电子显示器245的示例包括:液晶显示器(liquid crystal display,LCD)、有机发光二极管(organic light-emitting diode,OLED)显示器、有源矩阵有机发光二极管显示器(active-matrix organic light-emittingdiode display,AMOLED)、包括一个或多个量子点发光二极管(quantum dot light-emitting diode,QOLED)子像素的显示器、投射器单元(例如,微型LED、激光器(LASER)等)、某种其它显示器或它们的某种组合。
在一些实施方式中,HMD 200可以耦接到诸如个人计算机(personal computer,PC)(未示出)等核心处理部件和/或一个或多个外部传感器(未示出)。外部传感器可以(例如,通过从HMD 200发射的光)对HMD 200进行监测,PC可以使用该HMD结合来自IMU 215和位置传感器220的输出,来确定HMD 200的定位和移动。
图2B为混合现实HMD***250的线示图,该混合现实HMD***包括混合现实HMD 252和核心处理部件254。混合现实HMD 252和核心处理部件254可以通过如链路256所指示的无线连接(例如,60GHz链路)进行通信。在其它实施方式中,混合现实***250仅包括头戴式设备而没有外部计算设备,或者在混合现实HMD 252与核心处理部件254之间包括其它有线连接或无线连接。混合现实HMD 252包括透传式显示器258和框架260。框架260可以容纳各种电子部件(未示出),例如光投射器(例如,激光器、LED等)、摄像头、眼动追踪传感器、微机电***(MEMS)部件、网络部件等。
投射器可以例如通过光学元件耦接到透传式显示器258,以向用户显示媒体。光学元件可以包括用于将来自投射器的光引导到用户的眼睛的一个或多个波导组件、一个或多个反射器、一个或多个透镜、一个或多个反射镜、一个或多个准直器、一个或多个光栅等。可以通过链路256将图像数据从核心处理部件254向HMD 252传输。HMD 252中的控制器可以将图像数据转换为来自投射器的多个光脉冲,这些光脉冲可以作为输出光通过光学元件传输到用户的眼睛。该输出光可以与穿过显示器258的光混合,从而允许输出光呈现以下虚拟对象:这些虚拟对象看起来如同存在于真实世界中一样。
与HMD 200类似,HMD***250也可以包括运动和位置追踪单元、摄像头、光源等,上述运动和位置追踪单元、摄像头、光源等允许HMD***250例如以3DoF或6DoF追踪其自身,追踪用户的各部分(例如,手部、脚部、头部、或其它身体部位),将虚拟对象绘制为在HMD 252移动时看起来如同静止一样,以及使虚拟对象对手势和其它真实世界对象做出反应。
图2C示出了多个控制器270,在一些实施方式中,用户可以单手或双手握持这些控制器以与由HMD 200和/或HMD 250呈现的人工现实环境进行交互。控制器270可以直接或通过外部设备(例如,核心处理部件254)与HMD通信。各控制器可以具有其自己的IMU单元、位置传感器,和/或可以发射更远的光点。HMD 200或HMD 250、外部传感器或控制器中的传感器可以追踪这些控制器光点以确定控制器的位置和/或方位(例如,以便以3DoF或6DoF追踪控制器)。HMD 200中的计算单元230或核心处理部件254可以结合IMU输出和位置输出,使用这种追踪来监测用户的手部位置和手部运动。控制器还可以包括各种按钮(例如,按钮272A至272F)和/或操纵杆(例如,操纵杆274A和274B),用户可以致动这些按钮和/或操纵杆来提供输入并与对象进行交互。
在各种实施方式中,HMD 200或HMD 250还可以包括附加的子***(例如,眼动追踪单元、音频***、各种网络部件等),以监测用户的交互和意图的指示。例如,在一些实施方式中,代替控制器或除控制器之外,HMD 200或HMD 250中所包括的或来自外部摄像头的一个或多个摄像头可以监测用户的手部的位置和姿势,以确定手势和其它手部运动和身体运动。作为另一个示例,一个或多个光源可以照射用户的双睛中的任一只眼睛或两只眼睛,并且HMD 200或HMD 250可以使用面向眼睛的摄像头来采集该光的反射以(例如,基于围绕用户角膜的一组反射)确定眼睛位置,从而对用户的眼睛进行建模并确定注视方向。
图3为示出了本技术的一些实施方式可在其中运行的环境300的概况的框图。环境300可以包括一个或多个客户端计算设备305A至305D,这些客户端计算设备的示例可以包括计算***100。在一些实施方式中,各客户端计算设备中的一些客户端计算设备(例如,客户端计算设备305B)可以是HMD200或HMD***250。客户端计算设备305可以在网络环境中使用通过网络330到一个或多个远程计算机(例如,服务器计算设备)的逻辑连接来运行。
在一些实施方式中,服务器310可以是边缘服务器,该边缘服务器接收多个客户端请求,并通过其它服务器(例如,服务器320A至320C)协调实现那些请求。服务器计算设备310和320可以包括计算***,例如计算***100。尽管每个服务器计算设备310和320在逻辑上被显示为单个服务器,但多个服务器计算设备均可以是以下分布式计算环境:该分布式计算环境包含位于同一物理位置处或地理上不同的物理位置处的多个计算设备。
客户端计算设备305、以及服务器计算设备310和320均可以充当一个或多个其它服务器/客户端设备的服务器或客户端。服务器310可以连接到数据库315。服务器320A至320C可以各自连接到对应的数据库325A至325C。如以上所论述的,每个服务器310或320可以与一组服务器相对应,并且这些服务器中的各个服务器可以共享数据库,或者可以具有其自己的数据库。尽管数据库315和325在逻辑上被显示为单个单元,但是数据库315和325可以各自是包含多个计算设备的分布式计算环境,可以位于其对应的服务器内,或者可以位于同一物理位置或地理上不同的物理位置处。
网络330可以是局域网(local area network,LAN)、广域网(wide area network,WAN)、网状网络、混合网络或其它有线网络或无线网络。网络330可以是互联网或某种其它的公共网络或专用网络。客户端计算设备305可以通过网络接口(例如通过有线通信或无线通信)连接到网络330。尽管服务器310与服务器320之间的连接被示为单独的连接,但是这些连接可以是任何种类的局域网、广域网、有线网络或无线网络,其包括网络330或单独的公共网络或专用网络。
在一些实施方式中,服务器310和320可以用作社交网络的一部分。社交网络可以维护社交图谱并基于该社交图谱执行各种动作。社交图谱可以包括由(表示交互、活动、或相关性的)多条边互连的一组节点(这些节点表示社交网络***对象,也称为社交对象)。社交网络***对象可以是社交网络***用户、非人实体、内容项、群组、社交网络***页面、定位、应用、主题、概念表示或其它社交网络***对象,该其它社交网络***对象例如为电影、乐队、书等。内容项可以是任何数字数据,例如文本、图像、音频、视频、链接、网页、细节(例如,由客户端设备提供的诸如情绪指示符、状态文本片段、定位指示符等标记)或其它多媒体。在各种实施方式中,内容项可以是社交网络项或社交网络项的部分,例如帖子、喜欢、通报表扬(mention)、新闻项、事件、股份(share)、评论、消息、其它通知等。在社交图谱的上下文中,主题和概念包括表示如下节点:这些节点表示任何人、位置、事物或想法。
社交网络***可以使用户能够输入和显示与用户的兴趣有关的信息、年龄/出生日期、定位(例如,经度/纬度、国家、地区、城市等)、教育信息、生命阶段、婚姻状况、姓名、通常使用的设备型号、被标识为用户熟悉的语言、职业、联系信息或用户资料中的其它人口统计或生物信息。在各种实施方式中,可以通过社交图谱中的节点或节点之间的边来表示任何这种信息。社交网络***可以使用户能够上传或创建图片、视频、文档、歌曲、或其它内容项,并且可以使用户能够创建和安排事件。在各种实施方式中,可以通过社交图谱中的节点或节点之间的边来表示内容项。
社交网络***可以使用户能够执行上传或创建内容项、与内容项或其它用户交互、表达兴趣或意见、或执行其它动作。社交网络***可以提供各种手段来与社交网络***内的非用户对象交互。在各种实施方式中,可以通过社交图谱中的节点或节点之间的边来表示动作。例如,用户可以形成或加入群组,或者变成社交网络***内的页面或实体的爱好者。此外,用户可以创建、下载、查看、上传、链接到、标记、编辑、或播放社交网络***对象。用户可以在社交网络***的背景之外与社交网络***对象交互。例如,新闻网站上的文章可能具有用户可点击的“喜欢”按钮。在这些实例中的每个实例中,可以通过社交图谱中将用户的节点连接到对象的节点的边,来表示该用户与该对象之间的交互。作为另一个示例,用户可以使用定位检测功能(例如,移动设备上的GPS接收器)而到特定位置“签到”,并且在社交图谱中,边可以将该用户的节点与该定位的节点连接。
社交网络***可以向用户提供各种通信信道。例如,社交网络***可以使用户能够向一个或多个其它用户发送电子邮件、即时消息或文本/SMS消息。社交网络***可以使用户能够将消息发布到用户墙或用户资料或另一用户墙或另一用户资料。社交网络***可以使用户能够将消息发布到群组或粉丝页面。社交网络***可以使用户能够对由该用户或另一用户创建或上传的图像、涂鸦墙(wall post)或其它内容项进行评论。并且,社交网络***可以允许用户(通过其个性化化身)与虚拟环境中的对象或其它化身等交互。在一些实施例中,用户可以将一状态消息发布到用户资料,该状态消息指示当前事件、心理状态、想法、感受、活动或任何其它当前时间相关交流。社交网络***可以使各用户不仅能够在社交网络***内通信而且能够与社交网络***外部通信。例如,第一用户可以在社交网络***内向第二用户发送消息,可以通过社交网络***向第二用户发送电子邮件,可以向社交网络***外的第二用户发送源自该社交网络***的电子邮件,可以在社交网络***内向第二用户发送即时消息,可以向社交网络***外的第二用户发送源自社交网络***的即时消息,可以在各用户之间提供语音或视频消息传递,或者可以提供虚拟环境(在该虚拟环境中,各用户可以通过其自己的化身或其它数字表示进行通信和交互)。此外,第一用户可以对第二用户的资料页面进行评论,或者可以对与第二用户相关联的对象(例如,由第二用户上传的内容项)进行评论。
社交网络***使用户能够将其自己与社交网络***中的其它用户相关联,并且建立与这些用户的连接。当两个用户(例如,社交图谱节点)在社交网络***中明确建立社交连接时,这两个用户在社交网络***的背景内变为“朋友”(或者,“连接”)。例如,“简·史密斯(Jane Smith)”所接受的、从“约翰·多伊(John Doe)”到Jane Smith的朋友请求是社交连接。该社交连接可以是社交图谱中的边。与无关联的各用户可获得的关于彼此的信息相比,成为朋友、或处于社交图谱上的朋友边的阈值数量内可以允许用户访问更多关于彼此的信息。例如,成为朋友可以允许用户查看另一用户的资料、查看另一用户的朋友或查看另一用户的照片。类似地,成为社交网络***内的朋友可以允许用户有更多的机会与另一用户例如通过电子邮件(社交网络***内部和外部)、即时消息、文本消息、电话或任何其它通信接口而通信。成为朋友可以允许用户访问,以查看、评论、下载、支持(endorse)另一用户所上传的内容项,或以其它方式与另一个用户所上传的内容项交互。可以通过表示两个社交网络***用户的节点之间的边,来表示在社交网络***的背景内建立连接、访问用户信息、通信和交互。
除了在社交网络***中明确建立连接之外,出于确定社交背景(该社交背景在确定交流主题时使用)的目的,具有共同特性的各用户可以被认为是有联系的(例如,软连接或隐式连接)。在一些实施例中,属于公共网络的各用户被认为是有联系的。例如,上同一所学校的各用户、为同一家公司工作的各用户或属于同一社交网络***群组的各用户可以被认为是有联系的。在一些实施例中,具有共同生物特性的各用户被认为是有联系的。例如,用户出生或居住的地理区域、用户的年龄、用户的性别和用户的婚姻状况可以用于确定各用户是否是有联系的。在一些实施例中,具有共同兴趣的各用户被认为是有联系的。例如,用户的电影偏好、音乐偏好、政治观点、宗教观点或任何其它兴趣可以用于确定各用户是否是有联系的。在一些实施例中,已经在社交网络***内进行了同一行为的各用户被认为是有联系的。例如,认可或推荐同一对象的各用户、对同一内容项进行评论的各用户或对同一事件进行回应(RSVP)的各用户可以被认为是有联系的。社交网络***可以利用社交图谱来确定与特定用户有联系的各用户或与特定用户相似的各用户,以便确定或评估这些用户之间的社交背景。社交网络***可以利用这种社交背景和共同属性来促进内容分发***和内容缓存***可预测地选择用于缓存在缓存设备(该缓存设备与特定社交网络账号相关联)中的内容项。
图4为示出了在一些实施方式中可用于采用了所公开技术的***的各部件400的框图。部件400可以被包括在计算***100的一个设备中,或者可以分布在计算***100的多个设备上。部件400包括硬件410、中间件420和专用部件430。如以上所论述的,实现所公开技术的***可以使用各种硬件,这些硬件包括处理单元412、工作存储器414、输入和输出设备416(例如,摄像头、显示器、IMU单元、网络连接等)以及存储存储器418。在各种实施方式中,存储存储器418可以是以下中的一者或多者:本地设备、到远程存储设备的接口或它们的组合。例如,存储存储器418可以是可通过***总线访问的一个或多个硬盘驱动器或闪存驱动器,或者可以是可通过一个或多个通信网络访问的云存储供应商(例如,在存储器315或325中)或其它网络存储器。在各种实施方式中,部件400可以在客户端计算设备(例如,客户端计算设备305)中实现,或者在服务器计算设备(例如,服务器计算设备310或320)上实现。
中间件420可以包括对硬件410和专用部件430之间的资源进行传递的部件。例如,中间件420可以包括操作***、服务、驱动器、基本输入输出***(basic input outputsystem,BIOS)、控制器电路或其它硬件***或软件***。
专用部件430可以包括被配置为执行用于控制人工现实设备如何采集和共享周围环境信息的操作的软件或硬件。专用部件430可以包括:传感器数据采集模块434;输出视图创建器436;人物标记器438;过滤器应用器440;以及可用于提供用户接口、传输数据和控制专用部件的部件和API(例如,接口432)。在一些实施方式中,部件400可以位于分布在多个计算设备上的计算***中,或者可以是到基于服务器的应用的接口,该基于服务器的应用执行各专用部件430中的一个或多个。尽管各专用部件430被描绘为单独的部件,但这些专用部件可以是逻辑功能或其它非物理区分的功能,和/或可以是一个或多个应用的子模块或代码块。
传感器数据采集模块434可以获取对应于传感器视图请求的传感器数据。这可以包括收集由人工现实设备采集的图像、深度、音频或其它数据。根据请求是针对视角输出视图还是针对世界视图输出视图,所获取的传感器数据可以是针对人工现实设备的整个周围区域的,也可以是仅针对人工现实设备用户可观看的部分的。以下关于图5的框504提供了获取传感器数据的附加细节。
输出视图创建器436可以接收来自传感器数据采集模块434的传感器数据,并且可以将该传感器数据格式化为输出视图。在各种情况下,这可以包括:从传感器数据创建作为3D模型的世界视图输出视图;将这种3D模型展平为图像或全景图像;或通过选择或裁剪传感器数据以仅反映对人工现实设备可见的部分,来创建视角输出视图。以下关于图5的框508提供了关于创建输出视图的附加细节。
人物标记器438可以识别和标记例如来自传感器数据采集模块434的传感器数据中描绘的人物。在各种实施方式中,人物标记器438可以使用例如用于面部识别、体态识别、与所描绘的人物相关联的设备识别等的技术来实现这一点。然后,人物标记器438可以用对应的用户标识符来标记传感器数据的各部分(例如,图像中的各区域)。以下关于图6中的框602提供了关于识别和标记传感器数据中的人物的附加细节。
过滤器应用器440可以检查由人物标记器438标记的用户是否满足应用过滤器的规则或者是否在过滤器列表上,如果是,则可以应用对应的过滤器(例如进行模糊、面部模糊等的过滤器)、应用覆盖(例如,贴纸、词语、服饰、动画、化妆等)、使人物的部位变形、对人物应用阴影或高亮、在空间上将内容与人物相关联(例如,检索人物的批注(note)并将其作为相关的世界锁定内容而放置)等。以下关于图6的框604和606提供了选择过滤器并将其应用于被标记的人物的附加细节。
本领域技术人员将理解的是,上述图1至图4中所示的、以及以下所论述的各流程图中每个流程图所示的部件可以以各种方式改变。例如,可以重新排列逻辑的顺序,可以并行地执行多个子步骤,可以省略所示出的逻辑,可以包括其它逻辑等。在一些实施方式中,上述各部件中的一个或多个部件可以执行以下描述的各过程中的一个或多个过程。
图5为示出了在本技术的一些实施方式中、用于提供示出了人工现实设备的所采集到的传感器数据的输出视图的过程500的流程图。在一些实施方式中,过程500可以在人工现实设备上执行,而在其它情况下,过程500可以在接收来自人工现实设备的传感器数据的服务器***上执行。
在框502处,过程500可以接收传感器视图请求。在各种实施方式中,传感器视图请求可以来自内部***(例如,设置过程的一部分或人工现实设备用户激活控件以查看这个设备正在采集什么或将用户的视角发送到另一***)或者可以是来自外部设备的请求(例如,附近的用户请求查看她的图像是否正在被采集或采集中心请求采集该区域中的设备)。当请求来自外部***时,过程500可以包括各种隐私和认证步骤,例如获得请求者凭证以证明其身份、请求人工现实设备用户同意该请求、检查被允许的观看者列表等。当该请求来自当前人工现实设备用户时,过程500可以包括:选择将结果输出视图发送给哪些用户和/或该结果输出视图是公共可观看的还是对具有某些特性的用户(例如,在社交图谱上被定义为用户的“朋友”的用户)可观看。
在框504处,过程500可以获取与传感器视图请求相对应的传感器数据。在各种实施方式中,传感器数据可以包括来自人工现实设备的周围环境的图像数据、(例如,来自飞行时间传感器、来自基于其视角中的增量(delta)确定各点的深度数据的多个摄像头、来自投射光的图案并根据图案变形确定深度数据的结构光***等的)深度数据、音频数据等。传感器数据可以来自人工现实设备的用户的视角内和视角外两者或任一者的区域。在一些情况下,该请求可以指定输出视图应该是世界视图还是视角视图。在其它情况下,过程500可以被配置为仅创建这些视图中的一个视图。当过程500正在创建视角输出视图时,传感器数据可以仅是包括用户可观看的区域的那部分。如本文所使用的,“视角”是用户可以从人工现实设备查看的显示器的一区域。这与世界视图相对,世界视图包括人工现实设备可观看的所有区域,无论这些区域是否是对用户可见的。
在框506处,过程500可以创建输出视图。输出视图是由人工现实设备收集的传感器数据的可显示表示。过程500可以根据在框504处获取的传感器数据来创建输出视图,从而形成关于3D环境的视图,该关于3D环境的视图显示了人工现实设备的周围环境的多个部分。在各种实施方式中,输出视图可以是一幅或多幅图像、3D模型或网格、点云、全景图像、视频等。在一些情况下,例如,当创建世界视图输出视图时,过程500可以通过将传感器深度数据转换成相对于原点(例如,在人工现实设备处)的3D位置,来将传感器数据重建成3D模型。在一些情况下,这个3D模型或像素云可以是输出视图,而在其它情况下,可以通过使用定位在人工现实设备的、与该3D模型或像素云相关的定位处的虚拟摄像头(或360度虚拟摄像头)拍摄照片,来将这种3D模型展平为图像或全景图像。在一些实施方式中,例如在输出视图是视角输出视图时的一些实例,过程500可以创建由人工现实设备采集的、可由人工现实设备用户观看的图像数据的直播。在又一些其它情况下,视角输出视图可以是世界视图输出视图的、与人工现实设备用户可看到的世界区域一致的部分。
在框508处,过程500可以响应于传感器视图请求来提供在框506处创建的输出视图。在各种实施方式中,这可以包括(例如,当该请求来自内部***时)在人工现实设备上显示所创建的输出视图,或(例如,当该请求来自经验证/被授权的其它用户或***时)将输出视图发送给第三方。在一些情况下,可以将输出视图提供给中央***(在本文中被称为“采集中心”),然后,其他用户可以访问该中央***,以查看单个设备正在采集什么。在一些情况下,采集中心可以对来自多个人工现实设备的各输出视图进行组合,从而允许观看用户查看哪些区域正在被一个或多个设备采集,并且经组合的输出视图可以提供示出了哪个设备或哪些设备正在采集哪个区域或哪些区域的指示(例如,边界或彩色阴影)。在提供输出视图之后,过程500可以结束。
图6是示出了一些实施方式中用于向所采集到的传感器数据添加人物过滤器的过程的流程图600。在各种情况下,过程600可以在人工现实设备上执行,或在接收来自人工现实设备的传感器数据的服务器***上执行。
在框602处,过程600可以识别和标记传感器数据中所描绘的人物。在框602处,过程可以例如分析图像数据和设备通信数据,以应用识别人物的各种识别技术(例如面部识别、体态识别、与所描绘的人物相关联的设备的识别等)。传感器数据的各部分(例如,图像中的各区域)可以用对应的用户标识符来标记。此外,可以(例如,使用机器学习身体建模技术)对用户的图像进行分割,使得所识别的用户的这些部分(例如他们的头部或脸部、躯干、手臂等)可以被单独地遮盖,以便对用户的各部分应用过滤器。
在框604处,过程600可以将在框602中识别的人物的标记与过滤器列表进行比较,以识别哪些应该应用过滤器。过滤器列表可以是由人工现实设备用户定义的和/或由描绘的人物定义的一组映射,该组映射指定了应该将哪些过滤器应用于特定人物或特定类别的人物。在一些情况下,过滤器列表可以将各个体人物标识符映射到各过滤器。在其它情况下,过滤器列表可以映射人物的类别,例如在社交图谱中指定的当前用户的朋友、当前用户已经手动分类的人物(例如,当前用户想要交谈的人物的提示)、在社交图谱中指定的与当前用户在共同社交群组中的人物、具有或不具有被验证的认证或隐私许可集合的人物等。在一些实施方式中,代替使用过滤器列表,可以应用规则来为特定用户选择过滤器。例如,人工现实设备可以基于用户的注视方向来确定用户的当前关注,并且规则可以指示用户的注视方向之外的各用户应该应用模糊过滤器。在各种实施方式中,过滤器可以向用户应用任何数量的效果,例如用于以下目的的效果:模糊、面部模糊、应用覆盖(例如,贴纸、词语、服饰、动画、化妆等)、使人物的部位变形、对人物应用阴影或高亮、在空间上将内容与人物相关联(例如,检索人物的批注并将其作为相关的世界锁定内容来放置)等。
在框606处,过程600可以追踪传感器数据中被标记的人物,并且应用在框604处所选择的过滤器。在一些实施方式中,仅当传感器数据被传送出人工现实设备时(例如,当如图5所描述的从人工现实设备共享时),才可以将过滤器应用于传感器数据,或者可以将过滤器应用于通过人工现实设备观看的人物的实时视图。在一些情况下,过滤器可以作为传感器数据的附加物来执行,同时保持原始传感器数据(例如,作为覆盖),而在其它情况下,过滤器永久地编辑源传感器数据(例如,以模糊所采集到的人物图像或在人工现实设备上应用隐私控制)。在应用过滤器之后,过程600可以结束。
图7为示出了来自人工现实设备的输出视图的世界视图版本的示例700的概念图。在示例700中,世界视图基于由人工现实设备所采集到的深度图像显示人工现实设备周围的环境的全景图像702。全景图像702是通过从人工现实设备的视角展平3D模型来创建的,其中3D模型是基于由人工现实设备采集的点云的,其中每个像素具有相关联的深度。尽管示例700显示了全景图像702的单个视图,并因此仅显示了所采集到的人工现实设备周围的区域的一部分,但是观看用户可以激活控件704A至704D来平移全景图像,以观看由人工现实设备采集到的周围区域的其余部分。
图8为示出了来自人工现实设备的输出视图的视角版本的示例800的概念图。在示例800中,视角视图是人工现实设备周围的环境的、该人工现实设备的用户可观看的一部分的图像802。该图像802是通过将(如以上在图7中论述的)世界视图输出视图裁剪成仅对应于人工现实设备的显示区域的部分来创建的。因此,图像802显示了人工现实设备可以向其添加虚拟对象以供用户观看的周围环境的一部分。当人工现实设备用户移动人工现实设备时,图像802可以被更新以示出用户的当前可观看区域。
图9A为示出了人物过滤器修改由人工现实设备采集到的人物视图的第一示例900的概念图。在示例900中,人工现实设备已经(例如,基于用户的注视方向和具有这些人物的社交背景)确定人工现实设备的用户的当前关注在人物702A和702B上。人工现实设备还已经识别了视图中的多个其他人物。基于非关注人物的面部应该应用模糊效果的规则,人工现实设备已经将模糊效果704A至704H应用于非关注人物的面部。
图9B为示出了人物过滤器修改由人工现实设备采集到的人物视图的第二示例950的概念图。在示例950中,人工现实设备已经采集到描绘了数个人物的图像。人工现实设备已经识别并标记了人物702和704。通过将这些标记与人工现实设备用户已经指示了她想要提示的人物的列表进行比较,人工现实设备已经确定用户702在该列表上。作为响应,人工现实设备已经对用户应用了高亮覆盖过滤器702,使得人工现实设备用户看到高亮706,从而提示她用户702在她的列表上。
在本说明书中对“实施方式”(例如,“一些实施方式”、“各种实施方式”、“一个实施方式”、“一实施方式”等)的提及意味着,关于该实施方式而描述的特定特征、结构或特性被包括在本公开的至少一个实施方式中。这些短语在说明书中不同地方的出现不一定都指同一实施方式,也不一定是与其它实施方式相互排斥的单独实施方式或替代实施方式。此外,描述了可由一些实施方式而不由其它实施方式呈现的各种特征。类似地,描述了可以是一些实施方式的要求而不是其它实施方式的要求的各种要求。
如本文所使用的,高于阈值意味着被比较项的值高于指定的其它值,被比较项位于具有最大值的、某个指定数量的项中,或者被比较项具有在指定的最高百分比值内的值。如本文所使用的,低于阈值意味着被比较项的值低于指定的其它值,被比较项位于具有最小值的、某个指定数量的项中,或者被比较项具有在指定的最低百分比值内的值。如本文所使用的,处于阈值内意味着被比较项的值在两个指定的其它值之间,被比较项位于中间的指定数量的项中,或者被比较项具有在中间指定百分比范围内的值。当没有另外定义时,诸如高或不重要等相对术语可以被理解为分配一个值并确定该值如何与所建立的阈值进行比较。例如,短语“选择快速连接”可以被理解为意味着选择具有所分配的与其高于阈值的连接速度相对应的值的连接。
如本文所使用的,词语“或”是指一组项的任何可能的排列。例如,短语“A、B或C”指的是A、B、C中的至少一者或它们的任何组合,例如以下任何一种:A;B;C;A和B;A和C;B和C;A、B和C;或任何项的倍数,例如A和A;B、B和C;A、A、B、C和C;等。
尽管已经用专用于结构特征和/或方法动作的语言描述了该主题,但应理解的是,在所附权利要求书中所限定的主题不必局限于上述特定特征或动作。本文已出于说明的目的描述了特定的实施例和实施方式,但可以在不脱离这些实施例和实施方式的范围的情况下进行各种修改。上述特定特征和动作是作为实现所附权利要求书的示例形式而公开的。因此,除了受所附权利要求书限制之外,实施例和实施方式不受限制。
以上所提到的任何专利、专利申请和其它参考文献都通过引用并入到本文。如果需要,可以对各方面进行修改,以采用上述各种参考文献的***、功能和概念来提供又一些的实施方式。如果通过引用并入的文献中的陈述或主题与本申请的陈述或主题相冲突,则以本申请为准。
Claims (10)
1.一种用于采集和共享人工现实设备的周围环境信息的方法,所述方法包括:
在所述人工现实设备处接收观看由所述人工现实设备采集到的传感器数据的请求;
获取对应于所述请求的传感器数据,其中,所述传感器数据包括图像数据,所述图像数据显示了所述人工现实设备的、处于所述人工现实设备的用户的视角内和视角外的周围环境;
根据所获取的所述传感器数据创建输出视图,所述输出视图包括关于3D环境的视图,所述关于3D环境的视图显示了由所述人工现实设备检测和重建的、所述人工现实设备的所述周围环境的多个部分;以及
响应于所述请求,提供所述输出视图。
2.根据权利要求1所述的方法,其中,所述请求源自所述人工现实设备的用户。
3.根据权利要求1所述的方法,
其中,所述请求源自所述人工现实设备外部的***,并且
其中,所述输出视图是通过采集中心来提供给观看用户的,在所述采集中心中,所述观看用户访问基于两个或更多个输出视图的视图,其中,所述两个或更多个输出视图中的至少一个输出视图来自第二人工现实设备。
4.根据权利要求1至3中任一项所述的方法,还包括:在响应于所述请求提供所述输出视图之前,获取来自所述人工现实设备的用户的、对共享所述输出视图的授权。
5.根据权利要求1至4中任一项所述的方法,其中,所述输出视图是以下项中的一项:所述人工现实设备周围的区域的至少一部分的3D模型;所述人工现实设备周围的区域的至少一部分的点云;或通过展平描绘了所述人工现实设备周围的区域的3D模型的所述至少一部分而创建的、所述人工现实设备周围的所述区域的至少一部分的全景图像。
6.根据权利要求1至5中任一项所述的方法,还包括:
识别并标记所述传感器数据中描绘的一个或多个人物;
将所标记的所述一个或多个人物与过滤器列表进行比较,以用设置的过滤器识别至少一个人物;以及
将所述设置的过滤器应用于对所述至少一个人物的描绘,以改变所述至少一个人物在所述输出视图中的外观。
7.根据权利要求6所述的方法,其中,所述设置的过滤器遮挡所述至少一个人物的至少面部。
8.一种计算机可读存储介质,所述计算机可读存储介质存储有指令,所述指令在被计算***执行时,使得所述计算***执行用于共享人工现实设备的周围环境信息的过程,所述过程与根据权利要求1至7中任一项所述的方法相对应,或者所述过程包括:
在所述人工现实设备处接收观看由所述人工现实设备采集到的传感器数据的请求;
获取对应于所述请求的传感器数据,其中,所述传感器数据包括图像数据,所述图像数据显示了所述人工现实设备的、处于所述人工现实设备的用户的视角内和视角外的周围环境;
根据所获取的所述传感器数据创建输出视图,所述输出视图包括关于3D环境的视图,所述关于3D环境的视图显示了由所述人工现实设备检测的、所述人工现实设备的所述周围环境的多个部分;以及
响应于所述请求,提供所述输出视图。
9.一种用于共享人工现实设备的周围环境信息的计算***,所述计算***包括:
一个或多个处理器;以及
一个或多个存储器,所述一个或多个存储器存储有指令,所述指令在被所述一个或多个处理器执行时,使得所述计算***执行一过程,所述过程与根据权利要求1至7中任一项所述的方法相对应,或者所述过程包括:
在所述人工现实设备处接收观看由所述人工现实设备采集到的传感器数据的请求;
获取对应于所述请求的传感器数据,其中,所述传感器数据包括图像数据,所述图像数据显示了所述人工现实设备的、处于所述人工现实设备的用户的视角内和视角外的周围环境;
根据所获取的所述传感器数据创建输出视图,所述输出视图包括关于3D环境的视图,所述关于3D环境的视图显示了由所述人工现实设备检测的、所述人工现实设备的所述周围环境的多个部分;以及
响应于所述请求,提供所述输出视图。
10.一种用于共享人工现实设备的周围环境信息的软件产品,所述软件产品包括指令,所述指令在被计算***执行时,使得所述计算***执行用于共享所述人工现实设备的周围环境信息的过程,所述过程与根据权利要求1至7中任一项所述的方法相对应,或者所述过程包括:
在所述人工现实设备处接收观看由所述人工现实设备采集到的传感器数据的请求;
获取对应于所述请求的传感器数据,其中,所述传感器数据包括图像数据,所述图像数据显示了所述人工现实设备的、处于所述人工现实设备的用户的视角内和视角外的周围环境;
从所获取的所述传感器数据创建输出视图,所述输出视图包括关于3D环境的视图,所述关于3D环境的视图显示了由所述人工现实设备检测的、所述人工现实设备的所述周围环境的多个部分;以及
响应于所述请求,提供所述输出视图。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/466,551 US20230072623A1 (en) | 2021-09-03 | 2021-09-03 | Artificial Reality Device Capture Control and Sharing |
US17/466,551 | 2021-09-03 | ||
PCT/US2022/042616 WO2023034632A1 (en) | 2021-09-03 | 2022-09-06 | Artificial reality device capture control and sharing |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117897677A true CN117897677A (zh) | 2024-04-16 |
Family
ID=83506334
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280059316.0A Pending CN117897677A (zh) | 2021-09-03 | 2022-09-06 | 人工现实设备采集控制和共享 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230072623A1 (zh) |
EP (1) | EP4396656A1 (zh) |
CN (1) | CN117897677A (zh) |
WO (1) | WO2023034632A1 (zh) |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008160203A (ja) * | 2006-12-20 | 2008-07-10 | Shimadzu Corp | 防犯監視システム |
US20150113068A1 (en) * | 2013-10-18 | 2015-04-23 | Wesley John Boudville | Barcode, sound and collision for a unified user interaction |
US20200260142A1 (en) * | 2015-10-20 | 2020-08-13 | Sony Corporation | Information processing apparatus, control method for information processing apparatus, and computer program |
US9851561B2 (en) * | 2015-12-23 | 2017-12-26 | Intel Corporation | Head-mounted device with rear-facing camera |
US10405038B2 (en) * | 2016-08-30 | 2019-09-03 | Patrick Dean Cummins | Systems, methods, and apparatus for network architecture with video hardware basis |
US10506217B2 (en) * | 2017-10-09 | 2019-12-10 | Facebook Technologies, Llc | Head-mounted display tracking system |
US20190222823A1 (en) * | 2017-12-18 | 2019-07-18 | Immersive Tech, Inc. | Techniques for Capturing and Rendering Videos with Simulated Reality Systems and for Connecting Services with Service Providers |
KR102254174B1 (ko) * | 2019-12-10 | 2021-05-20 | 주식회사 피앤씨솔루션 | 야간 투시경 기능을 갖는 머리 착용형 디스플레이 장치 |
US20210149441A1 (en) * | 2020-08-18 | 2021-05-20 | Marko Bartscherer | Lid controller hub |
-
2021
- 2021-09-03 US US17/466,551 patent/US20230072623A1/en not_active Abandoned
-
2022
- 2022-09-06 CN CN202280059316.0A patent/CN117897677A/zh active Pending
- 2022-09-06 EP EP22778143.2A patent/EP4396656A1/en active Pending
- 2022-09-06 WO PCT/US2022/042616 patent/WO2023034632A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
EP4396656A1 (en) | 2024-07-10 |
US20230072623A1 (en) | 2023-03-09 |
WO2023034632A1 (en) | 2023-03-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11882189B2 (en) | Color-sensitive virtual markings of objects | |
JP6792039B2 (ja) | 拡張現実および仮想現実のためのシステムおよび方法 | |
CN110954083B (zh) | 移动设备的定位 | |
CN111052045B (zh) | 计算机生成的现实平台 | |
US9390561B2 (en) | Personal holographic billboard | |
CN116194869A (zh) | 人工现实协同工作环境 | |
US11636655B2 (en) | Artificial reality environment with glints displayed by an extra reality device | |
US12020667B2 (en) | Systems, methods, and media for displaying interactive augmented reality presentations | |
US11831814B2 (en) | Parallel video call and artificial reality spaces | |
US11402964B1 (en) | Integrating artificial reality and other computing devices | |
US20230072623A1 (en) | Artificial Reality Device Capture Control and Sharing | |
CN111859199A (zh) | 在环境中定位内容 | |
US11743215B1 (en) | Artificial reality messaging with destination selection | |
US11816759B1 (en) | Split applications in a multi-user communication session | |
US20230298250A1 (en) | Stereoscopic features in virtual reality | |
US20240020920A1 (en) | Incremental scanning for custom landmarkers | |
US20230237731A1 (en) | Scalable parallax system for rendering distant avatars, environments, and dynamic objects | |
CN117873354A (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 |