人工智能
In-Paint3D:使用无光照扩散模型进行图像生成
深度生成式AI模型的兴起极大地加速了人工智能的发展,在自然语言生成、3D生成、图像生成和语音合成方面展现出卓越能力。3D生成模型已经改变了众多行业和应用,彻底革新了当前的3D生产格局。然而,许多当前的深度生成模型面临一个共同的障碍:复杂的布线以及带有光照纹理的生成网格通常与传统渲染管线(如PBR,基于物理的渲染)不兼容。基于扩散的模型能够生成不带光照纹理的3D资产,在生成多样化3D资产方面具有卓越能力,从而增强了电影制作、游戏和增强/虚拟现实等行业中现有的3D框架。 在本文中,我们将讨论Paint3D,这是一种新颖的由粗到细的框架,能够根据视觉或文本输入条件,为无纹理的3D网格生成多样化、高分辨率的2K UV纹理贴图。Paint3D解决的关键挑战是生成不嵌入光照信息的高质量纹理,允许用户在现代图形管线中重新编辑或重新打光。为了解决这个问题,Paint3D框架采用预训练的2D扩散模型来执行多视图纹理融合并生成视图条件图像,初步产生一个粗糙的纹理贴图。然而,由于2D模型无法完全禁用光照效果或完整表示3D形状,纹理贴图可能会出现光照伪影和不完整的区域。 在本文中,我们将深入探讨Paint3D框架,研究其工作原理和架构,并将其与最先进的深度生成框架进行比较。那么,让我们开始吧。
Paint3D:简介
深度生成式AI模型在自然语言生成、3D生成和图像合成方面展现出卓越能力,并已在现实应用中实施,彻底革新了3D生成行业。然而,尽管其能力非凡,现代深度生成式AI框架常常产生具有复杂布线和混乱光照纹理的网格,这些网格与包括基于物理的渲染(PBR)在内的传统渲染管线不兼容。同样,纹理合成技术也迅速发展,特别是随着2D扩散模型的使用。这些模型有效地利用预训练的深度到图像扩散模型和文本条件来生成高质量纹理。然而,一个重大挑战依然存在:预打光纹理可能对最终的3D环境渲染产生不利影响,在常见工作流程中调整灯光时会引入光照错误,如下图所示。 

方法与架构
Paint3D框架逐步生成和细化纹理贴图,以使用图像和提示等条件输入为3D模型生成多样化和高质量的纹理,如下图所示。 
阶段一:渐进式粗糙纹理生成
在初始的粗糙纹理生成阶段,Paint3D采用预训练的2D图像扩散模型来采样多视图图像,然后将其反向投影到网格表面以创建初始纹理贴图。此阶段首先从不同相机视图生成深度图。模型使用深度条件从扩散模型中采样图像,然后将其反向投影到3D网格表面。这种交替渲染、采样和反向投影的方法增强了纹理网格的一致性,并有助于逐步生成纹理贴图。 该过程从3D网格的可见区域开始,专注于从第一个相机视图生成纹理,通过将3D网格渲染为深度图。然后根据外观和深度条件采样纹理图像,并将其反向投影到网格上。此方法对后续视点重复进行,结合先前的纹理来渲染不仅深度图像,还有带有未着色蒙版的部分彩色RGB图像。模型使用深度感知图像修复编码器来填充未着色区域,通过将修复后的图像反向投影到3D网格上来生成完整的粗糙纹理贴图。 对于更复杂的场景或对象,模型使用多个视图。最初,它从对称视点捕获两个深度图,并将其组合成一个深度网格,以替代用于多视图深度感知纹理采样的单个深度图像。
阶段二:UV空间中的纹理细化
尽管生成了逻辑上合理的粗糙纹理贴图,但仍会出现诸如渲染过程导致的纹理空洞以及2D图像扩散模型产生的光照阴影等挑战。为了解决这些问题,Paint3D基于粗糙纹理贴图在UV空间执行扩散过程,以增强视觉吸引力并解决问题。 然而,在UV空间中细化纹理贴图可能会由于连续纹理被分割成单独的片段而引入不连续性。为了缓解这个问题,Paint3D通过使用纹理片段的邻接信息来细化纹理贴图。在UV空间中,位置图表示纹理片段的3D邻接信息,将每个非背景元素视为一个3D点坐标。模型使用一个额外的位置图编码器,类似于ControlNet,以在扩散过程中整合这种邻接信息。 该模型同时使用条件编码器的位置和其他编码器来执行UV空间中的细化任务,提供两种功能:UVHD(UV高清晰度)和UV修复。UVHD使用图像增强编码器和带有扩散模型的位置编码器来增强视觉吸引力和美感。UV修复则填充纹理空洞,避免渲染产生的自遮挡问题。细化阶段从UV修复开始,然后是UVHD,以产生最终的细化纹理贴图。 通过整合这些细化方法,Paint3D框架生成了完整、多样化、高分辨率且无光照的UV纹理贴图,使其成为3D对象纹理化的强大解决方案。
Paint3D:实验与结果
Paint3D模型利用Stable Diffusion的text2image模型来辅助纹理生成任务,而图像编码器组件则处理图像条件。为了增强其对图像修复、深度处理和高清晰度图像等条件任务的控制,Paint3D框架采用了ControlNet领域编码器。该模型在PyTorch框架上实现,渲染和纹理投影在Kaolin上执行。
文本到纹理的比较
为了评估Paint3D的性能,我们首先分析其在文本提示条件下的纹理生成,并将其与最先进的框架(如Text2Tex、TEXTure和LatentPaint)进行比较。如下图所示,Paint3D框架不仅在生成高质量纹理细节方面表现出色,还能有效合成无光照的纹理贴图。 通过利用Stable Diffusion和ControlNet编码器的强大功能,Paint3D提供了卓越的纹理质量和多功能性。比较结果突显了Paint3D生成无嵌入光照的细节丰富、高分辨率纹理的能力,使其成为3D纹理化任务的领先解决方案。 

图像到纹理的比较
为了评估Paint3D使用视觉提示的生成能力,我们使用TEXTure模型作为基线。如前所述,Paint3D模型采用了来自Stable Diffusion的text2image模型的图像编码器。如下图所示,Paint3D框架能够出色地合成精美的纹理,并且仍然能够保持相对于图像条件的高保真度。 

最终思考
在本文中,我们讨论了Paint3D,这是一种由粗到细的新颖框架,能够根据视觉或文本输入条件,为无纹理的3D网格生成无光照、多样化且高分辨率的2K UV纹理贴图。Paint3D框架的主要亮点在于,它能够生成语义一致的无光照高分辨率2K UV纹理,而无需依赖图像或文本输入条件。得益于其由粗到细的方法,Paint3D框架能够生成无光照、多样化且高分辨率的纹理贴图,并且比当前最先进的框架提供更好的性能。












