对三维内容系统中的图像进行阴影处理

文档序号:1026940 发布日期:2020-10-27 浏览:4次 >En<

阅读说明:本技术 对三维内容系统中的图像进行阴影处理 (Shadowing images in three-dimensional content systems ) 是由 安德鲁·伊安·拉塞尔 于 2019-06-10 设计创作,主要内容包括:一种方法包括:接收由第一3D系统生成的三维(3D)信息,所述3D信息包括场景的图像和关于所述场景的深度数据;使用深度数据来识别图像中与满足标准的深度值相关联的第一图像内容;以及通过应用有关所识别的第一图像内容的第一阴影处理来生成修改的3D信息。可以将修改的3D信息提供给第二3D系统。场景可以包含图像中的对象,并且生成修改的3D信息可以包括确定对象的第二图像内容的表面法线,以及基于所确定的表面法线来应用有关第二图像内容的第二阴影处理。对象的部分的深度值可能比另一部分的深度值大,并且可以应用有关图像的部分的第二阴影处理,第二部分位于所述部分处。(One method comprises the following steps: receiving three-dimensional (3D) information generated by a first 3D system, the 3D information including an image of a scene and depth data about the scene; using the depth data to identify first image content in the image associated with depth values that meet a criterion; and generating modified 3D information by applying a first shading process on the identified first image content. The modified 3D information may be provided to a second 3D system. The scene may contain an object in the image, and generating the modified 3D information may include determining a surface normal of a second image content of the object, and applying a second shading process with respect to the second image content based on the determined surface normal. The depth value of a part of the object may be larger than the depth value of another part and a second shading process may be applied with respect to the part of the image, at which the second part is located.)

对三维内容系统中的图像进行阴影处理

相关申请的交叉引用

本申请是2018年6月15日提交的标题为“SHADING IMAGES IN THREE-DIMENSIONALCONTENT SYSTEM”的美国非临时专利申请No.16/009,696的继续申请并且要求其优先权,所述美国非临时专利申请的公开内容以全文引用的方式并入本文中。

技术领域

本文献总体上涉及对三维系统中的图像进行阴影处理。

背景技术

计算机技术和通信系统领域的发展已被视为是一种用于满足高效且自然的长距离通信愿望的方式。已引入视频会议系统以试图在两个或更多人之间提供自然的人际交互。然而,它们通常依赖于在显示器上呈现的二维(2D)图像,这可能意味着交互效果不够生动。

此外,三维(3D)技术的出现并未引起对现有2D方法的充分改进。例如,3D系统可能需要非常复杂的硬件,诸如用于捕获要广播的内容和/或用于对内容进行处理。

发明内容

在第一方面,一种方法包括:接收由第一3D系统生成的三维(3D)信息,3D信息包括场景的图像和关于场景的深度数据;使用深度数据来识别图像中与满足标准的深度值相关联的第一图像内容;以及通过应用有关识别的第一图像内容的第一阴影处理来生成修改的3D信息。

实施方式可以包括以下特征中的任何一个或全部。标准包括第一图像内容超出场景中的预定深度。应用第一阴影处理包括致使第一图像内容被渲染为黑色。使用预定深度并应用第一阴影处理包括致使图像的背景被渲染为黑色。第一阴影处理取决于第一图像内容的深度值。标准包括第一图像内容比场景中的预定深度更近。场景包含图像中的对象,并且其中,生成修改的3D信息还包括确定对象的第二图像内容的表面法线,以及基于确定的表面法线来应用有关第二图像内容的第二阴影处理。应用第二阴影处理包括确定表面法线与相机矢量之间的点积,以及基于确定的点积来选择第二阴影处理。应用第二阴影处理包括基于图像中背对的第二图像内容来将第二图像内容淡化为黑色。场景包含图像中的对象,并且对象的第一部分在深度数据中的深度值比对象的第二部分的深度值大,并且其中,生成修改的3D信息还包括应用有关图像的部分的第二阴影处理,对应于第二部分的第二图像内容位于所述部分处。应用第二阴影处理包括基于显示器的用于呈现图像的部分来选择图像的部分。对象包括人,对象的第一部分包括人的面部,对象的第二部分包括人的躯干,而显示器的部分包括显示器的底部。方法还包括识别图像中的至少一个中的孔,其中,生成修改的3D信息包括应用有关孔的第二阴影处理。生成修改的3D信息还包括隐藏3D信息中的深度误差。深度数据基于从场景返回的红外(IR)信号,并且其中,生成修改的3D信息包括应用与IR信号强度成比例的第二阴影处理。方法还包括在第二3D系统处立体地呈现修改的3D信息,其中,第一图像内容具有第一阴影处理。立体地呈现修改的3D信息包括叠加地渲染图像。方法还包括将修改的3D信息提供给第二3D系统。

在第二方面,一种系统包括:相机;深度传感器;以及三维(3D)内容模块,三维内容模块具有实行存储在存储器中的指令的处理器,所述指令致使处理器使用3D信息中包括的深度数据来识别3D信息中包括的场景的图像中的第一图像内容,第一图像内容被识别为与满足标准的深度值相关联,并且通过应用有关识别的第一图像内容的第一阴影处理来生成修改的3D信息。

实施方式可以包括以下特征中的任何一个或全部。场景包含图像中的对象,并且生成修改的3D信息还包括确定对象的第二图像内容的表面法线,以及基于确定的表面法线来应用有关第二图像内容的第二阴影处理。场景包含图像中的对象,并且对象的第一部分的深度值比对象的第二部分的深度值大,并且生成修改的3D信息还包括应用有关图像的部分的第二阴影处理,对应于第二部分的第二图像内容位于所述部分处。

附图说明

图1示出了3D内容系统的示例。

图2示出了3D内容系统的示例。

图3示出了基于深度的阴影处理的示例。

图4示出了基于表面取向的阴影处理的示例。

图5示出了基于显示位置的阴影处理的示例。

图6A到图6B示出了对3D图像的背景进行阴影处理的示例。

图7示出了3D图像中的孔填充的示例。

图8示出了校正3D图像中的深度误差的示例。

图9A到图9B示出了叠加地渲染3D图像的示例。

图10到图12示出了方法的示例。

图13示出可以与所描述的技术一起使用的计算机设备和移动计算机设备的示例。

在各附图中,相似的附图标记指示相似的元件。

具体实施方式

本文献描述了与对3D系统中的图像进行阴影处理有关的示例。可以提供阴影处理以在3D显示器上提供人或其他主体的更生动、自然且直观的外观。可以提供一种人工创建的照明模式,所述模式在提供有用的技术优势和改进的同时以自然且直观的外观渲染场景。一些实施方式可以解决视差问题,这些问题往往会使3D图像中的背景看起来不自然。一些实施方式可以解决递送优质3D体验所需的硬件数量。例如,可以解决在捕获场景中使用多个独立3D内容容器的做法。例如,可以解决用墙实体地阻挡3D屏幕的一部分的做法。例如,可以解决要求特殊照明以捕获呈3D格式的场景的做法。一些实施方式可以有助于高质量3D远程呈现。一些实施方式可以为3D显示器提供真正的“挂墙式”形状系数。

一些实施方式可以解决递送优质3D体验所需的数据处理量或复杂性。例如,要以3D方式表示的场景可以设置有更大的捕获体积。例如,可以减少或消除在3D数据中执行体积融合的需求。例如,可以通过对背景进行阴影处理来减少或消除与显示的场景的次要方面(诸如其背景)有关的处理。例如,可以减少处理3D信息(诸如提供3D电话会议)所需的带宽量。

