CN116325720A - 远程呈现中的深度冲突的动态消解 - Google Patents

远程呈现中的深度冲突的动态消解 Download PDF

Info

Publication number
CN116325720A
CN116325720A CN202080106226.3A CN202080106226A CN116325720A CN 116325720 A CN116325720 A CN 116325720A CN 202080106226 A CN202080106226 A CN 202080106226A CN 116325720 A CN116325720 A CN 116325720A
Authority
CN
China
Prior art keywords
depth
image content
content
boundary
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202080106226.3A
Other languages
English (en)
Inventor
埃里克·巴丘克
丹尼尔·E·菲什
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of CN116325720A publication Critical patent/CN116325720A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/122Improving the 3D impression of stereoscopic images by modifying image signal contents, e.g. by filtering or adding monoscopic depth cues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/593Depth or shape recovery from multiple images from stereo images
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/128Adjusting depth or disparity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/167Synchronising or controlling image signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/172Processing image signals image signals comprising non-image signal components, e.g. headers or format information
    • H04N13/183On-screen display [OSD] information, e.g. subtitles or menus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/366Image reproducers using viewer tracking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • G06T2207/10012Stereo images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/302Image reproducers for viewing without the aid of special glasses, i.e. using autostereoscopic displays
    • H04N13/305Image reproducers for viewing without the aid of special glasses, i.e. using autostereoscopic displays using lenticular lenses, e.g. arrangements of cylindrical lenses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N2013/0074Stereoscopic image analysis
    • H04N2013/0081Depth or disparity estimation from stereoscopic image signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N2013/0074Stereoscopic image analysis
    • H04N2013/0096Synchronisation or controlling aspects

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
  • Processing Or Creating Images (AREA)

Abstract

描述了系统和方法,所述系统和方法用于确定与由至少一个相机捕获的图像内容相关联的捕获体积,确定与图像内容相关联的深度,定义观看范围,在观看图像内容时在所述观看范围中描绘立体效果,确定图像内容和与观看范围相关联的边界之间的深度冲突,所述确定包括检测图像内容的至少一部分延伸超出与观看范围相关联的边界以及使用观看范围和至少一个用户界面元素来消解所述至少一部分的深度冲突,以及利用所消解的深度冲突生成经修改的图像内容以用于渲染。

Description

