在很多人看来,真实感前向渲染、像素级别的逆向渲染和生成式图像合成在CG和视觉领域中是三个独立的子领域。但最近的研究表明,使用扩散模型可以在这三个领域之间建立联系,更准确提取每个像素的固有属性(如基础色、粗糙度、金属度)。

在2024年ACM SIGGRAPH会议上的一篇技术论文,就聚焦在了室内场景的图像处理上,提出了一种统一的基于扩散模型的框架,能够实现真实的图像分析(固有通道估计、描述几何、材料和光照信息)和合成(根据固有通道进行真实渲染)。

打开网易新闻 查看精彩图片

在统一的条件扩散框架中展示了图像分解(RGB→X)和图像合成(X→RGB)的模型。

团队除了改进原有的RGB-X模型外,还引入了第一个X-RGB扩散模型,能够从完整的或部分的固有通道中合成立体图像。

RGB↔X

RGB↔X是一个基于扩散模型的统一框架,能够实现两个主要功能:

1.图像分析(RGB-X):

从一张普通的RGB图像中提取出详细的固有属性,如颜色(基础色)、表面光滑度(粗糙度)、金属感(金属度)和光照条件,可用于3D建模、材质编辑、光照调整等。

2.图像合成(X-RGB):

从提取出的固有属性(完整的或部分的)中合成逼真立体图像。结合现有的数据集,并添加了一个新的高质量室内场景数据,以实现高真实感。

为什么使用扩散模型进行固有分解?

固有分解(Intrinsic Decomposition)是指将一张图像分解成其基本的固有属性,如基础色(albedo)、光照(shading)、表面粗糙度(roughness)等。但在实际操作中,固有分解会面临如欠约束性、光照和材料之间的模糊性等本质上的困难。

打开网易新闻 查看精彩图片

木质地面上有强烈的反射和阴影。以前基于非扩散模型的方法无法正确恢复基础色通道。

而扩散模型(Diffusion Models)在固有分解中的优势如下:

1.更好的泛化能力:扩散模型可以从大量数据中学习复杂的分布,从而更好地处理光照和材质之间的模糊性。

2.更高的精度:早期研究表明,基于扩散模型的方法可以更准确地估计固有属性。如在木质地板上有强烈反光和阴影的情况下,扩散模型能够更准确地恢复基础色通道。

为什么使用扩散模型进行真实渲染?

传统生成模型倾向于使用简单且预设的概率分布来生成数据,虽然生成图像相对容易,但很难精确控制生成结果;传统的渲染方法虽然非常精确,但前提是需要完整详尽的定义整个场景。

扩散模型探索了一个介于传统生成模型和传统渲染之间的中间地带。 优势就在于,拥有可控性和一致性,可以指定一些特定的视觉属性,同时允许模型创造性地添补剩余的部分,确保最终输出既符合预期又自然流畅。

模型中使用的固有通道和数据集

在RGB→X和X→RGB模型中,开发团队使用了以下几种固有通道:

法线向量n ∈ R××3:在相机空间中指定几何信息。

基础色 a ∈ R××3:常被称为基色,指定电介质不透明表面的漫反射基础色和金属表面的镜面基础色。

粗糙度 r ∈ R×:通常为GGX或Beckmann微面分布参数的平方根。高粗糙度表示更哑光的材料,低粗糙度表示更光滑的材料。

金属度 m ∈ R×:介于电介质和金属表面之间的线性插值权重。

漫反射辐照度 E ∈ R××3:作为光照表示,表示到达表面点的光量在上半球余弦加权积分后的结果。

数据集中的所有固有通道与对应的RGB图像具有相同的分辨率,并且由RGB→X模型在全分辨率下估计。

为了训练模型,需要一个包含所有需要信息(法线n、基础色a、粗糙度r、金属度m、漫反射辐照度E、对应的RGB图像I,以及描述图像的文本标题)的高质量大图像数据集。

为此,团队拼凑了一些包含部分信息的数据集,并构建了新的数据集来添补空白。为了进一步增强训练数据并帮助X→RGB模型生成逼真的图像,团队使用了两个自己的数据集:

  • Evermotion:这是一个合成数据集,生成方式与InteriorVerse类似,通过渲染艺术家创建的合成场景,沿预记录的摄像机路径随机放置摄像机,渲染了85个室内场景的17,000张图像。Evermotion的主要优势在于它提供了粗糙度r和金属度m,目前这是唯一的可靠来源。

  • 商业室内场景图像:使用了50,000张高质量的商业室内场景图像。图像来自照片或高质量渲染,使用RGB→X模型估计法线、基础色、粗糙度、金属度和漫反射辐照度。

通过使用这些固有通道和数据集,模型能够更准确地进行图像分解和合成,克服传统方法的局限性,提供更精确、可控和一致的生成结果。

RGB→X模型

基于一个预训练的文本到图像的扩散模型,用于从输入的RGB图像I中提取出图像的基本固有属性,输出包含前面提到的所有固有通道。

模型结构

像Stable Diffusion一样,RGB→X模型在一个潜在空间中运行,使用预训练的编码器E和解码器D。