图1示出了3D内容系统100的示例。3D内容系统100可以被多个人使用。这里,人102和人104正在使用3D内容系统100。例如,人102和104正在使用3D内容系统100以进行3D远程呈现会话。在这种示例中,3D内容系统100可以允许人102和104中的每个看到彼此的高度逼真和视觉上一致的表示,由此有助于他们彼此交互,就好像他们是彼此实体存在的。

人102和人104中的每个可以具有对应的3D容器。这里,人102具有容器106,而人104具有容器108。容器106和容器108可以提供与3D内容有关的功能性,包括但不限于:捕获图像以进行3D显示,处理和呈现图像信息,以及处理和呈现音频信息。容器106和/或108可以构成一体地形成为一个单元的感测设备的集合。容器106和/或108可以包括参考图13所描述的一些或全部部件。

3D内容系统100可以包括一个或多个3D显示器。这里,为容器106提供了3D显示器110,并且为容器108提供了3D显示器112。3D显示器110和/或112可以使用多种类型的3D显示技术中的任何一个来为相应的查看者(例如,这里是人102或人104)提供立体视图。在一些实施方式中,3D显示器110和/或112可以包括独立式单元(例如,自支撑或悬挂在墙上)。在一些实施方式中,3D显示器110和/或112可以包括可穿戴技术(例如,头戴式显示器)。

3D内容系统100可以被连接到一个或多个网络。这里,网络114被连接到容器106和容器108。仅举两个示例,网络114可以是公共可用网络(例如,互联网)或专用网络。网络114可以是有线的,或无线的或两者的组合。网络114可以包括或利用一个或多个其他设备或系统,包括但不限于一个或多个服务器(未示出)。

容器106和/或108可以包括与3D信息的捕获、处理、传输或接收有关的和/或与3D内容的呈现有关的多个部件。容器106和108可以包括一个或多个相机,所述一个或多个相机用于捕获要包括在3D呈现中的图像的图像内容。这里,容器106包括相机116和118。例如,相机116和/或118可以基本上安置在容器106的外壳内,以使得相应相机116和/或118的物镜或透镜借助于外壳中的一个或多个开口捕获图像内容。在一些实施方式中,相机116和/或118可以与外壳分开,诸如呈独立式设备的形式(例如,具有与容器106的有线和/或无线连接)。可以定位和/或定向相机116和118,以便捕获(这里)人102的足够代表性的视图。虽然相机116和118应当优选地不遮挡对于人102的3D显示器110的视图,但是相机116和118的放置通常是任意选择的。例如,相机116和118中的一个可以定位在人102的面部上方的某处,而另一相机可以定位在面部下方的某处。例如,相机116和118中的一个可以定位在人102的面部右侧的某处,而另一个可以定位在面部左侧的某处。容器108可以类似的方式包括例如相机120和122。

容器106和/或108可以包括一个或多个深度传感器,以捕获将在3D呈现中使用的深度数据。可以将这种深度传感器视为3D内容系统100中的深度捕获部件的一部分,以用于表征由容器106和/或108捕获的场景,以便在3D显示器上正确地表示它们。而且,系统可以跟踪查看者头部的位置和取向,以使得可以以对应于查看者的当前视点的外观来渲染3D呈现。这里,容器106包括深度传感器124。以类似的方式,容器108可以包括深度传感器126。多种类型的深度感测或深度捕获中的任何一种都可以用于生成深度数据。在一些实施方式中,执行辅助立体深度捕获。可以使用光点照亮场景,并且可以在两个相应的相机之间执行立体匹配。可以使用具有选定波长或波长范围的波来完成该照亮。例如,可以使用红外(IR)光。这里,作为说明,深度传感器124使用光束128A和128通过照明的方式进行操作。光束128A和128B可以从容器106向被3D捕获的场景中的结构或其他对象(例如人102)和/或从这种结构/对象向容器106中的对应检测器行进,视情况而定。检测到的信号可以被处理以生成对应于某一场景或整个场景的深度数据。为此,可以将光束128A到128B视为与3D内容系统100所依赖的信号有关,以便出于3D呈现的目的来表征场景。例如,光束128A到128B可以包括IR信号。类似地,作为说明,容器108可以使用光束130A到130B进行操作。

深度数据可以包括或基于有关场景的任何信息,所述信息反映了深度传感器(例如,深度传感器124)与场景中的对象之间的距离。对于图像中对应于场景中的对象的内容,深度数据反映到该对象的距离(或深度)。例如,相机与深度传感器之间的空间关系可能是已知的,并且可以用于将来自相机的图像与来自深度传感器的信号相关联以生成有关图像的深度数据。

在一些实施方式中,深度捕获可以包括基于结构光或编码光的方法。可以以相对较高的帧速率将光的条纹图案分布到场景上。例如,当光信号在时间上彼此足够接近,以至即使人或对象在运动中也不预期场景在连续信号之间以显著方式改变时,可以认为帧速率很高。得到的图案可以用于确定相应结构涉及到哪一个投影仪排。然后,相机可以拾取得到的图案,并且可以执行三角测量以确定场景的一个或多个方面的几何结构。

可以对由3D内容系统100捕获的图像进行处理,并且此后显示为3D呈现。这里,将3D图像104'呈现在3D显示器110上。为此,人102可以将3D图像104'感知为人104的3D表示,该人104可能远离人102。将3D图像102'呈现在3D显示器112上。为此,人104可以将3D图像102'感知为人102的3D表示。下面描述3D信息处理的示例。

3D内容系统100可以允许参与者(例如,人102和104)彼此和/或与其他人进行音频通信。在一些实施方式中,容器106包括扬声器和传声器(未示出)。例如,容器108可以相似地包括扬声器和传声器。为此,3D内容系统100可以允许人102和104彼此和/或与其他人进行3D远程呈现会话。

图2示出了3D内容系统200的示例。3D内容系统200可以用作或包括在本文所描述的一个或多个实施方式中,和/或可以用于执行本文所描述的3D处理或呈现的一个或多个示例的操作。可以根据下面参考图13所描述的一个或多个示例来实现整个3D内容系统200和/或其个别部件中的一个或多个。

3D内容系统200包括一个或多个3D系统202。这里,示出了3D系统202A、202B到202N,其中指标N指示任意数字。3D系统202可以提供对3D呈现的视觉信息和音频信息的捕获,并且转发3D信息以进行处理。仅举几个示例,此3D信息可以包括场景的图像、关于场景的深度数据以及来自场景的音频。例如,3D系统202可以用作或包括在容器106和3D显示器110(图1)内。

3D内容系统200包括多个相机204。任何类型的光感测技术都可以用于捕获图像,诸如在普通数码相机中使用的图像传感器类型。相机204可以是相同类型或不同类型的。

3D内容系统200包括深度传感器206。在一些实施方式中,深度传感器206借助于将IR信号传播到场景上并检测响应信号来进行操作。例如,深度传感器206可以生成和/或检测光束128A到128B。

3D内容系统200包括至少一个麦克风208和扬声器210。例如,这些可以一体地形成到用户穿戴的头戴式显示器中。

3D内容系统200包括可以以立体方式呈现3D图像的3D显示器212。在一些实施方式中,3D显示器212可以是独立式显示器,并且在一些其他实施方式中,3D显示器212可以包括在头戴式显示单元中,所述头戴式显示单元被配置成由用户穿戴以体验3D呈现。此类实施方式可以根据参考图13所描述的示例进行操作。

在一些实施方式中,3D显示器212使用视差屏障技术进行操作。例如,视差屏障可以包括放置在屏幕与查看者之间的基本上不透明的材料(例如,不透明的膜)的平行竖直条纹。因为查看者的相应眼睛之间的视差,所以屏幕的不同部分(例如,不同的像素)由相应的左眼和右眼查看。

在一些实施方式中,3D显示器212使用双凸透镜操作。例如,可以将透镜的交替的排放置在屏幕的前方,所述排使来自屏幕的光分别瞄准查看者的左眼和右眼。