远程呈现中的深度冲突的动态消解
相关申请的交叉引用
本申请要求于2020年10月21日提交的题为“DYNAMIC RESOLUTION OF DEPTHCONFLICTS IN TELEPRESENCE(远程呈现中的深度冲突的动态消解)”的美国临时专利申请No.63/198,473的优先权和权益,其公开内容通过引用全部并入本文。
技术领域
本说明书总体上涉及用于消解三维(3D)远程呈现系统中的深度冲突的方法、设备和算法。
背景技术
立体显示设备通常向观看者提供内容并传达深度感知。这样的显示器可以包括围绕显示屏幕的带包边的框,该带包边的框可能不自然地切断要在显示屏幕上渲染的内容的部分的视图。切断视图可能为观看者创建冲突的视觉提示。这样的冲突会削弱3D效果,这会导致观看者视觉疲劳。
发明内容
具有一个或多个计算机的系统可以被配置为借助于使软件、固件、硬件或它们的组合安装在系统上来执行特定的操作或动作,该软件、固件、硬件或它们的组合在操作中使系统执行动作。一个或多个计算机程序可以被配置为借助于包括指令来执行特定的操作或动作,所述指令在由数据处理装置执行时使装置执行动作。
在一个一般方面,描述了利用至少一个处理设备来执行操作的系统和方法,该操作包括:确定与由至少一个相机捕获的图像内容相关联的捕获体积;确定与图像内容相关联的深度;在捕获体积内基于深度来定义观看范围,在所述观看范围中在观看图像内容时描绘立体效果;确定图像内容和与观看范围相关联的边界之间的深度冲突,确定包括:检测图像内容的至少一部分延伸超出与观看范围相关联的边界,并且响应于确定深度冲突,使用观看范围和至少一个用户界面元素来消解至少一部分的深度冲突;以及用已消解的深度冲突生成经修改的图像内容以用于渲染,经修改的图像内容包括由至少一个用户界面元素替换的图像内容的部分。
这些和其他方面可以单独或组合地包括以下中的一个或多个。例如,该系统和该方法可以包括:检测图像内容的至少一部分和与观看范围相关联的边界之间的深度冲突包括:使用与图像内容相关联的所确定的深度中的至少一些来生成多个三维体素,所述多个三维体素表示渲染图像内容的显示器的平面中的位置,距离是从至少一部分到边界,其中基于距离来选择至少一个用户界面元素。
在一些实现方式中,边界与透镜状(lenticular)显示设备的至少一个边缘相关联;基于在远程透镜状显示设备处观看图像内容的用户的被跟踪头部位置来确定深度冲突;以及消解深度冲突包括:基于用户的被跟踪用户头部位置来调整用户界面元素的大小。
在一些实现方式中,消解深度冲突包括:将至少一个用户界面元素生成为叠盖图像内容中的至少一些的框,至少一个框适于适应在图像内容中描绘的移动。在一些实现方式中,与延伸超出边界的至少一部分相对应的框的一侧被放置在与框的剩余部分平行的且在框的剩余部分的前方的不同平面中,以生成框从垂直到与垂直成非零角度的视觉上感知到的倾斜。
在一些实现方式中,至少一个用户界面元素描绘了具有附加软件程序的缩略图图像的用户界面层,在访问图像内容附加时,软件程序由至少一个处理设备在存储器中执行。在一些实现方式中,用户界面元素包括模糊叠盖物,模糊叠盖物在边界处开始,并在与描绘图像内容的显示设备的大小相关联的预定义位置处结束,其中,与模糊叠盖物相关联的模糊半径在距边界的阈值距离处被增大。
在一些实现方式中,模糊叠盖物包括具有附加软件程序的缩略图图像的用户界面层,在访问图像内容附加时,软件程序由至少一个处理设备在存储器中执行,并且模糊叠盖物是椭圆形的。在一些实现方式中,模糊叠盖物是梯度模糊,该梯度模糊从叠盖物的左中央部分到图像内容的左边缘以及从叠盖物的右中央部分到视频内容的右边缘渐变。在一些实现方式中,梯度模糊被放置在与深度冲突相关联的中央位置处,并且向外到与深度冲突相关联的第一边缘和第二边缘逐渐模糊。在一些实现方式中,消解深度冲突包括将至少一个用户界面元素动画化以用经修改的图像内容隐藏图像内容的至少一部分。
上述系统和方面可以被配置为执行上述方面的任何组合,其中每个方面可以与以上列出的特征和方面的任何适当组合一起实现。
所描述的技术的实现可以包括计算机可访问介质上的硬件、方法或处理或计算机软件。一个或多个实现的细节在附图和以下描述中阐述。其他特征将从说明书和附图以及从权利要求显而易见。
附图说明
图1是示出根据贯穿本公开描述的实现方式的用于在显示设备上显示图像内容的示例3D内容系统的框图。
图2是根据贯穿本公开描述的实现方式的用于动态消解立体显示的深度冲突的示例系统的框图。
图3是示出根据贯穿本公开描述的实现方式的用户的深度冲突的示例显示设备。
图4是示出根据贯穿本公开描述的实现方式的本地捕获体积和捕获体积内的移动范围的示例的框图。
图5是示出根据贯穿本公开描述的实现方式的远程捕获体积相对于本地捕获体积的示例的框图。
图6是示出根据贯穿本公开描述的实现方式的捕获体积的显示边缘裁剪的示例的框图。
图7A至7C是示出根据贯穿本公开描述的实现方式的显示设备的视觉感知倾斜的示例的框图。
图8A至8B是示出根据贯穿本公开描述的实现方式的消解与合成图像内容的深度冲突的示例的框图。
图9A至9B是示出根据贯穿本公开描述的实现方式的通过动态调整显示设备的显示窗口来消解深度冲突的示例的框图。
图10A至10G是示出根据贯穿本公开描述的实现方式的通过调整边界和/或边缘来消解深度冲突的示例的框图。
图11是示出根据贯穿本公开描述的实现方式的使用分段虚拟内容消解深度冲突的示例的框图。
图12是示出根据贯穿本公开描述的实现方式的放置在虚拟内容上的应用内容的示例的框图。
图13是示出根据贯穿本公开描述的实现方式的消解3D内容系统中的深度冲突的处理的一个示例的流程图。
图14示出了可以与本文描述的技术一起使用的计算机设备和移动计算机设备的示例。
各种附图中的相同附图标记指示相同元素。
具体实施方式
通常,本文件描述了与检测、分析和校正三维(3D)视频内容内的深度冲突相关的示例。深度冲突可相对于视频内容内的用户界面(UI)元素发生。例如,在3D视频内容(例如,立体视频)中,用户感知的深度可以在视频的部分内变化。这种深度变化可导致视频的部分、视频中的UI元素之间、和/或与视频中的内容和/或描绘内容的显示器相关联的包边处的深度冲突。
深度冲突对用户造成不适,这可能对用户在聚焦或平移图像内容的部分和/或UI元素内的焦点时带来困难。例如,如果用户的部分在描绘图像内容的显示屏幕的边缘处基于捕获这种内容的相机具有最大捕获空间被切断,则可能发生深度冲突。超出显示器的边缘的手(或其他对象或用户部分)的消失可能与用户的眼睛(即,大脑)预期发生的情况不协调。特别地,超出边缘(或其他定义的边界)的移动可能引起包括伪影的深度冲突,该伪影导致对用户的深度提示与内容中的移动的预期结果(即,如用户的大脑所感知的)冲突。
本文描述的系统和方法被配置为通过最小化或消除深度冲突来最大化用户的舒适区。最大化用户的舒适区可以包括:评估显示屏幕前方和后方两者的区域的深度,以便将UI元素放置在3D视频(或其他图像内容)内,使得所放置的UI元素遵守深度规则和/或最小化对这种规则的违反。在一些实现方式中,本文描述的系统和方法可以通过生成和渲染透明、半透明、模糊、部分模糊、根据梯度的模糊的UI元素等来减小或消除深度冲突。
本文描述的系统和方法可以提供优于传统的视频渲染系统的若干优点。例如,本文描述的系统和方法可以基于3D视频内的其他对象的深度来动态地修改被描绘为图像内容和/或视频内容的UI元素或对象的深度。与当内容引起深度冲突时从视频中去除内容的传统系统不同,本文所述的系统和方法用于改善可能引起深度冲突的内容的视图,如贯穿本公开的示例中所述。
如本文所使用的,深度可以指:距描绘在显示屏幕上的内容的位置的感知距离。如本文所使用的,深度提示可以指:对有助于用户可以通过眼睛理解的视觉深度感知的距离的指示或示意。示例深度提示可以包括聚散度、单眼运动视差、双眼视差、线性透视、纹理梯度、调和、视网膜图像大小、叠置、色度、阴影和空间透视中的任何一个或全部。
如本文所使用的,深度冲突可以指:用户感知的深度提示之间的不协调。例如,用户可以基于与用户的视野相对应的任何数目的深度提示来感知深度。当两个或更多个这样的深度提示彼此不协调时,可发生深度冲突。示例深度冲突可以包括但不限于近的冲突、远的冲突、图画冲突和/或遮挡和立体视觉冲突。
对深度冲突的示例校正可以包括但不限于消除深度冲突、修改像素或体素以修改深度冲突、减小深度冲突、和/或生成和/或移动内容以减少或消除深度冲突等。在一些实现方式中,本文描述的系统和方法从任何数目的深度冲突校正技术中选择一个或多个深度冲突校正。例如,本文所述的系统和方法可以组合两个或更多个UI元素以校正深度冲突。
在一些实现方式中,例如,本文所述的技术可以用于合成深度校正图像,这些深度校正图像对于在多路视频会议中使用的2D或3D显示器的屏幕上的显示来说看起来是准确且真实的。本文描述的技术可以用于生成和显示用户、对象和UI内容的准确和真实的视图(例如,图像内容、视频内容),并校正用户移动或3D显示冲突。
图1是示出根据贯穿本公开描述的实现方式的用于在立体显示设备中显示内容的示例3D内容系统100的框图。3D内容系统100可以被一个或多个用户用于:例如在单个3D显示器或其他设备上以3D(例如,远程呈现会话)视图内容进行视频会议通信。通常,图1的系统可以用于:在视频会议期间捕获用户和/或对象的视频和/或图像,并使用本文所述的系统和技术来校正可能在用户、对象和/或其他附加UI内容的显示中发生的深度冲突。
系统100可以受益于本文描述的技术的使用,因为这样的技术可以生成、修改、更新和显示与特定显示屏幕设备相关联的捕获体积的校正(例如,消解深度)视图。在一些实现方式中,捕获体积可以用于确定如何校正深度冲突。例如,可以经由系统100以2D和/或3D方式向另一用户显示视图的消解深度。
如本文所使用的,捕获体积可以指:可以由一个或多个边界限制的空间的物理体积,所述一个或多个边界由捕获在所定义的一个或多个边界内的图像/视频内容的一个或多个相机施加。在一些实现方式中,捕获体积可以指:其中用户可以被多个图像传感器(例如,相机)连续跟踪的观看体积。
如图1所示,3D内容系统100正在由第一用户102和第二用户104使用。例如,用户102和104正在使用3D内容系统100来参与3D远程呈现会话。在这样的示例中,3D内容系统100可以允许用户102和104中的每一个看到对另一个用户的高度真实的且视觉上协调的表示,从而便于用户以与彼此物理呈现类似的方式进行交互。系统100可以访问深度冲突消解器以改进、校正、减少或以其他方式修改可能在3D远程呈现会话的会话期间发生的深度冲突。
每个用户102、104可以具有对应的3D系统。这里,用户102具有3D系统106,并且用户104具有3D系统108。3D系统106、108可以提供与3D内容相关的功能,该功能包括但不限于:捕获用于3D显示的图像、处理和呈现图像信息、以及处理和呈现音频信息。3D系统106和/或3D系统108可以构成:集成为一个单元的感测设备的集合。3D系统106和/或3D系统108可以包括参考图2和14描述的组件中的一些或所有。
3D内容系统100可以包括一个或多个2D或3D显示器。这里,为3D系统106提供3D显示器110,并且为3D系统108提供3D显示器112。3D显示器110、112可以使用多种类型的3D显示技术中的任何一种来为相应的观看者(这里,例如,用户102或用户104)提供自动立体视图。在一些实现方式中,3D显示器110、112可以是独立单元(例如,自支撑的或悬挂在壁上的)。在一些实现方式中,3D显示器110、112可以包括或利用可穿戴技术(例如,控制器、头戴式显示器、智能眼镜、手表等)。在一些实现方式中,显示器110、112可以是2D显示器。
通常,诸如显示器110、112之类的显示器可以在不使用头戴式显示器(HMD)设备的情况下提供接近真实世界中的物理对象的3D光学特性的影像。通常,本文描述的显示器包括平板显示器、透镜状透镜(例如,微透镜阵列)和/或视差格栅,以将图像重新定向到与显示器相关联的多个不同观看区域。
在一些实现方式中,显示器110、112可以包括高分辨率并且无眼镜的透镜状3D显示器。例如,显示器110、112可以包括微透镜阵列(未示出),该微透镜阵列包括多个透镜(例如,微透镜),其中玻璃间隔物耦合(例如,粘结)到显示器的微透镜。微透镜可以被设计为使得从选定的观看位置,显示器的用户的左眼可以观看第一像素集,同时用户的右眼可以观看第二像素集(例如,其中第二像素集与第一像素集互为独有)。
在一些示例显示器中,可以存在提供由这样的显示器提供的图像内容(例如,用户、对象、内容等)的3D视图的单个位置。用户可以就座在单个位置以体验适当的视差、最小的失真和真实的3D图像。如果用户移动到不同的物理位置(或改变头部位置或眼睛注视位置),则图像内容(例如,用户、用户佩戴的对象和/或其他对象)可能开始显得较不真实、2D和/或失真。本文所描述的系统和技术可以重新配置从显示器投影的图像内容,以确保用户可以到处移动,而仍然体验到适当的视差、低失真率、最小的深度冲突和实时的真实的3D图像。因此,本文所述的系统和技术提供了以下优点:维持和提供3D图像内容和对象以供显示给用户,而无关在用户正在观看3D显示器的同时发生的任何用户移动。
如图1所示,3D内容系统100可以连接到一个或多个网络。这里,网络114连接到3D系统106并连接到3D系统108。网络114可以是公开可用的网络(例如,互联网)或私用网络,仅举两个示例。网络114可以是有线的或无线的,或两者的组合。网络114可以包括或利用一个或多个其他设备或系统,包括但不限于一个或多个服务器(未示出)。
3D系统106、108可以包括与3D信息的捕获、处理、传输或接收和/或3D内容的呈现相关的多个组件。3D系统106、108可以包括一个或多个相机,用于捕获要在3D呈现中包括的图像的图像内容。这里,3D系统106包括相机116和118。例如,相机116和/或相机118可以基本上设置在3D系统106的壳体内,使得相应的相机116和/或118的物镜或透镜通过壳体中的一个或多个开口来捕获图像内容。在一些实现方式中,相机116和/或118可以与壳体分离,诸如以独立设备的形式(例如,在有线和/或无线连接到3D系统106的情况下)。相机116和118可以被定位和/或定向,以便捕获用户(例如,用户102)的充分代表性的视图。
当相机116和118通常不会对用户102遮挡3D显示器110的视图时,相机116和118的放置可以任意选择。例如,相机116、118中的一个可以位于用户102的面部上方的某处,而另一个相机可以定位在面部下方的某处。例如,相机116、118中的一个可以位于用户102的面部右侧的某处,而另一个相机可以定位在面部左侧的某处。例如,3D系统108可以以类似的方式包括相机120和122。可以使用附加相机。例如,第三相机可以放置在显示器110的附近或后方。
在一些实现方式中,3D系统106、108可以包括一个或多个深度传感器,以捕获要在3D呈现中使用的深度数据。这种深度传感器可以被认为是3D内容系统100中的深度捕获组件的一部分,以用于表征由3D系统106和/或108捕获的场景以便正确地表示3D显示器上的场景。此外,该系统可以跟踪观看者头部的位置和取向,从而可以以与观看者的当前观看点相对应的外观来渲染3D呈现。这里,3D系统106包括深度传感器124。以类似的方式,3D系统108可以包括深度传感器126。多种类型的深度感测或深度捕获中的任何一种都可以用于生成和/或修改深度数据。
在一些实现方式中,执行辅助立体深度捕获。例如,可以使用光点来照射场景,并且可以在两个相应的相机之间执行立体匹配。此照射可以使用选定波长或波长范围的波来进行。例如,可以使用红外(IR)光。在一些实现方式中,例如,当在2D设备上生成视图时,可以不利用深度传感器。
深度数据可以包括或基于反映深度传感器(例如,深度传感器124)与场景中的对象或UI元素之间的距离的关于场景的任何信息。对于与场景中的对象相对应的图像中的内容,深度数据反映到对象的距离(或深度)。例如,相机与深度传感器之间的空间关系可以是已知的,并且可以用于将来自相机的图像与来自深度传感器的信号相关,以生成图像的深度数据。
如图1所示,系统100可以包括或可以访问图像管理系统140。图像管理系统140可以获得或以其他方式访问和/或存储图像内容、视频内容、算法和/或UI内容,以便提供和渲染在显示屏幕上。图像管理系统140包括深度冲突消解器142、范围检测器144和UI生成器146。深度冲突消解器142可以包括用于生成和/或修改UI元素的任何数目的算法,例如以为观看3D显示器110或3D显示器112上的内容的用户消解深度冲突。深度冲突消解器142可以使用UI生成器146生成UI元素,该UI元素用于减轻、消解、最小化或以其他方式修改感知的深度冲突。
例如,范围检测器144可以确定与本地3D系统106相关联的用户的捕获体积和舒适范围。类似地,例如,远程范围检测器可以确定与远程3D系统108相关联的用户的捕获体积和舒适范围。例如,范围检测器144被配置为:确定观看内容的用户的视线,并确定可以从显示器的边缘裁剪特定内容的地方。这种确定可以用于确定是否可能发生深度冲突。远程范围检测器(未示出)可以对远程设备访问执行类似功能。
由3D内容系统100捕获的图像可以被处理,然后被显示为3D呈现。如图1的示例所描绘,3D图像104'呈现在3D显示器110上。这样,用户102可以将3D图像104'感知为用户104的3D呈现,用户104可以远离用户102。3D图像102'呈现在3D显示器112上。这样,用户104可以将3D图像102'感知为用户102的3D呈现。
3D内容系统100可以允许参与者(例如,用户102、104)彼此和/与或其他人进行音频通信。在一些实现方式中,3D系统106包括扬声器和麦克风(未示出)。例如,3D系统108可以类似地包括扬声器和麦克风。这样,3D内容系统100可以允许用户102和104彼此和/或与其他人进行3D远程呈现会话。一般而言,本文所描述的系统和技术可以与系统100一起工作,以生成图像内容和/或视频内容以供在系统100的用户之间显示。
图2是根据贯穿本公开描述的实现方式的用于动态消解立体显示的深度冲突的示例系统的框图。系统200可以用作或包括在本文描述的一个或多个实现中,和/或可以用于执行本文描述的图像内容的合成、处理、修改或呈现的一个或者多个示例的操作。整体系统200和/或其各个组件中的一个或多个组件可以根据本文描述的一个或多个示例来实施。
系统200可以包括一个或多个3D系统202。在所描绘的示例中,示出了3D系统202A、202B至202N,其中指标N指示任意数目。3D系统202可以为2D或3D呈现提供视觉信息和音频信息的捕获,并转发2D或3D信息以进行处理。这样的信息可以包括场景的图像(例如,图像和/或视频)、关于场景的深度数据、和来自场景的音频。例如,2D/3D系统202可以用作或包括在系统106和2D/3D显示器110(图1)内。
系统200可以包括多个相机,如相机204所指示。任何类型的光感测技术都可以用于捕获图像,诸如在普通数码相机中使用的图像传感器的类型。相机204可以是相同类型或不同类型。例如,相机位置可以放置在诸如系统106的3D系统上的任何位置。在一些实现方式中,相机204可以包括多个立体相机。
系统202A包括深度传感器206。在一些实现方式中,深度传感器206通过将IR信号传播到场景上并检测响应信号来操作。例如,深度传感器206可以生成和/或检测光束128A-B和/或130A-B。在一些实现方式中,深度传感器206是可选组件,例如,在不利用深度感测的2D视频会议应用中。在一些实现方式中,系统202中的任何一个的深度传感器206可以向服务器214(例如,执行图像管理系统140)发送和接收深度(例如,深度232)。系统202A还包括至少一个麦克风208和扬声器210。在一些实现方式中,麦克风208和扬声器210可以是系统106的一部分。
系统202附加地包括可以呈现3D图像的3D显示器212。在一些实现方式中,3D显示器212可以是独立显示器。在一些实现方式中,3D显示器可以是透镜状显示器。在一些实现方式中,3D显示器212使用视差格栅技术进行操作。例如,视差格栅可以包括放置在屏幕和观看者之间的基本上非透明材料(例如,不透明膜)的平行垂直条带。由于观看者的相应眼睛之间的视差,屏幕的不同部分(例如,不同像素)由相应的左眼和右眼观看。在一些实现方式中,3D显示器212使用透镜状透镜进行操作。例如,可以在屏幕前方放置交替行的透镜,这些透镜将来自屏幕的光分别朝向观看者的左眼和右眼对准。
系统200包括:服务器214,可以执行数据处理、数据建模、数据协调和/或数据传输的特定任务。服务器214和/或其组件可以包括参考图14描述的一些或所有组件。通常,服务器214可以从跟踪模块216接收信息,该跟踪模块216可以包括头部/眼睛跟踪器218、手跟踪器220和/或移动检测器222,其中的任何一个都可以从2D/3D系统202中的任何一个接收。服务器214可以接收这样的跟踪信息,以便校正、消除、减少或以其他方式修改由系统202捕获的图像内容内的特定的检测到的深度冲突。
如图2所示,服务器214包括图像管理系统140。图像管理系统140可以生成以图像内容、视频内容和/或其他UI内容的形式的2D和/或3D信息。这可以包括(例如,从3D系统202A)接收这样的内容、处理内容、和/或将(经处理和深度校正的)内容转发给另一参与者(例如,转发给3D系统202中的另一个)。在一些实现方式中,图像管理系统140可以使得能够经由计算设备的显示设备向用户递送图像和/或视频内容。
图像管理系统140包括深度冲突消解器(例如,诸如深度冲突消解器142)、UI生成器(例如,诸如UI生成器146)和UI元素数据226。深度冲突消解器142可以使用捕获体积检测器228来分析捕获体积大小。例如,深度冲突消解器142还可以使用范围检测器144分析UI元素之间的范围、和/或观看内容的用户与所描绘的内容之间的范围。
深度冲突消解器142可以生成和修改从2D/3D系统202中的任何一个接收的特定图像内容234,以确保用适当深度感知针对系统202描绘图像内容234。例如,系统202A可以在与系统202B的用户的远程呈现会话期间发送图像内容(例如,用户的视频)。系统202B可以评估(例如,跟踪)系统202A和/或202B的用户的头部或眼睛的位置,以生成UI内容236、虚拟内容238和/或视觉效果240。生成这样的内容236、238和/或240可以包括:访问由系统202中的一个或多个提供的图像内容234,并用内容236至240修改这样的访问的图像内容234,以对系统202中的任何一个的用户确保舒适的观看环境。用(由UI生成器146生成的)内容236至240元素范围对图像内容234的修改可以考虑特定的UI元素范围242、UI元素深度244和体素246,这将在下面详细描述。
在一些实现方式中,深度冲突消解器142可以分析图像内容(例如,立体视频内容)以确定与图像内容234相关联的深度232。在一些实现方式中,确定这样的深度232可以包括:使用光流技术来估计图像内容234的每个图像框的左眼视图和右眼视图之间的对应关系。可以相对于与特定图像框相关联的像素(和/或生成的体素246)来确定深度232。例如,深度传感器206和/或相机204可以检测边界230、对象、对象的部分、UI元素、或图像和/或视频中的其他所捕获的内容之间的特定距离。深度232可以实时或接近实时地估计、计算或以其他方式确定。
在一些实现方式中,系统200可以在特定捕获体积内基于与所捕获的图像内容相关联的所确定的深度,定义观看范围。观看范围定义了当观看所捕获的图像内容时描绘立体效果的体积。在一些实现方式中,观看范围可以指显示屏幕的部分。在一些实现方式中,如果这样的屏幕在遍及屏幕上提供立体效果,则观看范围可以指整个显示屏幕。
在一些实现方式中,观看范围和深度可以用于生成体素,该体素对与显示图像内容相关联的特定环境进行定义或建模。例如,每个体素可以表示3D模型内部的立方体,该立方体包含3D网格内部的位置和单个颜色值。环境中的每个点可以被表示为包括体积符号数据的体素。与环境和对象(例如,UI元素、虚拟内容等)相关联的表面和边界可以通过从体积符号数据中提取等值面来渲染。当图像内容(例如,UI元素、对象和/或表面)改变环境内的位置时,该内容可以被重新渲染以便更新环境的3D模型。例如,图像管理系统140可以迭代地生成表面网,该表面网表示体积符号数据,并且当体积符号数据被更新时该表面网可以被更新。当关于环境的新的或更新的深度信息变得可用时,类似的更新可以触发3D模型更新。
在图像内容的回放(例如,流式传输、视频会话等)期间的某一点处,图像管理系统140可以检测图像内容中发生的深度冲突。例如,深度冲突消解器142可以检测图像内容和与观看范围相关联的边界之间的深度冲突。这种检测可以包括:确定图像内容的至少一部分(例如,用户的手)延伸超出与观看范围相关联的边界(例如,显示屏幕的底边缘)。在一些实现方式中,边界可以指捕获体积的边缘。
响应于确定深度冲突,可以使用观看范围和至少一个用户界面元素来消解至少一部分(例如,手)的深度冲突。例如,检测图像内容的至少一部分(例如,手)和边界(显示屏幕的底边缘)之间的深度冲突可以包括:使用与图像内容相关联的所确定的深度中的至少一些来生成表示在描绘至少一部分的显示器的平面中的相应位置的多个三维体素。所确定的深度可以与当手延伸超出显示器的边界边缘时手被切断的部分有关。UI元素可以是基于从手到边界的所确定的距离而被定大小的框元素。可以选择这样的距离以确保手被隐藏,从而从观看图像内容的用户的视图中去除深度冲突。该框可以表示UI内容236,该UI内容236可以经由软件在所描绘的图像内容内被生成和显示。UI内容236(即,UI元素)可以包括虚拟内容238或是虚拟内容238,该虚拟内容238针对图像内容内的其他对象或UI内容进行叠盖、置于其下面或以其他方式进行合并。在一些实现方式中,UI元素(例如,UI内容236)可以包括虚拟内容、模糊内容、插入内容和/或用于减轻、消解和/或减小深度冲突的其他用户界面效果。可以应用视觉效果240以进一步减小、校正或消除深度冲突。
图像管理系统140可以用已消解的深度冲突来生成经修改的图像内容。经修改的图像内容可以包括图像内容的由至少一个用户界面元素替换的部分。在以上示例中,UI元素可以包括框。其他示例当然是可能的,其中一些贯穿本公开详细描述。经修改的图像内容可以被渲染并作为渲染的内容250呈现给用户。
以上示例性组件此处被描述为实现在服务器214中,该服务器214可以通过网络260(网络260可以与图1中的网络114相似或相同)与3D系统202中的一个或多个通信。在一些实现方式中,图像管理系统140和/或其组件可以替代地或附加地实施在3D系统202中的一些或所有中。例如,在将3D信息转发到一个或多个接收系统之前,可以由创造3D信息的系统执行上述深度冲突校正和/或相关处理。作为另一示例,创造系统可以将图像、建模数据、像素、体素、深度数据和/或对应信息转发给可以执行上述处理的一个或多个接收系统。可以使用这些方法的组合。
系统200是以下系统的示例,该系统包括相机(例如,相机204)、深度传感器(例如,深度传感器206)和具有执行存储在存储器中的指令的处理器的3D内容生成器(例如,图像管理系统140)。这样的指令可以使处理器使用包括在3D信息中的深度数据(例如,通过深度处理组件)来识别包括在3D信息中的场景的图像中的图像内容。处理器可以通过检测深度冲突并校正(例如,消解)或最小化这种深度冲突来生成经修改的3D信息。例如,经修改的3D信息可以根据UI元素226和图像内容234生成,并且可以被提供给UI生成器146以适当地生成渲染的内容250。可将渲染的内容250提供给一个或多个系统202
渲染的内容250至少部分地基于由图像管理系统140生成的修改来表示特定对象(例如,用户图像)的3D立体图像(或视频部分),该3D立体图像(或视频部分)具有适当的视差、经校正或消除的深度冲突以及与用户访问显示设备相关联的双眼的观看配置,如本文所述。
在一些实现方式中,服务器214和系统202的处理器(未示出)可以包括图形处理单元(GPU)(或者与图形处理单元(GPU)通信)。在操作中,处理器可以包括(或可以访问存储器、存储和其他处理器(例如,CPU))。为了便于图形生成和图像生成,处理器可以与GPU通信以在显示设备(例如,显示器212)上显示图像。CPU和GPU可以通过诸如PCI、AGP或PCI-Express之类的高速总线连接。GPU可以通过诸如HDMI、DVI或DisplayPort之类的另一高速接口而连接到显示器。通常,GPU可以以像素形式渲染图像内容。显示器212可以从GPU接收图像内容,并且可以在显示屏幕上显示图像内容。
图3是示出根据贯穿本公开描述的实现方式的用户的深度冲突的示例显示设备。这里,透镜状显示器300描绘了在3D视频会议会话期间的用户302。显示器300与远程用户可以最佳地观看用户302的3D代表的特定捕获体积相关联。在视频会议会话的3D表示中,用户302的视图可在边缘304处延伸超出显示器的边框,这可对观看显示器300中所示的内容的用户导致深度冲突。例如,深度冲突可发生在边缘304处,因为在2D表示中用户的手可看起来在边缘304处被切断,但是在3D表示中,手的数字体素表示可看起来延伸超出边缘304。因为从用户的当前视点手延伸出透镜状显示器的界限之外,所以本文描述的系统可能无法生成和显示手。因此,用户302的手臂在3D中看起来没有手,如深度冲突306、308、310和312所示。这样的视图可导致观看用户预期看到的内容中断或冲突。类似的深度冲突可发生在显示器300的任何边缘处,例如,如果在会话期间,用户302移动、站立等。这样的移动可导致用户的一个或多个部分延伸超出显示器300的包边。系统200可以校正、最小化或去除这种深度冲突。
图4是示出根据贯穿本公开描述的实现方式的本地捕获体积和捕获体积内的移动范围的示例的框图。所描绘的视图示出了在y-z平面中具有特定捕获体积404的代表性显示屏幕体积402。捕获体积404表示基于来自至少三个立体相机盒(例如,相机204)的所捕获的数据的三角测量的视图所生成的本地捕获体积。捕获体积404包括最佳观看范围406。可以使用相机204、深度传感器206和/或范围检测器144来确定这样的范围406。
显示在捕获体积402上的用户由头部408和手410表示。在该示例中,手410在体积402内被部分地捕获。在该示例中,捕获体积被示出为远离远程用户(未示出)距离412。捕获体积在高度414处示出。这样的测量取决于显示屏幕大小和由捕获图像内容的相机所定义的捕获体积是可配置的。
图5是示出根据贯穿本公开描述的实现方式的远程捕获体积502相对于本地捕获体积的示例的框图。例如,通过在z平面中翻转捕获体积402并将该体积平移约1.25米至约1.35米,可以将远程捕获体积502近似以计算深度冲突。远程捕获体积502包括最佳观看范围504。远程用户由头部506和手508近似。类似于手410,远程用户的手412也被捕获(由捕获体积502近似)的底边缘裁剪。该裁剪可对观看(即,由头部506和手508表示的)远程用户的用户导致深度冲突。在该示例中,两个表示的捕获体积402和502被放置为彼此相距距离412。距离412可以模拟用户站在距另一用户约四到八英尺的地方,以参与对话,就好像该用户物理存在。可以向远程用户显示在代表性显示屏幕体积402上捕获和显示的内容,以复制这种物理存在。类似地,可以向屏幕体积402的用户显示在代表性显示屏幕体积502上捕获和显示的内容,以复制相同的物理存在。
图6是示出根据贯穿本公开描述的实现方式的裁剪捕获体积的显示边缘的示例的框图。在该示例中,确定用户视线602(即,基于用户头部408)。视线602指示远程用户的整个手508(当被用户头部408观看时)可以被由体积502表示的显示器的显示边缘裁剪。在这种情况下,深度冲突可发生在由体积502表示的显示器的底边缘处。
图像管理系统140可以生成解决方案以消解或最小化检测到的深度冲突。例如,系统140可以生成深色的窗口或框以隐藏深度冲突。在一些实现方式中,隐藏深度冲突包括:通过将至少一个用户界面元素动画化以用经修改的图像内容隐藏图像内容的至少一部分来消解深度冲突。在一些实现方式中,可以沿显示屏幕的底边缘在z=0.4米处渲染浮动的黑色条604,从而创建主体(例如,用户头部408与观看者之间的对象(例如,条604)正在裁剪视图的感知,但是因为条604是深色的并且使视图嵌入,所以用户不会感知到深度冲突。
图7A至7C是示出根据贯穿本公开描述的实现方式的显示设备的视觉感知倾斜的示例的框图。在图7A中,条604的另一透视图由条702示出。黑色条702的顶边缘因为裁剪随着头部408的移动而如何变化可以被感知为着落在z=0.4米处。体积502的底边缘可能是不明确的,并且因为在黑色条702内没有视差提示的内部细节,所以黑色条702可以在不同的深度处被感知。如果显示框条702是黑色的,则条702的下边缘可以被用户感知为着落在z=0米处,并且在这种情况下,条702可以被感知为倾斜的。
参考图7B,示出了缓解深度冲突的框条解决方案。该解决方案包括:使用框704叠加作为图像内容周围的UI元素。在该示例中,窗口框704的部分706被放置在图像内容708的前方,而框704的剩余部分位于图像内容708的后方。
虽然框704和部分706出现在不同的平面中,但是如图7C所示的用户710在例如观看在显示设备上的图像内容时,将感知到框和图像内容成角度(例如,倾斜),如内容712所示。这种错觉可以校正先前感知到的深度冲突。
图8A至8B是示出根据贯穿本公开描述的实现方式的利用合成图像内容消解深度冲突的示例的框图。如图8A所示,用户802被描绘为容纳显示屏幕806的远程呈现装置804上的3D视频会议会话中的图像内容,如针对图1所述。为了校正可发生在显示屏幕806的底边缘处的深度冲突,桌子810的部分808可以被物理地绘画以显现为好像桌子810具有深色条带。
如图8B中所示,深色条带808可能以与显示屏幕806成直角(或接近成直角)的角度对观看显示器806上的内容的用户显现为倾斜和浮动的。这样的配置可以校正或消除由于切断所显示用户802的部分而发生的深度冲突。
图9A至9B是示出根据贯穿本公开描述的实现方式的通过动态调整显示设备的显示窗口来消解深度冲突的示例的框图。如图9A所示,捕获体积404包括最佳观看范围406。类似地,显示在显示屏幕体积402上的用户由头部902表示。在该示例中,手腕或上臂被部分地捕获在体积402内,这导致捕获内容的一部分被显示边缘剪裁。在该示例中,捕获体积402被示出为远离远程捕获体积502距离412,该远程捕获体积502包括由头部506和手腕508表示的用户。在该示例中,用户(即,头部902)可以站立,因此处于最佳观看范围406的顶部分。因为头部902在捕获体积406中高于当用户就座(或处于较低高度)时,所以当观看在捕获体积502中所示的远程内容或远程用户的部分时,可以感知到深度冲突,如观看角度904所示。例如,这样的观看角度904可以观看与手腕508相关联的深度冲突,因为当头部902观看捕获体积502中的远程内容时,手腕可被感知为缺失。例如,可以基于观看(在捕获体积502中的)远程内容的本地用户的(头部902的)被跟踪头部位置来确定发生深度冲突。例如,深度冲突可以由观看从系统202B接收的内容的系统202A的深度传感器206来确定。系统202A和202B两者都可以包括具有四个或更多个边缘边界的透镜状显示设备,其中如果例如发生包括头部位置变化的用户移动,则可以确定发生深度冲突。在所描绘的示例中,框908a可以包括围绕、包围和/或叠盖图9A的捕获体积502中所描绘的内容的带窗口开口,这确保视线904停留在可导致深度冲突的内容(例如,手腕508)上方,如从捕获体积502的底边缘到框908a的内边缘的距离910所示。
为了校正上述检测到的深度冲突,深度冲突消解器142可以与UI生成器146一起工作以提供视觉效果240,如图9B所示,以校正用户的附加移动。例如,深度冲突消解器142可以确定并触发视觉效果,所述视觉效果将从捕获体积502的底边缘延伸的框部分升高到较高的固定位置,以消除由于观看手腕508的深度冲突。框部分可以包括磨砂区域或体积、或模糊区域或体积,以消除深度冲突。
在一些实现方式中,深度冲突消解器142可以触发对特定用户界面元素重新定大小。例如,UI元素数据226可以包括关于框UI元素的范围242、深度244和/或体素246的信息。此类信息可用于对框重新定大小。因此,深度冲突消解器142可以在确定头部902的被跟踪头部位置已经移动到可生成一个或多个深度冲突的位置时,触发对与捕获体积502中描绘的内容相关联的框(例如,围绕、包围和/或叠盖内容的窗口)重新定大小。对框908a至908b的重新定大小由视线912(从视线910修改)和从捕获体积502的底边缘到框908b的内边缘的距离914指示。在该示例中,距离908b相对于距离908a增大以避免深度冲突。
在一些实现方式中,深度冲突消解器142可以与范围检测器144一起工作,以确定特定边界230和/或与边界230附近或边界230处的对象相关联的深度232。例如,深度冲突消解器142可以通过使用与体积502中的图像内容相关联的手腕508的确定的深度中的至少一些来检测图像内容的部分和与观看范围相关联的边界230(例如,边界906处的手腕508)之间的深度冲突。例如,深度冲突消解器142可以使用手腕508的深度来生成多个三维体素(如上所述),所述多个三维体素表示手腕508在描绘手腕的显示器的平面中的位置。在一些实现方式中,用户界面元素可以是框、模糊壁或基于距离(例如,在边界之外的手腕与边界之间的距离)选择的其他UI元素。
在一些实现方式中,视觉效果240可以确定执行对框重新定大小(例如,从908a到908b)的速度。例如,深度冲突消解器142可以确定用户是否就座、站立、主动移动等,并且可以相应地选择框重新定大小的速度。类似地,可以使用范围检测器144和UI元素数据226来选择对框重新定大小的实际量(较小或较大)。
图10A至10B是示出根据贯穿本公开描述的实现方式的通过调整捕获体积的边界和/或边缘来消解深度冲突的示例的框图。图10A描绘了容纳其中用户1002在显示屏幕1004内的远程呈现显示设备的房间1000的部分。
如果图像管理系统140没有提供深度冲突管理,那么若用户1002的部分被边缘裁剪,则边界边缘1006、1008、1010和1012可对观看用户1002(或观看屏幕1004内的内容)的用户导致深度冲突。类似地,观看用户1002(或观看屏幕1004内的内容)的用户可在诸如边界1014的图像内容的看起来浮动的部分处感知到深度冲突。
在一些实现方式中,图像管理系统140可以触发视觉效果240和/或虚拟内容238和/或UI内容236,以减轻或校正在这样的包边和边界边缘处发生的深度冲突。例如,深度冲突消解器142可以为屏幕1004的特定边界生成网格纹理化的模糊壁1016以模糊化边界边缘,以确保观看屏幕1004中的内容的用户不可以观看在屏幕1004的边界边缘周围或超出屏幕1004的边界边缘。尽管在屏幕1004的单个边界上示出了壁1016,但是屏幕1004中的任何或所有边界可以包括模糊壁,诸如壁1016。在一些实现方式中,深度冲突消解器142可以生成要遍及屏幕1004上模糊的附加像素(例如,区域和/或体积),以防止深度冲突。
参考图10B,用户1002与屏幕1004和框1006一起示出以定义捕获体积1008。在该示例中,深度冲突消解器142可以生成包围捕获体积1008的任何部分的框,以确保深度冲突被最小化或被消除。在该示例中,例如,框1006可以由图像管理系统140经由UI生成器146生成。
深度冲突消解器142还生成模糊形状1010。模糊形状1010可以通过以下方式被模糊:内容的部分透明度被模糊以使用户1002的远程视图看起来是扩展的,从而增加观看用户1002的远程用户的存在感。在该示例中,模糊形状1010的半径1013被选择为包围体积1008的内容未被描绘的较不真实的地方。尽管模糊形状1010是部分椭圆形,而其他形状当然也是可能的。在一些实现方式中,本文描述的模糊形状的表面成角度,使得在模糊形状的底边缘处z=0。例如,模糊形状1010在图10C中以具有相同半径1013的角度示出。
参考图10D,用于减轻在观察体积1008内的内容时的深度冲突的另一示例UI元素/形状包括模糊形状1014。模糊形状1014是磨砂的部分透明的半成角度的梯形。特别地,形状1014的表面可以是成角度的且圆形的1016以提供侧向平移,以防止由左显示边界1006和右显示边界1010的裁剪。
参考图10E,用于减轻在观察体积1008内的内容时的深度冲突的另一示例UI元素/形状包括模糊形状1018。模糊形状1018是磨砂的部分透明的壳层,该模糊形状1018针对要在体积1008的前方中央部分中在形状1018附近显示的附加内容而提供,同时将底部分限定在体积1008的侧边界上。
参考图10F,用于减轻(例如,隐藏、去除、校正)在观察体积1020内的内容时的深度冲突的另一示例UI元素包括形状1022。形状1022和形状1022的大小可以由深度传感器206确定,该深度传感器206当正在体积1020中描绘图像和/或视频内容时,可以检测可能的深度冲突。在该示例中,传感器206可以向深度冲突消解器142提供深度232。消解器142可以确定特定区域,在该特定区域中,对于观看正在体积1020中描绘的内容的特定用户来说可出现深度冲突。例如,消解器142可以与另一系统202上的深度传感器和相机一起工作,以确定与特定捕获数据相关联的头部姿势数据。例如,这样的数据可以用于动态地计算深度冲突,以便确定深度冲突是否将在描绘体积1020的显示设备上可见。
参考图10G,深度冲突消解器142确定用户1024的手臂的部分可引起特定的深度冲突。作为响应,可以根据需要减轻深度冲突。例如,可以基于特定的检测到的深度冲突来淡入或淡出经由视觉效果240的动画。在一些实现方式中,诸如形状1026的选定形状可以具有梯度模糊。在该示例中,使用UI生成器146的图像管理系统140例如可以使用失真图来生成朝向捕获体积1020的底边界增大的模糊半径,如形状1026所示。
可以在检测到用户1024向前移动时生成形状1026。例如,当用户1024向前移动时,图像管理系统140(例如,使用着色器)检测体积1020的下边界上的深度冲突,并触发UI生成器146生成视觉效果240,以淡化磨砂形状1026的模糊和不透明度。在一些实现方式中,针对捕获体积1020之外的肢体或对象,类似的过渡可以用于边界系统中的侧壁。
模糊形状1022是磨砂的部分透明的壳层,该模糊形状1022为要在体积1008的前方和中央部分中在形状1018附近显示的附加内容提供,同时将底部分限定在体积1008的侧边界上。
图11是示出根据贯穿本公开描述的实现方式的使用分段虚拟内容消解深度冲突的示例的框图。这里示出了分段的前方深度冲突减轻。显示器1004与捕获体积1008一起示出。如果当手短暂地进入边界区时,出现在前方的大磨砂壁在视觉上过于分散注意力,则图像管理系统140可以经由UI生成器146触发深度冲突消解器142生成分段网格元素1100并使分区淡入和淡出,这对于用户来说是舒适的。这种分段网格元素1100可以包括模糊部分1102和1104以及半不透明部分1106。这样的UI元素还可以为体积1008中描绘的永久性对象诸如桌子上的膝上型计算机提供覆盖。
在一些实现方式中,网格元素1100可以是具有梯度模糊的模糊叠盖物,该梯度模糊从叠盖物(例如,网格元素1100)的左中央部分1108到图像内容的左边缘1110渐变,以及从叠盖物的右中央部分1112到图像内容的右边缘1114渐变。
图12是示出根据贯穿本公开描述的实现方式的放置在虚拟内容上的示例应用内容的框图。在该示例中,描绘了成形的半透明UI元素1202以减轻特定的检测到的深度冲突。例如,UI元素1202可以是模糊的、部分模糊的、或半透明的。这样的元素可以基于显示体积1008、被覆盖的内容、或特定的检测到的深度冲突而被成形。例如,尽管UI元素1202被描绘为矩形,而其他形状也是可能的。
UI元素1202可以用作向观看体积1008的用户描绘附加内容的位置。例如,如果用户1008和用户1020正在分别访问系统202A和202B,则这两个用户可希望共享应用数据、屏幕数据等。图像管理系统140可以触发为减轻深度冲突而生成的形状开始描绘应用内容,诸如内容1204和1206。虽然描绘了两个应用窗口,但是可以描绘任何数目的窗口、内容、应用、快捷方式、图标等。在一些实现方式中,描绘在诸如元素1202的UI元素内的应用和/或内容可以包括被确定为在观看图像内容的会话期间打开的附加UI元素。例如,UI元素1202可以描绘具有附加软件程序的缩略图图像(例如,内容1204和内容1206)的用户界面层,在访问图像内容的同时该附加软件程序正在由至少一个处理设备在存储器中执行。这样的内容1204和内容1206可以表示当用户正在操作与用户1002的远程呈现会话时在存储器中打开并执行的软件应用。
在一些实现方式中,为了防止本文所述的减轻本身在减轻与显示边缘相交处生成深度冲突,存在可用于将减轻放置在具体的z高度处的最小视差提示。例如,所施加的半透明表面被认为叠盖在渲染的人上,但对于它们被感知到的准确高度在感知上是灵活的。特别地,垂直的磨砂设计与弯曲的磨砂设计最终看起来是相似的。垂直的磨砂设计中对显示边缘的感知钉住(pinning)可以使平坦的垂直表面看起来是类似弯曲的。
在一些实现方式中,本文描述的梯度模糊变体提供了避免尖锐上边缘的优点。模糊可以提供改进量的深度冲突减少。在一些实现方式中,梯度模糊可以被应用在检测到深度冲突的具体区域处,但不被应用在这些区域之外。即,不是梯度模糊的整个底边缘,梯度模糊可以被放置在显示边缘的内容(例如,用户部分、对象等)创建深度冲突的部分处。例如,本文所述的系统可以使用检测到的头部姿势结合渲染的内容来检测深度冲突。然后,可以在深度冲突部分处添加梯度模糊效果。模糊类型可以基于检测到的深度冲突水平而变化。梯度可以是可调节的,以远离显示器的边缘而逐渐缩小。
图13是示出根据贯穿本公开描述的实现方式的消解3D内容系统中的深度冲突的处理1300的一个示例的流程图。在一些实现方式中,处理1300可以利用具有至少一个处理设备和存储指令的存储器的图像处理系统,所述指令在执行时使处理设备执行权利要求中描述的多个操作和计算机实现的步骤。通常,系统100、200和/或1400可以用于处理1400的描述和执行。在一些实现方式中,系统100、200和/或1400中的每一个可以表示单个系统。在一些实现方式中,系统202中描述的远程呈现系统可以执行权利要求所述的操作。在一些实现方式中,由系统202访问的服务器214可以替代地执行权利要求所述的操作。
通常,处理1300利用本文描述的系统和算法来检测和校正3D显示的深度冲突。在一些实现方式中,深度冲突检测基于头部和/或眼睛跟踪和所捕获的深度图像像素。在一些实现方式中,深度冲突检测基于其他用户移动(例如,捕获体积内的手移动或放置、和/或捕获体积内的身体移动或放置)。在一些实现方式中,生成UI元素以减轻检测到的深度冲突。通常,可以在图像内容、视频内容、虚拟内容、UI元素、应用内容或其他相机捕获内容中执行所描述的处理1300。
在框1302处,处理1300包括:利用至少一个处理设备来执行包括确定与所捕获的图像内容相关联的捕获体积的操作。例如,捕获体积检测器228可以确定捕获体积502(图6)的大小。捕获体积可以用于确定:图像内容驻留在由捕获体积定义的特定边界内还是超出该特定边界。延伸超出边界的这种图像内容可对观看捕获体积502内的图像内容的用户导致深度冲突。此外,当评估深度冲突时,可以考虑UI元素数据226以及来自范围检测器144的范围确定。
在框1304处,处理1300包括:确定与所捕获的图像内容相关联的深度。例如,范围检测器144可以基于由相机204捕获的图像和/或由深度传感器206捕获的数据来计算深度232。深度可以涉及在对象、用户、用户的部分、UI元素或系统202内捕获的其他内容。
在框1306处,处理1300包括:在捕获体积内基于深度来定义观看范围,在观看所捕获的图像内容时,在该观看范围中描绘立体效果。例如,范围检测器144可以利用深度232和捕获体积502大小来确定观看范围,该观看范围可以是用于观看渲染图像内容的3D显示器(诸如透镜状显示器)内的3D立体效果和3D内容的观看范围(例如,大小、窗口、体积)。确定这样的观看范围可以使系统200能够适当地明确在哪里可能发生特定的深度冲突。
在框1308处,处理1300包括:确定所捕获的图像内容和与观看范围相关联的边界之间的深度冲突。例如,深度冲突消解器142可以检测到:手508(图6)在捕获体积502的底边缘处(即,显示设备的底边缘,如图10A中的边界1012所示)在捕获体积502边界之外。这里,在一些实现方式中,深度冲突消解器142可以使用捕获体积检测器228来检测所捕获的图像内容的至少一部分(即,图6中的手508的部分)延伸超出与由捕获体积502和/或体积504定义的观看范围相关联的边界1012。
在一些实现方式中,检测图像内容的至少一部分(例如,手508的部分)和与观看范围相关联的边界(例如,边界1012)之间的深度冲突可以包括:使用与图像内容(例如,头部506和手508)相关联的所确定的深度232中的至少一些来生成3D体素,该3D体素表示渲染所捕获的图像内容的显示器的平面(例如,显示器的z平面)中的位置。在该示例中,用于检测和/或校正深度冲突的深度可以包括手508的深度。该距离可以包括从边界1012到在边界1012之外的手的部分的距离。可以基于距离来选择用于校正深度感知的UI元素。在一些实现方式中,边界1012与透镜状显示设备的至少一个边缘相关联。
在一些实现方式中,可以使用UI元素数据226生成体素(例如,体素246)。体素246可以从3D空间中定义的点云得出。体素246可以包括定义了具有固定大小和离散坐标的多个单元的像素网格。体素246可以用于确定特定图像内容的哪些部分可导致深度冲突,以及这些部分中的哪些部分应被校正、消解、模糊化或以其他方式修改以避免深度冲突。
在一些实现方式中,可以基于在远程透镜状显示设备处观看图像内容的用户的被跟踪头部位置来确定深度冲突。例如,可以基于远程用户(图6中的头部408)观看角度(例如,视线602)来确定与手508相关的深度冲突。例如,可以使用头部/眼睛跟踪器218、手跟踪器220和/或移动检测器222经由跟踪模块216来确定或提供被跟踪头部位置。
在框1310处,处理1300包括:响应于确定深度冲突,使用观看范围和至少一个UI元素来消解至少一部分的深度冲突。例如,深度冲突消解器可以使用相对于手508的所确定的观看范围,以便选择要生成和/或修改的特定UI元素。这样的UI元素可以由UI生成器146生成并被提供以用于与图像内容一起渲染。在一些实现方式中,消解深度冲突包括生成UI元素,该UI元素表示围绕体积502内的图像内容的框。框(例如,图10B中的框1006)可以适于适应在所捕获的图像内容中描绘的移动。例如,可以修改框1006的大小、形状或其他因素以消解(例如,覆盖)深度冲突。在一些实现方式中,可以调整其他生成的UI元素的大小和/或形状,以便消解深度冲突。在一些实现方式中,调整特定UI元素的大小是基于观看特定图像内容的用户的被跟踪头部位置。
在一些实现方式中,UI元素——诸如与延伸超出捕获体积502的边界的至少一部分(手508)相对应的框1006——的一侧可以被放置在与框的剩余部分平行的且在框的剩余部分的前方的不同平面中,以生成框的从垂直到相对于垂直的非零角度的视觉上感知的倾斜,如图7A至7B所示。
在框1312处,处理1300包括利用所消解的深度冲突生成经修改的图像内容以供渲染。经修改的图像内容可以包括由至少一个UI元素替换的图像内容的部分。例如,UI元素可以包括模糊叠盖物。模糊叠盖物可以由UI生成器146生成。模糊叠盖物可以是2D或3D的。例如,模糊叠盖物可以在捕获体积502的边界处开始,并且可以在与描绘图像内容的显示设备的大小相关联的预定义位置处结束。例如,显示器的大小可以包括框、叠盖物或UI元素的预定义的最小和最大大小。
在一些实现方式中,诸如模糊叠盖物之类的UI元素可以由深度冲突消解器142和UI生成器146定义,其中与UI元素相关联的模糊半径可以在距边界的阈值距离处增大。例如,可以根据图像内容的移动而将模糊半径动画化。在这样的示例中,将模糊半径(或其他UI元素)动画化可以消解和/或隐藏深度冲突。
在一些实现方式中,可以根据确定的深度冲突来对模糊叠盖物进行成形。在一些实现方式中,可以根据所描绘的图像内容的大小或形状来对模糊叠盖物进行成形。示例形状可以包括但不限于正方形、矩形、椭圆形、半圆形、半椭圆形、梯形等。
在一些实现方式中,本文描述的模糊叠盖物可以包括附加UI元素,所述附加UI元素被确定为要在观看图像内容的会话期间打开。例如,附加UI元素可以包括在访问显示设备上的图像内容时由至少一个处理设备访问(即,在存储器中执行)的软件程序。软件程序/应用可以被显示为叠盖在模糊叠盖物上的可选择UI元素。用户可以选择特定应用来以较大的形式描绘应用并开始在描绘的图像和/或视频内容内、周围或附近使用应用。
在一些实现方式中,如图11所示,模糊叠盖物是梯度模糊,该梯度模糊从叠盖物的左中央部分到图像内容的左边缘以及从叠盖物的右中央部分到视频内容的右边缘渐变。梯度模糊的其他变体是可能的,并且图11仅示出了渐变模糊的一个示例。
在一些实现方式中,捕获体积的下边界可以用作其中经常出现手势等的交互区。例如,图像管理系统140可以区分显示屏幕的下部(其中深度冲突较成问题)和其中交互元素可以驻留上午显示屏幕的中上部。
图14示出了可以与所描述的技术一起使用的计算机设备1400和移动计算机设备1450的示例。计算设备1400可以包括处理器1402、存储器1404、存储设备1406、连接到存储器1404和高速扩展端口1410的高速接口1408、以及连接到低速总线1414和存储设备1404的低速接口1412。组件1402、1404、1406、1408、1410和1412使用各种总线互连,并且可以安装在公共主板上或以其他适当方式安装。处理器1402可以处理用于在计算设备1400内执行的指令,包括存储在存储器1404中或在存储设备1406上的以在外部输入/输出设备——诸如耦合到高速接口1408的显示器1416——上显示GUI的图形信息的指令。在一些实施例中,可以适当地使用多个处理器和/或多个总线以及多个存储器和多个类型的存储器。此外,可以连接多个计算设备1400,其中每个设备提供必要操作的部分(例如,作为服务器组、刀片服务器组或多处理器系统)。
存储器1404存储计算设备1400内的信息。在一个实施例中,存储器1404是一个或多个易失性存储器单元。在另一实施例中,存储器1404是一个或多个非易失性存储器单元。存储器1404还可以是另一种形式的计算机可读介质,诸如磁盘或光盘。
存储设备1406能够为计算设备1400提供大容量存储。在一个实施例中,存储设备1406可以是或包含计算机可读介质,诸如软盘设备、硬盘设备、光盘设备或磁带设备、闪速存储器或其他类似的固态存储器设备、或设备阵列,包括存储区域网络或其他配置的设备。计算机程序产品可以有形地体现在信息载体中。计算机程序产品还可以包含在执行时执行一个或多个方法的指令,诸如本文所述的方法。信息载体是计算机可读介质或机器可读介质,诸如存储器1404、存储设备1406、或处理器1402上的存储器。
高速控制器1408管理计算设备1400的带宽密集操作,而低速控制器1412管理较低带宽密集操作。这种功能分配仅是示例性的。在一个实施例中,高速控制器1408耦合到存储器1404、显示器1416(例如,通过图形处理器或加速器),并耦合到高速扩展端口1410,该高速扩展端口可以接受各种扩展卡(未示出)。低速控制器1412可以耦合到存储设备1406和低速扩展端口1414。可以包括各种通信端口(例如,USB、蓝牙、以太网、无线以太网)的低速扩展端口可以——例如通过网络适配器——耦合到一个或多个输入/输出设备,诸如键盘、定点设备、扫描仪或网络设备,诸如交换机或路由器。
计算设备1400可以以多种不同的形式实现,如图所示。例如,它可以实现为标准服务器1420、或者在一组这样的服务器中多次实现。它还可以被实现为机架服务器系统1424的一部分。此外,它可以在诸如膝上型计算机1422的个人计算机中实现。替代地,来自计算设备1400的组件可以与诸如设备1450的移动设备(未示出)中的其他组件组合。这些设备中的每一个可以包含计算设备1400、1450中的一个或多个,并且整个系统可以由彼此通信的多个计算设备1400和1450组成。
计算设备1450包括处理器1452、存储器1464、诸如显示器1454的输入/输出设备、通信接口1466和收发器1468以及其他组件。设备1450还可以设置有存储设备,诸如微驱动器或其他设备,以提供额外的存储。组件1450、1452、1464、1454、1466和1468中的每一个都使用各种总线互连,并且这些组件中的几个可以安装在公共主板上或以其他适当的方式安装。
处理器1452能够执行计算设备1450内的指令,包括存储在存储器1464中的指令。处理器可以被实现为芯片组,该芯片组包括单独的多个模拟处理器和数字处理器。例如,处理器可以提供设备1450的其他组件的协调,诸如用户接口的控制、设备1450运行的应用以及设备1450的无线通信。
处理器1452可以通过耦合到显示器1454的控制接口1458和显示接口1456与用户通信。例如,显示器1454可以是TFT LCD(薄膜晶体管液晶显示器)或OLED(有机发光二极管)显示器或其他适当的显示技术。显示接口1456可以包括用于驱动显示器1454以向用户呈现图形和其他信息的适当电路。控制接口1458可以从用户接收命令并将命令转换以提交给处理器1452。此外,外部接口1462可以与处理器1452通信,以便实现设备1450与其他设备的近区通信。在一些实施例中,外部接口1462可以提供例如用于有线或无线通信的多个接口。
存储器1464存储计算设备1450内的信息。存储器1464可以实现为一个或多个计算机可读介质、一个或多个易失性存储器单元或一个或多个非易失性存储单元中的一个或多个。还可以提供扩展存储器1484并通过扩展接口1482将扩展存储器1484连接到设备1450,该扩展接口1484可以包括例如SIMM(单线存储器模块)卡接口。这样的扩展存储器1484可以为设备1450提供额外的存储空间,或者还可以为设备1450存储应用或其他信息。具体地,扩展存储器1484可以包括执行或补充上述处理的指令,并且还可以包括安全信息。因此,例如,扩展存储器1484可以是设备1450的安全模块,并且可以用允许安全使用设备1450的指令来编程。此外,可以经由SIMM卡提供安全应用以及附加信息,诸如以不可破解的方式将识别信息放置在SIMM卡上。
存储器可以包括例如闪速存储器和/或NVRAM存储器,如下所述。在一个实施例中,计算机程序产品有形地体现在信息载体中。计算机程序产品包含在被执行时执行一个或多个方法——诸如上述方法——的指令。信息载体是计算机可读介质或机器可读介质,诸如存储器1464、扩展存储器1484或处理器1452上的存储器,其可以例如通过收发器1468或外部接口1462接收。
设备1450可以通过通信接口1466进行无线通信,其在必要时可以包括数字信号处理电路。通信接口1466可以在各种模式或协议下提供通信,诸如GSM语音呼叫、SMS、EMS或MMS消息收发、CDMA、TDMA、PDC、WCDMA、CDMA2000或GPRS等。这种通信可以例如通过射频收发器1468发生。此外,可以发生短距离通信,诸如使用蓝牙、Wi-Fi或其他此类收发器(未示出)。此外,GPS(全球定位系统)接收器模块1480可以向设备1450提供附加的导航和位置相关的无线数据,这些数据可以由设备1450上运行的应用适当地使用。
设备1450还可以使用音频编解码器1460进行可听通信,该音频编解码器1460可以从用户接收语音信息并将语音信息转换为可用的数字信息。音频编解码器1460可以类似地为用户生成可听声音,诸如通过扬声器,例如在设备1450的听筒中。这种声音可以包括来自语音电话呼叫的声音,可以包括记录的声音(例如,语音消息、音乐文件等),并且还可以包括由在设备1450上操作的应用生成的声音。
计算设备1450可以以多种不同的形式实现,如图所示。例如,计算设备1450可以被实现为蜂窝电话1480。计算设备1450还可以被实现为智能电话1482、个人数字助理或其他类似移动设备的一部分。
这里描述的系统和技术的各种实现可以在数字电子电路、集成电路、专门设计的ASIC(专用集成电路)、计算机硬件、固件、软件和/或其组合中实现。这些各种实现可以包括在可编程系统上可执行和/或可解释的一个或多个计算机程序中的实现,所述可编程系统包括至少一个可编程处理器,所述至少一个可编程处理器可以是专用的或通用的,被耦合以从存储系统、至少一个输入设备和至少一个输出设备接收数据和指令以及向存储系统、至少一个输入设备和至少一个输出设备发送数据和指令。
这些计算机程序(也称为程序、软件、软件应用或代码)包括用于可编程处理器的机器指令,并且能够以高级程序和/或面向对象编程语言和/或以汇编/机器语言实现。如本文所使用的,术语“机器可读介质”、“计算机可读介质”是指用于向可编程处理器提供机器指令和/或数据的任何计算机程序产品、装置和/或设备(例如,磁盘、光盘、存储器、可编程逻辑器件(PLD)),包括接收机器指令作为机器可读信号的机器可读介质。术语“机器可读信号”是指用于向可编程处理器提供机器指令和/或数据的任何信号。
为了提供与用户的交互,这里描述的系统和技术可以在计算机上实现,该计算机具有用于向用户显示信息的显示设备(例如,CRT(阴极射线管)或LCD(液晶显示器)监视器)、以及用户可以向计算机提供输入的键盘和定点设备(例如,鼠标或跟踪球)。其他种类的设备还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈(例如,视觉反馈、听觉反馈或触觉反馈);并且可以以任何形式接收来自用户的输入,包括声学、语音或触觉输入。
这里描述的系统和技术可以在以下计算系统中实现,该计算系统包括后端组件(例如,作为数据服务器)或包括中间件组件(例如,应用服务器)或包括前端组件(例如,具有图形用户界面或web浏览器的客户端计算机,用户可以通过该图形用户界面或web浏览器与这里描述的系统和技术的实施例进行交互)、或者这种后端组件、中间件组件或前端组件的任何组合。系统的组件可以通过任何形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”)、广域网(“WAN”)和互联网。
计算系统可以包括客户端和服务器。客户端和服务器通常彼此远离,并且通常通过通信网络进行交互。客户端和服务器的关系是由于在相应的计算机上运行并彼此具有客户端-服务器关系的计算机程序而产生的。
在一些实施例中,图14中描绘的计算设备可以包括与虚拟现实或AR头戴式耳机(VR头戴式耳机/AR头戴式耳机/HMD设备1490)对接的传感器。例如,包括在计算设备1450或图14所描绘的其他计算设备上的一个或多个传感器可以向VR头戴式耳机1490提供输入,或者通常向VR空间提供输入。传感器可以包括但不限于触摸屏、加速度计、陀螺仪、压力传感器、生物特征传感器、温度传感器、湿度传感器和环境光传感器。计算设备1450可以使用传感器来确定计算设备在VR空间中的绝对位置和/或检测到的旋转,然后可以将该绝对位置和/或检测到的旋转用作对VR空间的输入。例如,计算设备1450可以作为虚拟对象——诸如控制器、激光指示器、键盘、武器等——被结合到VR空间中。当被结合到VR空间中时,由用户对计算设备/虚拟对象的定位可以允许用户定位计算设备以在VR空间中以特定方式观看虚拟对象。
在一些实施例中,包括在计算设备1450上或连接到计算设备1450的一个或多个输入设备可以用作对VR空间的输入。输入设备可以包括但不限于触摸屏、键盘、一个或多个按钮、轨迹板、触摸板、定点设备、鼠标、轨迹球、操纵杆、相机、麦克风、具有输入功能的耳机或耳机筒、游戏控制器或其他可连接输入设备。当计算设备被结合到VR空间中时,与包括在计算设备1450上的输入设备交互的用户可以导致特定动作在VR空间中发生。
在一些实施例中,包括在计算设备1450上的一个或多个输出设备可以向VR空间中的VR头戴式耳机1490的用户提供输出和/或反馈。输出和反馈可以是视觉的、听觉的或音频的。输出和/或反馈可以包括但不限于渲染VR空间或虚拟环境、振动、打开和关闭或闪烁和/或闪耀一个或多个灯或闪光灯、发出警报、播放钟声、播放歌曲和播放音频文件。输出设备可以包括但不限于振动电机、振动线圈、压电设备、静电设备、发光二极管(LED)、闪光灯和扬声器。
在一些实施例中,计算设备1450可以放置在VR头戴式耳机1490内以创建VR系统。VR头戴式耳机1490可以包括一个或多个定位元件,所述一个或多个定位元件允许将诸如智能电话1482的计算设备1450放置在VR头戴式耳机1490内的适当位置。在这样的实施例中,智能电话1482的显示器能够渲染表示VR空间或虚拟环境的立体图像。
在一些实施例中,计算设备1450可以显现为计算机生成的3D环境中的其他对象。用户与计算设备1450的交互(例如,旋转、摇动、触摸触摸屏、在触摸屏上刷动手指)可以被解释为与VR空间中的对象的交互。仅作为一个示例,计算设备可以是激光指示器。在这样的示例中,计算设备1450在计算机生成的3D环境中显现为虚拟激光指示器。当用户操纵计算设备1450时,VR空间中的用户看到激光指示器的移动。用户从计算设备1450或VR头戴式耳机1490上的VR环境中与计算设备1450的交互接收反馈。
在一些实施例中,计算设备1450可以包括触摸屏。例如,用户能够以特定的方式与触摸屏交互,该特定的方式可以利用VR空间中发生的事情在触摸屏上模拟发生的事情。例如,用户可以使用捏挤式运动来缩放触摸屏上显示的内容。触摸屏上的这种捏挤式运动可以导致VR空间中提供的信息被缩放。在另一示例中,计算设备可以在计算机生成的3D环境中被渲染为虚拟书。在VR空间中,书的页面可以显示在VR空间中,并且用户的手指跨触摸屏上的刷动可以被解释为转动/翻转虚拟书的页面。当每个页面被转动/翻转时,除了看到页面内容变化之外,还可以向用户提供音频反馈,诸如书中页面的转动声音。
在一些实施例中,可以在计算机生成的3D环境中渲染除了计算设备之外的一个或多个输入设备(例如,鼠标、键盘)。渲染的输入设备(例如,渲染的鼠标、渲染的键盘)可以用作在VR空间中渲染,以控制VR空间中的对象。
计算设备1400旨在表示各种形式的数字计算机,诸如膝上型计算机、台式机、工作站、个人数字助理、服务器、刀片服务器、大型机和其他适当的计算机。计算设备1450旨在表示各种形式的移动设备,诸如个人数字助理、蜂窝电话、智能电话和其他类似的计算设备。这里所示的组件、它们的连接和关系以及它们的功能仅是示例性的,并不意味着限制所公开的实施例。
此外,附图中所描绘的逻辑流不需要所示的特定次序或顺序来实现期望的结果。此外,可以从所描述的流中提供其他步骤,或者可以消除步骤,并且可以向所描述的系统添加其他组件或从所描述的系统中去除其他组件。因此,其他实施例处于所附权利要求的范围内。