在推理过程中,模型将输入图像I通过编码器E转换为潜在表示E(I),然后逐步去噪一个带有高斯噪声的潜在图像zₜₓ,最终生成目标潜在图像z₀ₓ,该图像编码了固有通道X。

图像和固有通道编码

由于模型在潜在空间运行,团队将输入图像编码为E(I),并将其与噪声潜在图像zₜₓ链接起来作为输入给模型。

多个输出通道的处理

团队使用各种数据集进行训练以增加多样性,但同时也带来了固有通道异质性问题。团队的解决方案是每次生成一个固有通道,并将输入文本提示用作“开关”来控制扩散模型的输出。

打开网易新闻 查看精彩图片

两个扩散模型的高层次概览

X→RGB模型

X→RGB模型可以从内在通道X合成逼真的RGB图像。与 RGB→X模型类似,从Stable Diffusion2.1开始微调一个扩散模型,通过最小化损失函数来训练模型。

为了解决不同数据集中的不同内在数据通道缺失问题,团队使用内在通道丢弃策略,通过条件通道丢弃联合训练条件和无条件扩散模型,以提高样本质量和实现使用任何子集条件的图像生成。

打开网易新闻 查看精彩图片

为了解决编辑详细法线时,使用高分辨率照明会造成控制照明变得复杂的问题。团队将高分辨率的照明图像缩小到一个更低的分辨率,为X→RGB提供粗略照明提示。

这样,模型仍然可以理解整体照明条件,又不会被高分辨率的细节所困扰。方便更容易地控制和调整照明,让其更加符合编辑后的法线。

打开网易新闻 查看精彩图片

为了支持局部编辑应用,团队还对X→RGB模型进行了微调。

引入了一个掩码图像,用于标记需要编辑的区域:通过将掩码图像和掩码通道添加到模型输入中,并将掩码下采样到潜在空间的分辨率,模型可以专注于图像的特定区域进行修改(例如修复图像中的损坏部分或修改某个局部的细节)。

如何工作?

RGB→X模型和X→RGB模型,分别负责从图像中提取固有属性(即分解),以及从固有属性重新生成图像。

  • RGB→X模型任务是从图像(RGB)中,分离出每个像素的固有属性(X)。

    • 模型通过分析输入的图像,学习并预测每个像素点的固有属性。

    • 用户可以通过输入简单的文字指令来指导模型应该生成哪些固有属性。

    • 模型具有较强的适应性和灵活性,可以利用不同类型的数据集进行训练。

  • X→RGB模型:任务是从给定的固有属性(X)中,重新生成一张完整的立体图像(RGB),能够根据不同的固有属性组合,创建出相应的视觉效果。

    • 模型可以根据提供的固有属性来生成图像。

    • 训练过程中,模型会随机地忽略一些固有属性(即通道),使得即使在缺少某些信息的情况下,模型也能生成合理的图像。

    • 可以利用不同类型的数据集进行训练,从而在不同的应用场景中表现良好。

结果

使用生成模型处理RGB→X和X→RGB问题时,输出不是固定的,而是从一个概率分布中随机抽取的。论文中展示了一个样本,以便能够清晰了解模型性能。

RGB→X模型结果

打开网易新闻 查看精彩图片

RGB→X 模型与先前方法的合成数据对比

打开网易新闻 查看精彩图片

RGB→X 模型与先前方法在真实数据上的对比
基础色:尽管模型在处理某些特定细节时仍有一些局限性,但在处理复杂光照和材质条件下的基础色估计(Albedo Estimation)方面具有显著优势,特别是在去除反射、高光、阴影和色偏,以及在平坦区域提供一致的颜色估计(Color Estimation)方面。漫反射辐照度(光照):模型在合成数据上产生的漫反射辐照度(Diffuse Irradiance Estimation)估计,即使在复杂的阴影团上。也与真实值非常接近。

金属度和粗糙度:与之前的方法相比,模型为给定输入图像生成的粗糙度和金属度更合理。

法线:模型在法线估计(Normal Estimation)方面表现优异,能够合理地估计高频几何结构,并在平坦表面上正确预测平坦法线。

定量比较:图像处理领域,特别是从RGB图像中估计物理属性方面表现优越,在所有通道上的PSNR(峰值信噪比)和LPIPS(感知路径长度)值最佳。

X→RGB模型结果

当输入通道(X)的数据分布与模型训练时所见的数据分布相似时,X→RGB模型能够生成与传统的Monte Carlo路径追踪方法非常接近的结果.

打开网易新闻 查看精彩图片

在一个合成的厨房场景上应用X→RGB模型

X→RGB模型在只给定部分外观属性(如光照或颜色)的情况下,仍能生成合理图像。此外,通过文本提示可以实现对生成过程的进一步控制。

效果如何?

打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片

概括总结下,这项新技术可以从普通照片中提取多种物理属性信息,并用这些信息生成逼真图像,显著提高图像处理的效率和质量。别说,还真有点期待了呢~

了解更多详情→https://zheng95z.github.io/publications/rgbx24

end

《英雄联盟:双城之战》的镜头构图和概念图

这3D角色做的太美了