在一些实施方式中,3D显示器212可以包括头戴式显示器(例如,如参考图13所描述的)。例如,头戴式显示器可以为相应的眼睛使用不同的显示器,或使用指向相应的眼睛的显示器的不同部分,由此提供3D图像的立体视图。

3D内容系统200可以包括服务器214,所述服务器214可以执行数据处理、协调和/或数据传输的某些任务。服务器214和/或其部件可以包括参考图13所描述的一些或全部部件。

服务器214包括3D内容模块216,所述3D内容模块216可负责以一种或多种方式处理3D信息。这可以包括接收3D内容(例如,从3D系统202A),处理3D内容和/或将(经处理的)3D内容转发给另一参与者(例如,转发到3D系统202中的另一个)。

由3D内容模块216执行的功能的一些方面可以由阴影处理模块218实现,以完成执行。阴影处理模块218可以负责应用有关图像的某些部分的阴影处理(例如,致使背景被渲染为黑色),并且还执行与已经或将要设置有阴影处理的图像相关的其他服务。例如,阴影处理模块218可以被利用来抵消或隐藏可能另外由3D系统202生成的一些伪像。

阴影处理是指定义图像内容的外观的一个或多个参数,包括但不限于图像中对象的颜色、表面和/或多边形。在一些实施方式中,可以将阴影处理应用于图像内容的一个或多个部分或针对所述一个或多个部分进行调整,以改变这些图像内容部分将如何向查看者显现。例如,可以应用/调整阴影处理,以便使图像内容部分更暗或为黑色。

阴影处理模块218可以包括深度处理部件220。在一些实施方式中,深度处理部件220可以基于与图像内容相关联的一个或多个深度值而对该内容应用阴影处理。例如,可以对具有超过预确定深度的深度值的所有内容应用阴影处理。举一个示例,这可以允许深度处理部件220基本上致使整个背景(例如,人102(图1)后面的场景)被渲染为黑色。

阴影处理模块218可以包括角度处理部件222。在一些实施方式中,角度处理部件222可以基于图像内容相对于捕获图像内容的相机的取向(例如,角度)而对该内容应用阴影处理。例如,可以对背对相机角度达不止预确定角度的内容应用阴影处理。仅举一个示例,这可以允许角度处理部件222致使亮度降低,并且致使亮度随着表面从相机转动离开而淡化。

阴影处理模块218可以包括底部处理部件224。在一些实施方式中,底部处理部件224可以基于图像内容在3D显示器上的布置而对该内容应用阴影处理。例如,可以朝向3D显示器底部(因此命名底部)对内容应用阴影处理。仅举一个示例,这可以允许底部处理部件224淡化例如在3D显示器的底端之前的人(例如,图1中的人102)的下部躯干。也可以或替代地朝向3D显示器的任何其他部分执行阴影处理,诸如朝向顶部、右侧和/或左侧。

阴影处理模块218可以包括孔填充部件226。在一些实施方式中,孔填充部件226可以检测阴影处理,并对图像内容中的一个或多个孔应用阴影处理,以给出更好的3D体验。可以在图像内容缺失的地方应用阴影处理。因为不存在图像内容或图像的一部分中不存在图像内容,所以图像中可能存在孔。当将代表场景的不同视图的图像压合在一起时,得到的图像可能会具有一个或多个孔,在所述一个或多个孔处没有一个相机捕获到图像内容。为此,仅举一个示例,孔填充部件226可以补偿由于相机不具有足够的主体视图而出现的孔。

阴影处理模块218可以包括深度误差部件228。在一些实施方式中,深度误差部件228可以检测阴影处理,并对图像内容的深度信息不足或缺失的一个或多个区域应用阴影处理。例如,可以对具有不良IR反射率的图像内容应用阴影处理。仅举一个示例,这可以允许深度误差部件228补偿场景中的闪亮对象。

阴影处理模块218可以包括渲染部件230。在一些实施方式中,渲染部件230可以致使图像内容被叠加地渲染在3D显示器上。仅举一个示例,这可以允许渲染部件230避免一些图像信息会缺失的异常渲染。

这里,以上示例性部件被描述为在服务器214中实现,所述服务器214可以借助于网络232(可以与图1中的网络114相似或相同)与3D系统202中的一个或多个通信。在一些实施方式中,替代地或另外,在3D系统202中的一些或全部中实现3D内容模块216、阴影处理模块218和/或它们的部件。例如,上述处理可以由系统执行,所述系统在将3D信息转发到一个或多个接收系统之前始发3D信息。作为另一示例,始发系统可以将图像、深度数据和/或对应的信息转发到可以执行上述处理的一个或多个接收系统。可以使用这些方法的组合。

为此,3D内容系统200是包括相机(例如,相机204)、深度传感器(例如,深度传感器206)和3D内容模块(例如,3D内容模块216)的系统的示例,所述3D内容模块具有实行存储在存储器中的指令的处理器。此类指令可以致使处理器使用3D信息中包括的深度数据(例如,借助于深度处理部件220)来识别3D信息中包括的场景的图像中的第一图像内容。第一图像内容可以被识别为与满足标准的深度值相关联。处理器可以通过应用有关识别的第一图像内容的第一阴影处理来生成修改的3D信息。

为此,3D内容系统200是包括相机(例如,相机204)、深度传感器(例如,深度传感器206)和3D内容模块(例如,3D内容模块216)的系统的示例,所述3D内容模块具有实行存储在存储器中的指令的处理器(例如,角度处理部件222),所述存储器中存储有包括场景的图像和深度数据的3D信息,所述图像包括对象,所述指令致使处理器确定对象的第一图像内容的表面法线,并且基于确定的表面法线通过应用有关第一图像内容的第一阴影处理而生成修改的3D信息。

为此,3D内容系统200是包括相机(例如,相机204)、深度传感器(例如,深度传感器206)和3D内容模块(例如,3D内容模块216)的系统的示例,所述3D内容模块具有实行存储在存储器中的指令的处理器(例如,底部处理部件224),所述存储器中存储有包括场景的图像和深度数据的3D信息,所述图像包括对象,其中所述对象的第一部分的深度值比所述对象的第二部分的深度值大,所述指令致使处理器通过应用有关图像的部分的第一阴影处理而生成修改的3D信息,对应于第一部分的第一图像内容位于所述部分处。

图3示出了基于深度的阴影处理的示例。该示例涉及捕获的场景图像,所述图像用于在3D显示器上进行3D呈现。这里,指示了3D显示器的平面300。为了解释可以如何处理代表场景的图像内容以便在3D显示器的平面300中进行3D呈现,还指示了场景中的人302、304和306。在另一示例中,人302到人306可以是任何其他类型的对象或结构。

这里,人302的躯干的部分302'被视为比3D显示器的平面300更靠近查看者。这里渲染了3D图像,以使得查看者感知到部分302'在平面300的前方。例如,人302的躯干的部分302”据说可能具有相对于平面300的深度值308(这里深度值被示意性地指示为箭头)。此外,人304据说可能具有相对于平面300的(至少一个)深度值310。严格来说,人304的各种部分具有相对于平面300的不同深度值,但是为了简单起见,这里仅示出深度值310。最后,人306在相似的简化意义上可以被认为(至少)具有相对于平面300的深度值312。这里,人302据说可能位于3D显示器上描绘的场景的最前端,而人304和306据说可能在其背景中。可以以3D呈现方式对背景中的图像内容进行不同的处理,这将在下面的示例中进行描述。

