组里面 Jingsen 学长的工作,主要思路是通过Gbuffer的辅助信息训练神经网络让其更好地进行super resolution。其中一步是把最后的结果拆成两部分,一部分是BRDF,另一部分是光照相关项。但实际上Gbuffer由于信息很少而且只能做到这么多,能猜测道的光照相关项实际上应该是输入方向无关的。总体上讲我看了论文的大概,就是说还是不太清楚为什么这么设计,还是说这就是“just work”。

image-20240924190211805

我们的方法实现了高保真的4 × 4超分辨率图像,在性能和质量上明显优于现有方法。我们的方法甚至在极具挑战性的8 × 8超分辨率任务(现有的方法基本上都失败了)(右下)中取得了成功,由于我们的BRDF解调和多分辨率融合设计来保留高频细节。放大查看细节

ABSTRACTION

随着对高分辨率、高刷新率和高真实感需求的增加,实时渲染的工作量急剧增加,使大多数显卡不堪重负。为了缓解这个问题,一个最流行的解决方案是以低分辨率渲染图像以减少渲染开销,然后设法准确地将低分辨率渲染图像上采样到目标分辨率,即超分辨率技术。大多数现有方法侧重于利用低分辨率输入的信息,例如历史框架。在这些LR输入中缺少高频细节使得他们很难在高分辨率预测中恢复精细细节。在本文中,我们提出了一种高效的超分辨率方法,该方法利用低成本的高分辨率辅助g缓冲作为额外输入来预测高质量的上采样重建。以LR图像和HR g缓冲作为输入,网络需要在多分辨率水平上对齐和融合特征。

我们引入了一个高效的H-Net架构来解决这个问题,并在不明显的质量下降的情况下显著降低了渲染开销。实验表明,我们的方法能够在4K分辨率下产生时间一致的4 × 4重建,甚至具有挑战性的8 × 8上采样情况,具有实时性能,与现有作品相比,质量大大提高,性能显著提升。项目页面:https://isaac-paradox.github.io/FuseSR/

1 INTRODUCTION

……

最广泛采用和成功的方法是超分辨率(SR)方法,包括DLSS [NVIDIA 2018], FSR [AMD 2021], XeSS [Intel 2022]等。用户可以降低渲染图像的分辨率以减少渲染时间,并对低分辨率(LR)渲染图像进行上采样以获得最终的高分辨率(HR)图像。然而,他们主要考虑小于2 × 2的上采样因子,这限制了更高的性能改进。NSRR [Xiao et al . 2020]追求的是一项更有前途的任务,即利用历史帧实时生成高质量的4 × 4上采样重建,但它在恢复准确的高频纹理细节方面存在困难,并且无法在高于1080p的分辨率下支持实时体验。

NSRR的结果表明,高分辨率SR是一项艰巨的挑战。一方面,许多高保真细节甚至在历史框架中也丢失了。理论上,4×4 SR重建至少需要16帧历史帧才能完全覆盖HR目标的每个像素,如此长的时间窗口使得历史重用方案在动态场景中基本不可行的。一种直观的解决方案是利用包含全分辨率信息的HR - g缓冲区,其渲染成本可以忽略不计,仅次线性增加。另一方面,网络性能也是实时SR的关键问题,神经网络的推理时间随着输入分辨率的增加而迅速增加。因此,提高特征分辨率和降低网络带宽的需求是一对难以解决的矛盾,减缓了高分辨率SR的发展。

在本文中,我们提出了一种高效的实时超分辨率技术FuseSR,它能够提供高保真的4 × 4甚至8 × 8上采样重建,与现有作品相比,质量和性能都有显著提高。除了使用历史信息外,我们还利用HR G-buffer为HR目标提供逐像素线索。我们进一步将遮阳结果分解为预集成的BRDF和解调的辐照度分量,并训练网络来预测HR辐照度,从而更好地平衡质量和效率。最重要的是,我们提出了H-Net架构来解决HR特征和LR带宽之间的矛盾。在H-Net中,我们结合了像素变换和解变换[Gharbi et al . 2016;Shi等人(2016)将HR特征与LR输入进行无损对齐,并将特征融合到LR网络骨干中,同时保留高保真的HR细节。我们的贡献可以总结如下:

  1. 我们的方法成功地利用高分辨率g缓冲来解决实时超分辨率问题,在时间和质量上都明显优于现有方法。我们是第一个在具有挑战性的8 × 8超分辨率任务中产生高保真结果的方法。
  2. 我们提出了H-Net,一种高效的网络设计,可以与低分辨率网络骨干网进行无损的多分辨率特征对齐和融合。我们在网络设计中创新性地采用像素变换和解变换对,将多分辨率特征对齐融合到同一屏幕空间中。
  3. 我们引入了预集成BRDF解调来解决超分辨率问题,提高了细节保存并减少了g缓冲的冗余。

@SankHyan24: 这里的H-Net因该就是对场景特征的学习部分了。之所以叫H-net,是因为像“|-|”,前部分和后部分的大小对应图片的大小,很大,所以是H的两个|,中间的-是计算的主要部分,主要学习Gbuffer和渲染结果之间的关联。他这么做是想减少这步需要的时间。要想继续减少时间,一个思路就是在此之上继续缩小这个H中的-的大小,让他更细更小。