Claims (20)

1.一种利用至少一个处理设备执行操作的计算机实现的方法,所述操作包括:
确定与由至少一个相机捕获的图像内容相关联的捕获体积;
确定与所述图像内容相关联的深度;
在所述捕获体积内,基于所述深度来定义观看范围,在观看所述图像内容时在所述观看范围中描绘立体效果;
确定在所述图像内容和与所述观看范围相关联的边界之间的深度冲突,所述确定包括:检测所述图像内容的至少一部分延伸超出与所述观看范围相关联的所述边界;
响应于确定所述深度冲突,使用所述观看范围和至少一个用户界面元素来消解所述至少一部分的所述深度冲突;以及
利用所消解的深度冲突来生成经修改的图像内容以用于渲染,所述经修改的图像内容包括由所述至少一个用户界面元素替换的部分的所述图像内容。
2.根据权利要求1所述的方法,其中:
检测在图像内容的所述至少一部分和与观看范围相关联的所述边界之间的深度冲突包括:使用与所述图像内容相关联的所确定的深度中的至少一些来生成多个三维体素,所述多个三维体素表示渲染所述图像内容的显示器的平面中的位置,所述距离是从所述至少一部分到所述边界;以及
所述至少一个用户界面元素是基于所述距离来选择。
3.根据权利要求1或权利要求2所述的方法,其中:
所述边界与透镜状显示设备的至少一个边缘相关联;
所述深度冲突是基于在远程透镜状显示设备处观看所述图像内容的用户的被跟踪头部位置来确定;以及
消解所述深度冲突包括:基于所述用户的所述被跟踪头部位置来调整所述用户界面元素的大小。
4.根据前述权利要求中任一项所述的方法,其中,消解所述深度冲突包括:将所述至少一个用户界面元素生成为叠盖所述图像内容中的至少一些的框,所述至少一个框适于适应在所述图像内容中描绘的移动。
5.根据权利要求4所述的方法,其中,与延伸超出所述边界的所述至少一部分相对应的所述框的一侧被放置在与所述框的剩余部分平行并且在所述框的剩余部分前方的不同平面中,以生成从垂直到与所述垂直成非零角度的视觉上感知的所述框的倾斜。
6.根据前述权利要求中任一项所述的方法,其中,所述至少一个用户界面元素描绘具有附加软件程序的缩略图图像的用户界面层,在访问所述图像内容时所述附加软件程序由所述至少一个处理设备在存储器中执行。
7.根据前述权利要求中任一项所述的方法,其中,所述用户界面元素包括模糊叠盖物,所述模糊叠盖物在所述边界处开始并且在与描绘所述图像内容的显示设备的大小相关联的预定义位置处结束,其中,与所述模糊叠盖物相关联的模糊半径在距所述边界的阈值距离处增大。
8.根据权利要求7所述的方法,其中,所述模糊叠盖物包括具有附加软件程序的缩略图图像的用户界面层,在访问所述图像内容时,所述附加软件程序由所述至少一个处理设备在存储器中执行。
9.根据权利要求7或权利要求8所述的方法,其中,所述模糊叠盖物是椭圆形的。
10.根据权利要求7至权利要求9中任一项所述的方法,其中,所述模糊叠盖物是梯度模糊,所述梯度模糊从所述叠盖物的左中央部分到所述图像内容的左边缘以及从所述叠盖物的右中央部分到所述视频内容的右边缘渐变。
11.根据前述权利要求中任一项所述的方法,其中,消解所述深度冲突包括:将所述至少一个用户界面元素动画化,以利用所述经修改的图像内容来隐藏图像内容的所述至少一部分。
12.一种图像处理系统,包括:
至少一个处理设备;
多个立体相机;以及
存储指令的存储器,所述指令在被执行时使所述系统执行操作,所述操作包括:
确定与由所述多个立体相机捕获的图像内容相关联的体积;
确定与所述图像内容相关联的深度;
在所述体积内,基于所述深度来定义发生立体效果的观看范围;
确定在所述图像内容和与所述观看范围相关联的边界之间的深度冲突,所述确定包括:检测所述图像内容的至少一部分延伸超出与所述观看范围相关联的所述边界;
响应于确定所述深度冲突,使用所述观看范围和至少一个用户界面元素来消解所述至少一部分的所述深度冲突;以及
利用所消解的深度冲突来生成经修改的图像内容以用于渲染,所述经修改的图像内容包括由所述至少一个用户界面元素替换的部分的所述图像内容。
13.根据权利要求12所述的系统,其中:
检测在图像内容的所述至少一部分和与观看范围相关联的所述边界之间的深度冲突包括:使用与所述图像内容相关联的所确定的深度中的至少一些来生成多个三维体素,所述多个三维体素表示渲染所述图像内容的显示器的平面中的位置,所述距离是从所述至少一部分到所述边界;以及
所述至少一个用户界面元素是基于所述距离来选择。
14.根据权利要求12或权利要求13所述的系统,其中:
所述边界与透镜状显示设备的至少一个边缘相关联;
所述深度冲突是基于在远程透镜状显示设备处观看所述图像内容的用户的被跟踪头部位置来确定;以及
消解所述深度冲突包括:基于所述用户的所述被跟踪头部位置来调整所述用户界面元素的大小。
15.根据权利要求12至14中任一项所述的系统,其中,消解所述深度冲突包括:将所述至少一个用户界面元素生成为围绕所述图像内容的框,所述至少一个框适于适应在所述图像内容中描绘的移动。
16.根据权利要求12至14中任一项所述的系统,其中,所述用户界面元素包括模糊叠盖物,所述模糊叠盖物在所述边界处开始并且在与描绘所述图像内容的显示设备的大小相关联的预定义位置处结束,其中,与所述模糊叠盖物相关联的模糊半径在距所述边界的阈值距离处增大。
17.一种其上存储有指令的非暂时性机器可读介质,所述指令在由处理器执行时使计算设备执行以下操作:
在用多个立体相机捕获视频内容时:
确定与所捕获的视频内容相关联的捕获体积;
确定与所捕获的视频内容相关联的深度;
在所述捕获体积内,基于所述深度来定义发生立体效果的观看范围;
确定在所捕获的视频内容和与所述观看范围相关联的边界之间的深度冲突,所述确定包括:检测所捕获的视频内容的至少一部分延伸超出与所述观看范围相关联的所述边界;
响应于确定所述深度冲突,使用所述观看范围和至少一个用户界面元素来消解所述至少一部分的所述深度冲突;以及
利用所消解的深度冲突来生成经修改的视频内容以用于渲染,所述经修改的视频内容包括由所述至少一个用户界面元素替换的部分的所述视频内容。
18.根据权利要求17所述的机器可读介质,其中:
检测在所捕获的视频内容的所述至少一部分和与观看范围相关联的所述边界之间的深度冲突包括:使用与所捕获的视频内容相关联的所确定的深度中的至少一些来生成多个三维体素,所述多个三维体素表示渲染所捕获的视频内容的显示器的平面中的位置,所述距离是从所述至少一部分到所述边界;以及
所述至少一个用户界面元素是基于所述距离来选择。
19.根据权利要求17或权利要求18所述的机器可读介质,其中:
所述边界与透镜状显示设备的至少一个边缘相关联;
所述深度冲突是基于在远程透镜状显示设备处观看所捕获的视频内容的用户的被跟踪头部位置来确定;以及
消解所述深度冲突包括:基于所述用户的所述被跟踪头部位置来调整所述用户界面元素的大小。
20.根据权利要求17或权利要求18所述的机器可读介质,其中,所述用户界面元素包括模糊叠盖物,所述模糊叠盖物在所述边界处开始并且在与描绘所捕获的视频内容的显示设备的大小相关联的预定义位置处结束,其中,与所述模糊叠盖物相关联的模糊半径在距所述边界的阈值距离处被增大。
CN202080106226.3A 2020-10-21 2020-12-16 远程呈现中的深度冲突的动态消解 Pending CN116325720A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202063198473P 2020-10-21 2020-10-21
US63/198,473 2020-10-21
PCT/US2020/070912 WO2022086580A1 (en) 2020-10-21 2020-12-16 Dynamic resolution of depth conflicts in telepresence