为了进行优质3D呈现,要考虑基于查看者的当前位置的视差。为此,仅举几个示例,基于查看者是向左还是向右或向上还是向下移动其头部而改变3D图像的渲染。然而,头部跟踪技术可能无法完美地表现查看者眼睛的位置,而只是表现为近似位置。而且,因为可以在更新3D呈现之前进行某些计算,所以可能会引入一定的延迟。因此,一些现有系统已与背景中被称为的“模糊”或感知的位置中的晃动相关联。例如,在相对于3D显示器移动的查看者可能预期背景保持相对固定时,由于上面不完美的头部跟踪和/或延迟,查看者反而可能会看到背景中的移动。这可能会使查看者有点分心,并且他们对3D呈现的体验可能因此受到影响。

这些缺点和/或其他缺点可以例如使用深度处理部件220(图2)来解决。在一些实施方式中,限定了阈值314(例如,预定深度)以用于应用阴影处理。可以用一种或多种方式对对应于超出阈值的对象的图像内容进行阴影处理。可以相关于平面300在任一方向或两个方向上测量深度。仅举一个示例,应用阴影处理可以涉及将位于阈值314之外的所有东西渲染为黑色。为此,从查看者的视角来看场景的在人302后面的部分,包括人304和306,可以渲染为黑色。

在一些实施方式中,可以基于相应的深度值而应用不同的阴影处理。例如,具有深度值310的人304可以设置有与具有深度值312的人306不同的阴影处理(例如,较暗的阴影处理或黑色阴影处理)。为此,给定图像内容的阴影处理可以依赖于与该图像内容相关联的深度值。这可以以在3D图像中创建场景自然外观的方式来解决“模糊”情况,类似于例如如果人302被明亮的聚光灯照亮而使其余场景变暗或有阴影的情况。

图4示出了基于表面取向的阴影处理的示例。这里,相对于3D显示器的平面300呈现人400。在另一示例中,替代地或另外,可能涉及人以外的任何其他对象或结构。将使人400的图像的一些部分作为示例进行讨论。这里,人400包括图像部分402(例如,在人400的躯干的前方)和图像部分404(例如,在人400的肩膀上)。人400的每个图像部分,包括图像部分402和404,与捕获相机从其接收来形成相应图像部分的光的方向相关联。假设人400的图像由单个相机捕获,则图像部分402据说可能与相机矢量406相关联,而图像部分404据说可能与相机矢量408相关联,所述相机矢量406和408指向空间中的同一点(即,指向相机的光传感器)。

人400的每个图像部分(包括图像部分402和404)都与垂直于该图像部分处的表面平面的表面法线相关联。图像部分402据说可能与表面法线410相关联,而图像部分404据说可能与表面法线412相关联。这里,表面法线410和412指示图像部分404比图像部分402背离相机更多。

可以基于图像部分的表面法线而对该图像部分应用阴影处理。在一些实施方式中,可以评估点积。可以通过修改一个或多个值将阴影处理添加到纹理中(例如,RGB纹理中)。例如,如果相机矢量408和表面法线412的点积为(接近)零,则可以将图像部分404渲染(基本)为黑色。例如,如果相机矢量406和表面法线410的点积为(接近)1,则可以以(基本)不淡化的方式渲染图像部分402。为此,在一些实施方式中,图像部分背离相机的方向越多,图像部分就可能会在更大程度上淡化。这可以创建这样一种照明效果,即对象在其***(例如,朝向人的轮廓)逐渐变得不那么亮(例如,阴影处理成更偏向黑色)。在一些实施方式中,角度处理部件222(图2)可以执行这些操作。阴影处理的应用可以基于阈值(例如,仅当点积低于某一值时才进行阴影处理),或者可以是渐进式的(例如,点积越低则阴影处理越大)。这可以简化数据处理,并可以减少对具有许多相机来捕获不同视角的需求。例如当以特定阴影处理渲染背景(例如,渲染为黑色)时,该照明协议可以为查看者创建自然的印象。

图5示出了基于显示位置的阴影处理的示例。在其他示例中已经提及,可以基于场景中对应的对象(或对象的一部分)所处的位置,而将图像部分与深度值相关联。然后,基于此类深度值,3D呈现可以给查看者留下深度印象。然而,在一些情况下,可能会导致不直观或看似矛盾的效果。

这里,相对于3D显示器的平面300示出了人500。可以执行3D呈现,以使得人500的面部502(在这里示意性地示出为椭圆形)位于3D显示器的平面300中。也就是说,观看3D呈现的查看者将在平面300的深度上看到面部502,这对应于3D显示器的物理表面(例如,在某些类型的显示技术中发光元件大致所在的位置)。然而,场景的某一其他部分可能定位在比面部502的深度小的位置。这里,人500的躯干的部分504被定位成比面部502和3D显示器的平面300两者的位置更靠前(即,更靠近查看者)。

然而,人500的3D呈现受到3D显示器大小的限制。为此,3D显示器的下边缘506将用作3D呈现中所有图像内容的下边界。特别地,下边缘506的部分506'有效地切去人500的躯干的部分504的最下部区域,以使得部分504的仅在部分506'以上的区域可见。因为部分506'根据定义位于3D显示器的平面300中,而部分504的最下部区域504'位于平面300的前方,所以问题出现。也就是说,虽然部分506'在3D显示器中看上去犹如是在最下部区域504'后面,但最下部区域504'被部分506'遮挡。这在视觉上可能不直观,并且因此分散了查看者的注意力。在一些现有方法中,已经将实体墙放置在查看者与3D显示器之间以抵消该问题。

可以对3D图像的一个或多个部分中的图像内容应用阴影处理。例如,这可以由底部处理部件224来完成。在一些实施方式中,可以根据方向508应用阴影处理。例如,人500的3D图像可以朝向3D显示器的底部淡化(例如,淡化成黑色)。这可以解决上述问题,因为最下部区域504'可能不再可见,并且未向查看者显现在最下部区域504'与下边缘506的部分506'之间的矛盾。为此,一些方法可以在没有实体墙阻挡3D显示器的部分的情况下提供优质3D体验。因此,可以使用挂墙式形状系数来实现3D显示器。

图6A到图6B示出了对3D图像600的背景进行阴影处理的示例。这里,如图6A中示出的场景包括具有下部躯干区域602'的人602(在前景中)以及对象604和606(在背景中)。可以执行对捕获图像的处理,以使得3D呈现在视觉上令人愉悦并且没有异常。例如,这种处理可以由图2中的3D内容模块216完成(例如,通过其阴影处理模块218)。

图6B示出了可以在对图6A中的3D图像600进行处理之后呈现的3D图像600'的示例。3D图像600'在可以基于所应用的阴影处理的背景608下示出了人602。例如,可以将背景608渲染为黑色,从而使3D图像600'中仅人602(而不是对象604和606)可见。特别地,下部躯干区域602'在这里已经淡化以避免与3D图像600'的边缘不一致。该结果可以与查看者在视觉上保持一致,例如可以给人以如下印象:人602在聚光灯照亮下显现,而某些区域(例如,背景和躯干的底部)没有被聚光灯覆盖并且因此显现为黑色。

本示例和本文中的其他描述有时将操作称为将特定阴影处理添加到图像内容作为处理3D信息的一部分。向图像内容添加阴影处理可能意味着改变图像内容的一个或多个阴影处理值。在一些情况下,添加阴影处理可能涉及修改纹理以具有不同的阴影处理值(例如,使纹理显现为黑色)。在其他情况下,可以将要修改的现有图像内容(例如,使图像内容变黑)从图像中移除,并替换为具有期望的特性的内容(例如,可以用黑色内容替换诸如背景等非黑色内容,以便隐藏所述背景)。

