假设已经有一个合适的体素条件神经渲染模型,它能够表示真实的照片世界。这时仍然需要一种方法来训练它而不需要任何ground truth图像。对抗训练是一个不错的选择,它在小规模、无条件的神经渲染任务中取得了一定的成功。然而,对于GANcraft来说,这个问题更具挑战性。与真实世界相比,《我的世界》中的方块世界通常具有完全不同的标签分布。例如,有些场景完全被雪、沙或水覆盖;在一个小区域内,也有跨越多个生物群落的场景。此外,当从神经渲染模型中随机抽取视图时,不可能将采样的视角分布与网络照片的分布相匹配。如第一行所示,由于任务的复杂性,使用网络照片进行对抗性训练会导致不真实的结果。而生成和使用伪ground truth进行训练正是本文工作的主要贡献之一,它显著提高了生成结果(第二行)。生成伪ground truth 伪ground truth是使用预训练的SPADE模型从分割掩模(mask)生成的照片级真实感图像。当分割掩模从块世界采样时,伪ground truth与从相同视图生成的图像共享相同的标签和视角姿势。这不仅减少了标签和视角分布的不匹配,而且允许研究者使用更强的损失,例如感知和L2损失,来进行更快、更稳定的训练。混合体素条件(Voxel-conditional)神经渲染在GANcraft中,研究者使用三维渲染器和二维图像空间渲染器的组合来表示照片级真实感场景。研究者首先定义了一个以体素为边界的神经辐射场:给定一个方块世界,将一个可学习的特征向量分配给块的每个角,并使用三线性插值来定义体素内任意位置的位置代码。然后可以使用MLP隐式地定义辐射场,MLP将位置代码、语义标签和共享样式代码作为输入,并生成点特征(类似于辐射度)及其体积密度。只要再给定📷视角参数,我们就能对辐射场进行渲染得到二维特征图,并通过CNN将其转换为图像。下图展示了完整的GANcraft 架构:上面这种两级结构在减少计算量和内存占用的同时显著提高了图像质量,因为辐射场可以用更简单的MLP建模,这是基于隐式体积方法的计算瓶颈。上面提出的架构能够处理非常大的世界,在本文的实验中,研究人员使用了512×512×256大小的体素网格,相当于现实世界中的65英亩或32个足球场。神经天空穹顶天空是照片真实感不可或缺的重要组成部分,然而以往基于体素的神经渲染方法无法模拟无限远处的天空。在GANcraft中,研究人员使用一个额外的MLP来模拟天空。MLP将视角光线方向转换为与辐射场中的点特征具有相同维数的特征向量。此特征向量用作光线上完全不透明的最终样本,并根据光线的剩余透射率混合到像素特征中。如何生成具有多样化外观的图像?在训练过程中,研究者使用拟真图像作为风格图像,这有助于解释由于重建损失而产生的图像与其对应的伪ground truth 之间的不一致性。在评估过程中,可以通过为GANcraft提供不同样式的图像来控制输出样式。3