Publications (1)

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

Family

ID=74184967

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080106226.3A Pending CN116325720A (zh) 2020-10-21 2020-12-16 远程呈现中的深度冲突的动态消解

Country Status (4)

Country Link
US (1) US20230396750A1 (zh)
EP (1) EP4233310A1 (zh)
CN (1) CN116325720A (zh)
WO (1) WO2022086580A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4344196A1 (en) * 2022-09-23 2024-03-27 Apple Inc. Visual techniques for 3d content

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9681113B2 (en) * 2010-04-01 2017-06-13 Thomson Licensing Method and system of using floating window in three-dimensional (3D) presentation
GB2499426A (en) * 2012-02-16 2013-08-21 Dimenco B V Autostereoscopic display device with viewer tracking system
US9325962B2 (en) * 2012-10-30 2016-04-26 Korea Advanced Institute Of Science And Technology Method and system for creating dynamic floating window for stereoscopic contents
US10957063B2 (en) * 2018-03-26 2021-03-23 Adobe Inc. Dynamically modifying virtual and augmented reality content to reduce depth conflict between user interface elements and video content

Also Published As

Publication number Publication date
US20230396750A1 (en) 2023-12-07
WO2022086580A1 (en) 2022-04-28
EP4233310A1 (en) 2023-08-30

Similar Documents

Publication Publication Date Title
US10546364B2 (en) Smoothly varying foveated rendering
US11010958B2 (en) Method and system for generating an image of a subject in a scene
US9106906B2 (en) Image generation system, image generation method, and information storage medium
US11659150B2 (en) Augmented virtuality self view
US20220398705A1 (en) Neural blending for novel view synthesis
WO2019063976A1 (en) VISIOCASQUE SYSTEM
CN114175097A (zh) 用于对象类别建模的生成潜在纹理代理
US11720996B2 (en) Camera-based transparent display
US11212502B2 (en) Method of modifying an image on a computational device
US20230396750A1 (en) Dynamic resolution of depth conflicts in telepresence
US11128836B2 (en) Multi-camera display
CN113168228A (zh) 用于在大面积透明触摸界面中进行视差校正的系统和/或方法
US11386614B2 (en) Shading images in three-dimensional content system
WO2023040551A9 (zh) 一种在显示屏上显示图像的方法、电子设备与装置
CN115661408A (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