基于3D图像600而生成3D图像600'的处理可以提供其他优点。在已经应用了多个相机系统的用于提供3D呈现的现有系统中,已经执行了体积融合以生成可以在3D显示器上渲染的视觉上一致的场景。体积融合用于将来自多个3D系统的图像内容逻辑地融合到连贯单元中,这需要定义融合体积,对象和结构应当被限制在所述融合体积内以便在3D图像中进行渲染。为此,通常需要将(多个3D系统的)相机的捕获体积限制在所述融合体积中。这可能会致使这种效果:例如如果有人将其手臂伸出到融合体积之外,则该手臂可能会在3D渲染中“消失”,因为它超出了捕获体积。

当根据本文所描述的示例中一个或多个解决了3D呈现的图像内容中的异常和其他复杂性时,这还可以减少或消除对执行体积融合的需要。例如,可能仅需要一个容器(例如,图1中的容器106)来捕获图像内容和深度数据以生成优质的3D呈现。可以确定地知道该容器的相机的空间位置和/或取向(例如,因为相机固定在外壳内),并且因此可能不需要执行复杂的体积融合操作以便正确地渲染3D图像。为此,捕获体积不再需要符合任何融合体积,并且因此可以比以前更大。一个有利的结果在于,人正在伸出的手臂可能不再从视图中“消失”,并且可能致使孔在图像中显现。例如,可以替代地将手臂渲染为暗色或黑色,这在如果将其余人渲染为犹如被聚光灯照亮的情况下可能上去很自然。

图7示出了3D图像中的孔填充的示例。当相机捕获人700的图像以进行3D呈现时,可以产生至少一个孔702。虽然孔可能会显现在图像的各种部分,但是通常可能更常见的是在相机难以“看到”的区域中(诸如,仅举几个示例,在缝隙、褶皱中和在张开的嘴中)。这里,孔702位于人700的头部与肩膀之间。

当将3D图像渲染给查看者时,孔702可能会引起异常结果。例如,在空间上位于孔702后面的图像内容(诸如场景中背景的一部分)可以代替显现在孔702的地方。孔702可能是由于在捕获场景时不具有足够的覆盖范围而导致的。在现有系统中,这有时会造成使用大量的相机。

可以诸如通过图2中的孔填充部件226来执行3D信息的处理,以解决上述情况或其他情况。在一些实施方式中,孔702可以设置有阴影处理。例如,孔702可以在3D图像中被渲染为黑色。这可以为查看者提供优质的3D体验,例如由于人700的在某种程度上相对强烈的聚光灯照亮,可能看上去犹如孔702的(现在变暗的)区域只是被阴影处理(例如,隐藏在黑暗中)。为此,可以消除通过孔702无意地显现的空间上在后面的内容(例如,背景)的问题。作为另一示例,可以减少或消除引入更多相机以提供更好的3D场景覆盖范围的需求。

图8示出了校正3D图像中的深度误差的示例。3D图像包括参考3D显示器的平面300示出的人800。用于3D呈现的场景内的深度捕获可以利用诸如深度传感器206(图2)等技术,所述技术可以借助于IR信号(例如,图1中的光束128A到128B)进行操作。深度感测可以基于将IR波反射离开场景中对象表面并检测返回信号的能力。不同的材料对IR信号的反射率可能不同。一些材料对于IR信号可能具有相对较好的反射率,并且它们的深度捕获可能很简单。这里,部分802(例如,在人800的衣服上)具有相对良好的IR反射率。然而,其他材料对IR信号的反射率可能很差。头发、闪亮金属和皮革只是几个示例。因此,此类材料可能仅提供较差(或不提供)深度数据。为此,确定的深度值的有效性的置信度可能较低(或者无法获得结果)。这里,部分804(例如,在人800的头发上)可能具有相对较差的IR反射率。

可以处理3D信息以解决这些情况和/或其他情况。例如,可以通过深度误差部件228(图2)执行的操作来隐藏深度误差。在一些实施方式中,可以基于返回的IR信号的强度而应用阴影处理。例如,对于IR反射率较差的区域,可以致使阴影处理的权重下降直到零为止。在一些实施方式中,可以基于确定的深度值的置信度而应用阴影处理。例如,深度值较差(或不具有深度值)的区域可以渲染为黑色。作为另一示例,深度值较差(或不具有深度值)的区域可以渲染为透明的。这里,部分804可以被渲染为黑色/透明的。相反,可以根据捕获的图像信息来渲染部分802。

图9A到图9B示出了叠加地渲染3D图像900的示例。在一些情况下,从场景捕获的图像内容可以具有在生成优质3D呈现时提出挑战的特性,如在本文其他示例中也说明的。例如,如果场景中的特定结构没有被充分地照亮或以其他方式没有被相机完全捕获,则结果可能是只能确定出对于该结构的很少或没有几何结构。这意味着3D系统可能不具有确定该位置存在什么的有意义的方式,这继而又提出了在这种情况下应如何渲染内容的问题。例如,如果仅渲染在后面的内容(即定位在缺失的特征后面的结构),则这对查看者可能不直观,并且因此无法提供自然的外观。

这里,图9A中的3D图像900包括定位在对象904前方的对象902,所述对象904继而又定位在对象906前方。为清楚地示出空间布置,以透视图示意性地示出了3D图像900。例如,假设对应于对象902的图像内容部分缺失。可以通过叠加地渲染对象902到906以有利的方式解决这种情况。例如,这可以借助于由渲染部件230(图2)执行的处理来完成。

图9B示出了基于3D图像900而渲染的3D图像900'。出于说明的目的,这里以平面视图示出了3D图像900'。3D图像900'包括定位在对象904'前方的对象902',所述对象904'定位在对象906'前方。叠加地渲染对象902'、904'和906'。也就是说,对象902到906(图9A)的(可用)图像内容已经被彼此添加以生成3D图像900'。为此,在渲染3D图像900'时不考虑遮蔽。实际上,可以忽略深度值。而且,对象902'、904'和906'的渲染可以以任何顺序进行。3D图像900'的外观对查看者可能更具吸引力。例如,查看者可能仅接受对象透明地显现这一事实。

本文所述的一些示例可以被组合。在一些实施方式中,本文参考图3、图4、图5、图6A、图6B、图7、图8、图9A和/或图9B所描述的方法中的两个或更多个可以组合。例如,基于深度的阴影处理(例如,如相关于图3所描述的)可以与基于表面取向的阴影处理(例如,如相关于图4所描述的)组合。例如,基于深度的阴影处理(例如,如相关于图3所描述的)可以与基于显示位置的阴影处理(例如,如相关于图5所描述的)组合。例如,基于表面取向的阴影处理(例如,如相关于图4所描述的)可以与基于显示位置的阴影处理(例如,如相关于图5所描述的)组合。例如,孔填充(例如,如相关于图7所描述的)可以与基于深度的阴影处理、基于表面取向的阴影处理和/或基于显示位置的阴影处理组合。例如,校正深度误差(例如,如相关于图8所描述的)可以与基于深度的阴影处理、基于表面取向的阴影处理和/或基于显示位置的阴影处理组合。例如,叠加地渲染(例如,如相关于图9A到图9B所描述的)可以与基于深度的阴影处理、基于表面取向的阴影处理和/或基于显示位置的阴影处理组合。

图10到图12分别示出了方法1000、1100和1200的示例。方法1000、1100和/或1200可以借助于实行存储在非暂时性存储介质中的指令的处理器来执行。例如,可以使用参考图13所描述的部件中的一些或全部。可以执行比所示出的更多或更少的操作。可以以不同的顺序执行所述操作中的两个或更多个。在下文中,将来自本文其他附图的一些特征称为说明性示例。

从方法1000开始,在1010处可以接收3D信息。例如,3D内容模块216可以从容器106接收图像和深度数据。

在1020处,可以识别图像内容。在一些实施方式中,将图像内容识别为与满足标准的深度值相关联。例如,深度传感器124可以指示对象604和606在背景中。

