用于在渲染图像时使用的可重照纹理的制作方法_2

文档序号:9547974阅读:来源:国知局
行定标,使得不同素材看起来使用相似的辐照度被照亮。以这一方 式,估计全局辐照度函数,全局辐照度函数描述与场景几何形状的网格的表面上的底纹分 布匹配的场景照度。这提供用于色彩估计和底纹估计提取的起始点,在色彩估计和底纹估 计提取期间确定色彩估计的每纹素的值以及底纹估计的每纹素的值。然后可以使用底纹估 计来使表面法线与全局辐照度函数拟合。存储表面法线的集合和色彩估计,并且可以随后 使用表面法线的集合和色彩估计以实现对场景的重照。在已经使用粗略色彩估计来估计全 局辐照度函数之后,可以丢弃粗略色彩估计,因为其不再被需要。这是因为并非细化粗略色 彩估计以确定每纹素的色彩估计值,全局辐照度函数和初始纹理用于确定每纹素的色彩估 计值。
[0031] 通过使用粗略色彩估计来确定全局辐照度函数,全局辐照度函数提供所捕获图像 的全局场景光照的低频指示,这在被应用于具有复杂纹理的场景时没有丢失普遍性。在本 文所描述的示例中,对全局辐照度函数进行恢复直到第二阶球面调和函数,这意味着每个 分段内的反照率的任何高频变化都不会使光照估计恶化。如以上所描述的,一旦已经估计 场景光照,则可以丢弃粗略反照率估计,并且可以使用光照估计根据初始纹理来确定全图 像分辨率色彩估计和表面法线的集合。这允许在色彩估计和表面法线中保持精确的表面细 节。场景的表面法线的集合可以被称为场景的"表面法线图"。
[0032] 图1示出作为场景的一部分的对象(例如人102)。图1中示出了 8个相机KM1 至1048,8个相机1〇1至104 8从相应相机视点捕获场景的不同视图。然而,用于捕获场景 的视图的系统不限于使用8个相机,并且在其它示例中可以使用不同数目的相机(例如少 于8个或者多于8个相机)来捕获场景的视图。在图1所示的示例中,场景在所有8个相 机104的视图中都包括在素色(例如单色)背景中的人102。相机104所捕获的图像可以 是视频序列帧,但是在其它示例中,相机捕获场景的视图以用于在单个时间点处渲染视图 时使用,即图像可能不是视频序列帧。在本示例中,参考公共坐标系对相机进行校准,并且 以同步的时序捕获由每个相机104捕获的视频帧。另外,其在所有相机具有相同的操作参 数(例如相同数目的像素、相同的格式化协议等)的情况下简化了图像处理系统的实现,使 得能够对表示场景的视图的图像数据进行组合而没有将由一个或多个相机捕获的数据转 换成不同格式的另外的步骤。8个相机104提供场景的8个不同的相机视点。然而,通过使 用FVVR,可以从渲染视点来渲染场景,渲染视点可能与任何相机视点不同。例如,图1示出 与所有8个相机视点均不同的渲染视点。如果相机同步,则可以通过所有相机来同时捕获 场景的每个视图。在其它示例中,可能使用非同步的相机,但是对场景的不同视图进行组合 变得更困难,因为时间和空间变为在对场景的视图进行组合时要考虑的变量。
[0033] 图4示出场景的从相机10尖的视点得到的第一视图402。场景包括在素色背景中 的人102。图4还示出场景的从相机104 2的视点得到的第二视图404。图4还示出场景的 从渲染视点得到的新视图406,该视图已经根据本文所描述的方法被渲染。可见,渲染视点 在相机1〇尖和104 2的相机视点之间。
[0034] 图2示出图像处理系统200 (例如在图像为视频序列帧的情况下的视频处理系 统),图像处理系统200包括处理块202和存储装置216。处理块202包括场景分析逻辑 204、粗略色彩估计逻辑206、比例因子确定逻辑208、全局辐照度确定逻辑210、纹理分离逻 辑212和表面法线确定逻辑214。可以用硬件或者软件或者硬件和软件的组合来在处理块 202上实现逻辑块204至214。例如,如果用硬件实现逻辑块,则可以将其形成为晶体管和 其它硬件部件的特定布置,该特定布置适合执行逻辑块的期望功能。相反,如果用软件实现 逻辑块,则其可以包括计算机指令的集合,计算机指令的集合可以存储在存储器中并且可 以向处理块202提供计算机指令的集合用于在其上的执行,其中处理块202可以是处理单 元,诸如中央处理单元(CPU)或者图形处理单元(GPU)。处理块202被配置成从相机104接 收表示场景的视图的数据。处理块202被配置成(例如使用逻辑块204至214)处理场景 的视图以确定可重照纹理的色彩分量A(X)和表面法线的集合η_( Χ),以用于在任意光照 条件下从渲染视点来渲染图像时使用。存储装置216可以被实现为用于存储可重照纹理的 色彩分量和表面法线的集合的存储器。
[0035] 参考图3a所示的流程图来描述图像处理系统200的操作。在本文详细描述的示 例中,图3a所示的方法步骤被离线执行,即在要从渲染视点渲染场景之前被执行。在其它 示例中,图3a所示的方法步骤可以在运行时间被执行,即在渲染场景时被执行,但是这需 要用于渲染的大量处理资源,而这些资源通常在移动设备上不可获得。图3所示的方法步 骤可以响应于通过相机104捕获场景的视图而被执行。如以下更详细地描述的,基于场景 的不同视图构造场景几何形状的模型(或者"代理"),并且形成能够被应用于该模型的可 重照纹理的色彩分量。然后,可以将场景的可重照纹理的色彩分量和表面法线的集合存储 在例如存储装置216中。随后,在渲染时间,可以从存储器取回可重照纹理的色彩分量和表 面法线的集合,并且可以从渲染视点来渲染场景。表面法线用于使用适合被渲染的场景的 光照条件来对纹理进行重照,这些光照条件可以不同于在通过相机104捕获图像时场景的 光照条件。所估计的表面法线补偿从MVS重构中被漏掉的高频几何形状。由于在本文详细 描述的示例中多数处理为前载(即在对场景渲染之前执行),所以减少了在渲染期间执行 的处理。可以在计算机中使用大量可用的资源(例如处理功率和存储器)来实现在对场景 渲染之前被执行以确定表示场景的可重照纹理的色彩分量和表面法线的离线步骤(即预 处理步骤)。完成预处理步骤可能需要花费大量时间,例如使得处理每个帧需要几十分钟 (例如20分钟)(包括MVS重构阶段)。可以在与执行预处理步骤的设备相同或者不同的 设备上来实现从渲染视点对场景的渲染。例如,可以向渲染设备(诸如用于在任意光照条 件下从任意渲染视点来渲染图像的移动设备)提供来自预处理步骤的输出(即可重照纹理 的色彩分量和表面法线的集合)。预处理步骤的输出可以用来渲染场景的多个图像,其中可 以从不同的渲染视点并且在不同的光照条件下来渲染每个图像。当图像为视频序列帧并且 视频被渲染时,可以实时地输出视频,其中每秒处理多个帧(例如20个帧)。可以限制渲染 设备的处理资源;当在处理功率和存储器容量可能严重受限的移动设备上实现渲染器时尤 其是这样。由于在预处理步骤中执行了大部分处理,所以减少了在渲染时执行的处理,这可 以允许实时地(例如每秒至少大约20帧)甚至在渲染设备(诸如可能具有有限的可用资 源的移动设备)上渲染和输出视频。
[0036] 在步骤S302,在处理块202处从相机104接收场景的视图。特别地,在场景分析 逻辑204处接收场景的视图。可以经由任何合适的链路(例如有线或者无线链路)从相机 104向处理块202提供表示场景的视图的数据。
[0037] 在步骤S304,场景分析逻辑204分析场景的视图以估计场景几何形状,例如从而 确定场景的模型。存在很多种构造场景几何形状的3D几何代理(即"模型")的方法(例 如多视图立体(MVS)),并且这些过程在现有技术中通常被称为"基于图像的建模"。特别地, 场景分析逻辑204可以被配置成执行MVS重构和纹理投影。作为示例,宽基线捕获系统的 使用有助于使用可视外壳(visual hull)产生到场景几何形状的粗略上界,其随后可以通 过对从表面细节提取的特征的位置进行三角测量来对粗略上界进行细化。
[0038] 在步骤S306,通过场景分析逻辑204将场景的来自不同相机视点的视图投影到场 景几何形状的模型上。现有技术中已知用于将视图投影到模型上的方法。应当理解,场景 的每个视图通常可以包括场景几何形状的模型的表面中视图可以投影到其上的部分而非 全部表面的数据。例如,人102的正面视图不可以在场景的模型中包括到人102的背面的 投影的任何数据。然而,优选地,场景模型的所有表面在相机104中的至少一个相机的视 图中,使得场景的来自不同相机104的视图的组合可以用于将视图投影到场景的整个模型 上。
[0039] 本文所描述的图像、模型和纹理各自可以用在空间上区分的单元X的阵列(例如 2D阵列)来表示,在空间上区分的单元X各自可以具有与其关联的一个或多个值。作为术 语,可以用不同的术语来指代这些在空间上区分的单元。也就是,意在被查看的图像(在显 示空间中)的在空间上区分的单元在本文中被称为"像素";纹理(在纹理空间中)的在空 间上区分的单元在本文中被称为"纹素";并且模型(在3D模型空间中)的在空间上区分的 单元在本文中被称为"碎片",其中每个碎片在场景几何形状的表面上的"样本位置"处。
[0040] 在步骤S308,通过场景分析逻辑204对被投影到模型上的场景的视图进行混合以 确定经混合的纹理(其可以被称为"初始纹理"或者参考纹理)。例如,对于模型的每个碎 片,例如基于相机是否能够直接查看模型的碎片,来自相机的碎片的视图是否被阻挡,和/ 或在碎片位置处、在相机视点与模型的表面法线之间的角度,根据相机能够在多大程度上 查看模型的该碎片来对每个相机分类。然后可以基于不同相机的分类对来自相机中的一个 或多个相机(例如具有模型片段的最高分类的那些相机)的视图进行混合,例如对于模型 的每个碎片位置,可以将来自一个或多个相机视点的投影值加在一起成为加权和,其中和 的权值基于相机的分类被确定。在一些示例中,对于模型的每个碎片,选择来自具有最佳碎 片分类的相机的投影值,并且然后使用模型的碎片的这些值形成经混合的纹理。经混合的 纹理可以是每纹素的值的图,该图可以被应用于几何形状模型以用于在从渲染视点来渲染 场景时使用。经混合的纹理可以包括3个色彩分量,诸如红色、绿色和蓝色(RGB)分量,这 些色彩分量可以被独立处理。也就是,当已经确定模型和经混合的纹理时,可以通过确定具 有被应用于其的经混合的纹理的模型如何从渲染视点出现来确定场景的来自渲染视点的 视图。执行方法的以下步骤以改善场景的渲染视图的似真性,特别是在任意光照条件下对 场景进行重照的情况下。
[0041] 在本文详细描述的示例中,使用经混合的纹理。经混合的纹理仅是可以使用的初 始纹理的一个示例。概括而言,可以按照与在本文详细描述的示例中使用经混合的纹理相 同的方式来使用从场景的来自相机视点的视图(通过混合等)取得的任何初始纹理。
[0042] 场景中的不同素材与光不同地交互。因此,对场景的重照会影响在场景中不同地 存在的不同素材。在步骤S310,场景分析逻辑204将初始纹理分段成多个素材,包括M个 素材。将初始(例如经混合的)纹理分段成素材可以自动地、手动地或者自动组合手动地 被执行。例如,可以使用考虑色彩或者亮度的相似度的基于图像分割的技术来将纹理分段 成具有相似外观的区域。将场景分段成素材可以使用适合图像分段领域的技术以大量不同 的方式来执行。例如,分段应当在被嵌入在3D空间中的2D流形的表面上有效。换言之,优 选地,对于图像分段有效的技术应当被适配成考虑当被应用于纹理时流形的弯曲的几何形
当前第2页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1