在1030处,可以生成修改的3D信息。在一些实施方式中,阴影处理模块218可以应用一个或多个模块来修改3D信息。例如,修改的3D信息可以对应于图像600',其中已使背景和人602的一部分设置有阴影处理以渲染为黑色或暗色。

在1040处,可以将修改的3D信息提供给一个或多个其他系统或实体。例如,服务器214或3D系统202A可以将修改的3D信息提供给3D系统202B。

在1050处,可以基于修改的3D信息而立体地呈现3D图像。在一些实施方式中,容器108可以进行3D呈现,其中3D图像102'中的人看上去犹如在黑色背景下被聚光灯照亮。例如,可以将该操作作为人102和104参加的3D远程呈现会话的一部分来完成。

现在转向方法1100,在1105处可以接收3D信息。例如,可以类似于方法1000中的对应操作来完成该操作。

在1110处,可以确定表面法线。例如,阴影处理模块218可以确定表面法线410和/或412。

在1120处,可以通过基于确定的表面法线而对图像内容应用阴影处理来生成修改的3D信息。例如,可以对图像部分404进行阴影处理以便被渲染为黑色。

在1130处,可以提供修改的3D信息,并且在1140处,可以立体地呈现3D图像。例如,可以类似于方法1000中的对应操作来完成该操作。

最后,在方法1200中,在1210处可以接收3D信息。例如,可以类似于方法1000中的对应操作来完成该操作。

在1220处,可以通过对图像的部分应用阴影处理来生成修改的3D信息,对应于某部分的图像内容位于该部分处。在一些实施方式中,这可能涉及朝向3D显示器的特定侧面或区域进行阴影处理。例如,可以应用阴影处理,以使得图像内容朝向3D显示器的底部淡化。

在1230处,可以提供修改的3D信息,并且在1240处,可以立体地呈现3D图像。例如,可以类似于方法1000中的对应操作来完成该操作。

图13示出可以与所描述的技术一起使用的计算机设备1300和移动计算机设备1350的示例。计算设备1300包括处理器1302、存储器1304、存储设备1306、连接到存储器1304和高速扩展端口1310的高速接口1308以及连接到低速总线1314和存储设备1306的低速接口1312。使用各种总线来互连组件1302、1304、1306、1308、1310和1312,并且可以被酌情安装在公共主板上或者以其它方式安装。处理器1302可以处理在计算设备1300内执行的指令,包括存储在存储器1304中或者在存储设备1306上以在外部输入/输出设备(诸如耦合到高速接口1308的显示器1316)上显示用于GUI的图形信息的指令。在一些实施例中,可以酌情使用多个处理器和/或多个总线以及多个存储器和多种类型的存储器。另外,可以连接多个计算设备1300,其中每个设备提供必要操作的部分(例如,作为服务器组、一组刀片服务器或多处理器系统)。

存储器1304存储计算设备1300内的信息。在一个实施例中,存储器1304是一个或多个易失性存储器单元。在另一实施例中,存储器1304是一个或多个非易失性存储器单元。存储器1304还可以是另一形式的计算机可读介质,诸如磁盘或光盘。

存储设备1306能够为计算设备1300提供大容量存储。在一个实施例中,存储设备1306可以是计算机可读介质或者包含计算机可读介质,诸如软盘设备、硬盘设备、光盘设备或磁带设备、闪速存储器或其它类似的固态存储设备或设备的阵列,包括存储区域网络或其它配置中的设备。计算机程序产品可被有形地具体实现在信息载体中。计算机程序产品还可以包含指令,所述指令当被执行时,执行一种或多种方法,诸如本文描述的那些方法。信息载体是计算机或机器可读介质,诸如存储器1304、存储设备1306或处理器1302上的存储器。

高速控制器1308管理用于计算设备1300的带宽密集操作,而低速控制器1312管理较低带宽密集操作。功能的这种分配仅是示例性的。在一个实施例中,高速控制器1308耦合到存储器1304、显示器1316(例如,通过图形处理器或加速器),并且耦合到高速扩展端口1310,所述高速扩展端口1310可以接受各种扩展卡(未示出)。低速控制器1312可以被耦合到存储设备1306和低速扩展端口1314。可以包括各种通信端口(例如,USB、蓝牙、以太网、无线以太网)的低速扩展端口例如通过网络适配器耦合到一个或多个输入/输出设备,诸如键盘、指点设备、扫描器或诸如交换机或路由器的联网设备。

如图中所示,可以以许多不同的形式实现计算设备1300。例如,它可以作为标准服务器1320被实现,或者在一组此类服务器中实现多次。它还可以作为机架服务器系统1324的一部分被实现。此外,它可以被实现在诸如膝上型计算机1322的个人计算机中。可替选地,来自计算设备1300的组件可以与移动设备(未示出)诸如设备1350中的其它组件组合。此类设备中的每一个均可以包含计算设备1300、1350中的一个或多个,并且整个系统可以由彼此通信的多个计算设备1300、1350组成。

计算设备1350包括处理器1352、存储器1364、诸如显示器1354的输入/输出设备、通信接口1366和收发器1368以及其它组件。设备1350还可以被提供有存储设备,诸如微驱动器或其它设备,以提供附加存储。组件1350、1352、1364、1354、1366和1368中的每一个均使用各种总线来互连,并且若干组件可以被酌情安装在公共主板上或者以其它方式安装。

处理器1352可执行计算设备1350内的指令,包括存储在存储器1364中的指令。处理器可作为芯片的芯片组被实现,所述芯片包括单独的和多个模拟和数字处理器。例如,处理器可以提供用于设备1350的其它组件的协调,诸如对用户界面、由设备1350运行的应用以及由设备1350进行的无线通信的控制。

处理器1352可以通过耦合到显示器1354的控制接口1358和显示器接口1356来与用户进行通信。显示器1354可以是例如TFT LCD(薄膜晶体管液晶显示器)或OLED(有机发光二极管)显示器或其它适当的显示技术。显示接口1356可以包括用于驱动显示器1354以向用户呈现图形和其它信息的适当的电路。控制接口1358可以从用户接收命令并且对它们进行转换以用于提交给处理器1352。此外,外部接口1362可以与处理器1352通信,使得能实现设备1350与其它设备的近区域通信。外部接口1362可以例如在可以使用多个接口的一些实施例中提供用于有线通信或者无线通信。

存储器1364存储计算设备1350内的信息。存储器1364可以被实现为一个或多个计算机可读介质、一个或多个易失性存储器单元或者一个或多个非易失性存储器单元中的一种或多种。扩展存储器1384还可以通过扩展接口1382来提供并连接到设备1350,所述扩展接口1382可以包括例如SIMM(单列直插存储器模块)卡接口。这种扩展存储器1384可以为设备1350提供额外的存储空间,或者还可以为设备1350存储应用或其它信息。具体地,扩展存储器1384可以包括用于执行或者补充上述的过程的指令,并且还可以包括安全信息。因此,例如,扩展存储器1384可以是用于设备1350的安全模块,并且可以被编程有允许安全地使用设备1350的指令。此外,可以经由SIMM卡提供安全应用以及附加信息,诸如以不可破解的方式将识别信息放置在SIMM卡上。

如在下面所讨论的,存储器可以包括例如闪速存储器和/或NVRAM存储器。在一个实施例中,计算机程序产品被有形地具体实现在信息载体中。计算机程序产品包含指令,所述指令当被执行时,执行一种或多种方法,诸如上述的那些方法。信息载体是可以例如通过收发器1368或外部接口1362接收的计算机可读介质或机器可读介质,诸如存储器1364、扩展存储器1384或处理器1352上的存储器。

设备1350可以通过通信接口1366以无线方式通信,所述通信接口1366必要时可以包括数字信号处理电路。通信接口1366可以提供用于在各种模式或协议下通信,所述各种模式或协议诸如GSM语音呼叫、SMS、EMS或MMS消息传送、CDMA、TDMA、PDC、WCDMA、CDMA2000或GPRS等。这种通信可以例如通过射频收发器1368来发生。此外,短距离通信可以例如使用蓝牙、Wi-Fi或其它这种收发器(未示出)来发生。此外,GPS(全球定位系统)接收器模块1380可以向设备1350提供附加的导航和位置相关无线数据,其可以由在设备1350上运行的应用酌情使用。

设备1350还可以使用音频编解码器1360来可听地通信,所述音频编解码器1360可以从用户接收口语信息并将它转换为可用的数字信息。音频编解码器1360可以同样地为用户生成可听声音,诸如通过扬声器,例如在设备1350的头戴式耳机中。这种声音可以包括来自语音电话呼叫的声音,可以包括录制声音(例如,语音消息、音乐文件等)并且还可以包括由在设备1350上操作的应用所生成的声音。

如图中所示,可以以许多不同的形式实现计算设备1350。例如,它可以作为蜂窝电话1380被实现。它还可以被实现为智能电话1382、个人数字助理或其它类似的移动设备的一部分。

这里描述的系统和技术的各种实施方式可用数字电子电路、集成电路、专门地设计的ASIC(专用集成电路)、计算机硬件、固件、软件和/或其组合加以实现。这些各种实施方式可包括在可编程系统上可执行和/或可解释的一个或多个计算机程序中的实施方式,所述可编程系统包括至少一个可编程处理器,其可以是专用的或通用的,耦合以从存储系统、至少一个输入设备和至少一个输出设备接收数据和指令,并且向存储系统、至少一个输入设备和至少一个输出设备数据和指令。

这些计算机程序(也称为程序、软件、软件应用或代码)包括用于可编程处理器的机器指令,并且可用高级过程和/或面向对象编程语言和/或用汇编/机器语言来实现。如本文所使用的,术语“机器可读介质”、“计算机可读介质”指代用于向可编程处理器提供机器指令和/或数据的任何计算机程序产品、装置和/或设备(例如,磁盘、光盘、存储器、可编程逻辑器件(PLD)),包括将机器指令作为机器可读信号来接收的机器可读介质。术语“机器可读信号”指代用于向可编程处理器提供机器指令和/或数据的任何信号。

为了提供与用户的交互,可在计算机上实现这里描述的系统和技术,所述计算机具有用于向用户显示信息的显示设备(例如,CRT(阴极射线管)或LCD(液晶显示器)监视器)以及用户可以用来向该计算机提供输入的键盘和定点设备(例如,鼠标或轨迹球)。其它种类的设备也可用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈(例如,视觉反馈、听觉反馈或触觉反馈);并且可以任何形式接收来自用户的输入,包括声、语音或触觉输入。

可在计算系统中实现这里描述的系统和技术,所述计算系统包括后端部件(例如,作为数据服务器),或者包括中间件部件(例如,应用服务器),或者包括前端部件(例如,具有用户可用来与这里描述的系统和技术的实施例交互的图形用户界面或Web浏览器的客户端计算机),或者包括这样的后端、中间件或前端部件的任何组合。系统的部件可通过任何形式或介质的数字数据通信(例如,通信网络)来互连。通信网络的示例包括局域网(“LAN”)、广域网(“WAN”)和因特网。

计算系统可包括客户端和服务器。客户端和服务器一般地彼此远离并且通常通过通信网络来交互。客户端和服务器的关系借助于在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序而产生。

在一些实施例中,图13中描绘的计算设备可包括与虚拟现实头戴式设备(VR头戴式设备/HMD设备1390)对接的传感器。例如,包括在图13中描绘的计算设备1350或其它计算设备上的一个或多个传感器可向VR头戴式设备1390提供输入,或者通常向VR空间提供输入。传感器可包括但不限于触摸屏、加速度计、陀螺仪、压力传感器、生物计量传感器、温度传感器、湿度传感器和环境光传感器。计算设备1350可使用传感器来确定计算设备在VR空间中的绝对位置和/或检测到的旋转,其然后可被用作VR空间的输入。例如,计算设备1350可以作为虚拟对象被并入到VR空间中,所述虚拟对象诸如控制器、激光指示器、键盘、武器等。计算设备/虚拟对象当被并入到VR空间中时由用户定位可允许用户定位计算设备以在VR空间中以某些方式查看虚拟对象。

在一些实施例中,包括在计算设备1350上或者连接到计算设备1350的一个或多个输入设备可被用作VR空间的输入。输入设备可包括但不限于触摸屏、键盘、一个或多个按钮、触控板、触摸板、指点设备、鼠标、轨迹球、操纵杆、相机、麦克风、具有输入功能性的耳机或无线耳机、游戏控制器或其它可连接的输入设备。当计算设备被并入到VR空间中时用户与包括在计算设备1350上的输入设备交互可导致在VR空间中发生特定动作。

在一些实施例中,计算设备1350上包括的一个或多个输出设备可以向VR空间中的VR头戴式设备1390的用户提供输出和/或反馈。输出和反馈可以是视觉、触觉或者音频。输出和/或反馈可以包括但不限于渲染VR空间,或者虚拟环境、振动、一个或多个灯或闪光灯的打开和关闭或闪烁和/或闪光、发出警报声、播放铃声、播放歌曲以及播放音频文件。输出设备可包括但不限于振动马达、振动线圈、压电设备、静电设备、发光二极管(LED)、闪光灯和扬声器。

在一些实施例中,计算设备1350可以被放置在VR头戴式设备1390内以创建VR系统。VR头戴式设备1390可以包括一个或多个定位元件,其允许将诸如智能电话1382的计算设备1350放置在VR头戴式设备1390内的适当位置。在这样的实施例中,智能电话1382的显示器可以渲染代表VR空间或虚拟环境的立体图像。

在一些实施例中,计算设备1350可以作为计算机产生的3D环境中的另一对象出现。通过用户与计算设备1350的交互(例如,旋转、摇动、触摸触摸屏、跨越触摸屏扫掠手指)可被解释为与VR空间中的对象的交互。仅作为一个示例,计算设备可以是激光指示器。在这样的示例中,计算设备1350作为计算机产生的3D环境中的虚拟激光指示器出现。当用户操纵计算设备1350时,VR空间中的用户看到激光指示器的移动。用户从在计算设备1350上或VR头戴式设备1390上的VR环境中与计算设备2050的交互接收反馈。

在一些实施例中,计算设备1350可以包括触摸屏。例如,用户可以特定方式与触摸屏交互,所述特定方式可按在VR空间中发生什么而模仿在触摸屏上发生什么。例如,用户可以使用挤压型运动来缩放显示在触摸屏上的内容。触摸屏上的这种挤压型运动可使VR空间中提供的信息被缩放。在另一示例中,可以将计算设备渲染为计算机产生的3D环境中的虚拟书籍。在VR空间中,可在VR空间中显示书籍的页面并且用户的手指跨越触摸屏的扫掠可被解释为翻动/翻转虚拟书籍的页面。随着每个页面被翻动/翻转,除了看到页面内容变化之外,还可以给用户提供音频反馈,诸如书籍中的页面的翻动的声音。

在一些实施例中,可在计算机产生的3D环境中渲染除了计算设备(例如,鼠标、键盘)之外的一个或多个输入设备。经渲染的输入设备(例如,经渲染的鼠标、经渲染的键盘)可在被渲染在VR空间中时用于控制VR空间中的对象。

计算设备1300旨在表示各种形式的数字计算机,诸如膝上型电脑、台式机、工作站、个人数字助理、服务器、刀片服务器、大型机和其它适当的计算机。计算设备1350旨在表示各种形式的移动设备,诸如个人数字助理、蜂窝电话、智能电话和其它类似的计算设备。这里示出的部件、其连接和关系及其功能仅意在为示例性的,而不意在限制所公开的实施例。

已经描述了许多实施例。然而,应理解的是,在不脱离本说明书的精神和范围的情况下,可以做出各种修改。

在下面的示例中概述进一步的实施方式:

示例1:一种方法,包括:接收由第一3D系统捕获的三维(3D)信息,3D信息包括对象的图像;确定对象的第一图像内容的表面法线;以及通过基于确定的表面法线而应用有关第一图像内容的第一阴影处理来生成修改的3D信息。

示例2:根据示例1所述的方法,其中,应用第一阴影处理包括确定表面法线与相机矢量之间的点积,以及基于所确定的点积来选择第一阴影处理。

示例3:根据示例1或2所述的方法,其中,应用第一阴影处理包括基于图像中背对的第一图像内容来将第一图像内容淡化为黑色。

示例4:根据任一前述示例所述的方法,还包括识别图像中的至少一个中的孔,其中,生成修改的3D信息包括对孔应用第二阴影处理。

示例5:根据前述示例中的任一项所述的方法,其中,生成修改的3D信息还包括隐藏3D信息中的深度误差。

示例6:根据示例5所述的方法,其中,深度数据基于从场景返回的红外(IR)信号,并且其中,生成修改的3D信息包括应用与IR信号强度成比例的第二阴影处理。

示例7:根据前述示例中的任一项所述的方法,还包括在第二3D系统处立体地呈现修改的3D信息,其中,第一图像内容具有第一阴影处理。

示例8:根据示例7所述的方法,其中,立体地呈现修改的3D信息包括叠加地渲染图像。

示例9:根据前述示例中的任一项所述的方法,所述方法还包括使用深度数据识别图像中与满足标准的深度值相关联的第二图像内容,其中,生成修改的3D信息还包括对识别的第二图像内容应用第二阴影处理。

示例10:根据示例9所述的方法,其中,所述标准包括第二图像内容超出场景中的预定深度。

示例11:根据示例10所述的方法,其中,应用第二阴影处理包括致使第二图像内容被渲染为黑色。

示例12:根据示例11所述的方法,其中,使用预定深度并应用第二阴影处理包括致使图像的背景被渲染为黑色。

示例13:根据示例9到12中任一项所述的方法,其中,第二阴影处理取决于第二图像内容的深度值。

示例14:根据示例9到13中任一项所述的方法,其中,标准包括第二图像内容比场景中的预定深度更近。

示例15:根据前述示例中的任一项所述的方法,其中,对象的第一部分在3D信息的深度数据中的深度值比对象的第二部分的深度值大,并且其中,生成修改的3D信息还包括对图像的部分应用第二阴影处理,对应于第二部分的第二图像内容位于所述图像的部分处。

示例16:根据示例15所述的方法,其中,应用第二阴影处理包括基于显示器的用于呈现图像的部分来选择图像的部分。

示例17:根据示例16所述的方法,其中,对象包括人,对象的第一部分包括人的面部,对象的第二部分包括人的躯干,而显示器的部分包括显示器的底部。

示例18:根据前述示例的任一项所述的方法,还包括将修改的3D信息提供给第二3D系统。

示例19:一种系统,包括:相机;深度传感器;以及三维(3D)内容模块,所述三维内容模块具有实行存储在存储器中的指令的处理器,所述存储器中存储有包括场景的图像和深度数据的3D信息,所述图像包括对象,所述指令致使处理器确定对象的第一图像内容的表面法线,并且通过基于确定的表面法线来对第一图像内容应用第一阴影处理,生成修改的3D信息。

示例20:根据示例19所述的系统,其中,指令还致使处理器使用深度数据将第二图像内容识别为与满足标准的深度值相关联,并且对识别的第二图像内容应用第二阴影处理以生成修改的3D信息。

示例21:根据示例19或20所述的系统,其中,对象的第一部分的深度值比所述对象的第二部分的深度值大,并且其中,生成修改的3D信息还包括对图像的部分应用第二阴影处理,对应于第二部分的第二图像内容位于所述部分处。

示例22:一种方法,包括:接收由第一3D系统捕获的三维(3D)信息,所述3D信息包括对象的图像和关于对象的深度数据,其中,对象的第一部分的深度值比对象的第二部分的深度值小;以及通过对图像的部分应用第一阴影处理来生成修改的3D信息,对应于第一部分的第一图像内容位于所述部分处。

示例23:根据示例22所述的方法,其中,图像包括场景中的对象,并且其中,生成修改的3D信息还包括确定对象的第二图像内容的表面法线,以及基于确定的表面法线来对第二图像内容应用第二阴影处理。

示例24:根据示例23所述的方法,其中,应用第二阴影处理包括确定表面法线与相机矢量之间的点积,以及基于所确定的点积来选择第二阴影处理。

示例25:根据示例23或24所述的方法,其中,应用第二阴影处理包括基于图像中背对的第二图像内容而将第二图像内容淡化为黑色。

示例26:根据示例22到25中任一项所述的方法,还包括识别所述图像中的至少一个中的孔,其中,生成修改的3D信息包括对孔应用第二阴影处理。

示例27:根据示例22到26中任一项所述的方法,其中,生成修改的3D信息还包括隐藏3D信息中的深度误差。

示例28:根据示例27所述的方法,其中,深度数据基于从场景返回的红外(IR)信号,并且其中,生成修改的3D信息包括应用与IR信号强度成比例的第二阴影处理。

示例29:根据示例22到28中任一项所述的方法,还包括在第二3D系统处立体地呈现修改的3D信息,其中,第一图像内容具有第一阴影处理。

示例30:根据示例29所述的方法,其中,立体地呈现修改的3D信息包括叠加地渲染图像。

示例31:根据示例22到30中任一项所述的方法,还包括:使用深度数据将第二图像内容识别为与满足标准的深度值相关联,并且在生成修改的3D信息中对识别的第二图像内容应用第二阴影处理生成修改的3D信息。

示例32:根据示例31所述的方法,其中,标准包括第一图像内容超出场景中的预定深度。

示例33:根据示例32所述的方法,其中,应用第一阴影处理包括致使第一图像内容被渲染为黑色。

示例34:根据示例33所述的方法,其中,使用预定深度并应用第一阴影处理包括致使图像的背景被渲染为黑色。

示例35:根据示例31到34中任一项所述的方法,其中,第一阴影处理取决于第一图像内容的深度值。

示例36:根据示例31到35中任一项所述的方法,其中,标准包括第一图像内容比场景中的预定深度更近。

示例37:根据示例22到36中任一项所述的方法,还包括将修改的3D信息提供给第二3D系统。

示例38:一种系统,系统包括:相机;深度传感器;以及三维(3D)内容模块,所述三维内容模块具有实行存储在存储器中的指令的处理器,所述存储器中存储有包括场景的图像和深度数据的3D信息,所述图像包括对象,其中,对象的第一部分的深度值比对象的第二部分的深度值大,所述指令致使处理器通过对图像的部分应用第一阴影处理以生成修改的3D信息,对应于第一部分的第一图像内容位于所述部分处。

示例39:根据示例38所述的系统,其中,指令还致使处理器确定对象的第二图像内容的表面法线,并且其中,生成修改的3D信息包括基于确定的表面法线来对第二图像内容应用第二阴影处理。

示例40:根据示例38或39所述的系统,指令致使所述处理器使用深度数据将第二图像内容识别为与满足标准的深度值相关联,并且在生成修改的3D信息中对识别的第二图像内容应用第二阴影处理。

29页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:用于合并牙印模的三维模型的技术

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!