免费FPS:AI如何帮助改善游戏图形





近年来,人工智能变得越来越流行。随便问一下,Siri就会告诉您昨晚错过的足球比赛的结果。Spotify的建议将告诉您要添加到音乐库中的内容,即使您不知道,Amazon也会尝试预测接下来要购买的产品。



他也没有被游戏业所忽视。当游戏环境正在比较使用和不使用DLSS技术的Death Stranding PC上发布的图形时,几天前就知道NVIDIA Ampere处理器将使用DLSS 3.0。但是,它将与任何带有TAA(临时抗锯齿)和Game Ready驱动程序的游戏一起使用。这意味着开发人员将需要为他们的游戏微调技术-但是,此过程将比现在容易得多。



在本文中,我们将介绍NVIDIA如何利用机器学习来改善我们的游戏体验。



什么是DLSS?



现代游戏中图形的质量仅在提高,并且随之而来的操作的计算复杂性也在增长。我们将其归功于光线追踪,它可以实时模拟真实的照明,从而使预先烘焙的反射成为过去的遗物。光线跟踪的计算复杂性是由于现代游戏的分辨率超过了很好的旧1080p的事实所致。因此,需要在渲染期间加快计算速度。



深度学习超级采样(DLSS)是一项NVIDIA技术,它使用深度机器学习来提高图形密集型游戏的帧速率。使用DLSS,游戏玩家可以使用更高的设置和分辨率,而无需担心fps稳定性。



尤其是,DLSS可以完成超分辨率的任务。有了它,分辨率为1080p的图像可以提升到4K,而质量损失最小。这消除了以4K玩游戏的需要(从而可能会使您的PC融化)。分辨率仍将是1080p,允许更高的帧速率,但是通过DLSS升频,您几乎不会注意到与4K的区别。



图片

DLSS 2.0架构



实质上,DLSS是在NVIDIA超级计算机上训练的神经网络。将该神经网络的输出与16K参考图像进行比较,它们之间的误差通过反馈回路返回到网络。为了避免速度问题,DLSS使用Tensor Core,它们是RTX 2000处理器(以及将来的RTX 3000)的骨干。这可以显着加快张量操作并提高AI培训和与高性能计算相关的任务的效率。



图片



DLSS演变:从1.0到2.0



DLSS 1.0分别针对每个游戏进行了培训,因此花了很长时间研究。它还不支持4倍上采样(例如从1080p到4K),并且在图像质量方面存在许多其他缺陷,这些缺陷不值得提高帧速率。



DLSS 2.0是一种更通用的算法,没有训练和上采样限制,并且由于使用了张量核心而具有较低的输出延迟:在RTX 2080ti上,其4K时约为1.5毫秒-在某些情况下,它提供了比原始结果更好的结果图片。DLSS图像最终为1080p









在DLSS 1.0中,您最大可以将720p放大到1080p,而DLSS 2.0甚至可以将540p放大到1080p。如您在示例中所见,540p处的图像看起来完全被冲洗掉了。同时,事实证明,使用DLSS 2.0的结果要好于使用DLSS 1.0的结果,甚至比原始图片还要好。也就是说,即使DLSS 1.0需要重新调整较小的分辨率差异,但DLSS 2.0仍比DLSS 1.0更有效地处理像素填充。



DLSS 2.0能够以540p的分辨率放大图像的能力,再加上该方法本身的低等待时间,使其性能比以前的版本有了显着提高。



图片

使用和不使用DLSS 2.0的渲染时间(以毫秒为单位)





了解有关DLSS如何工作的更多信息



在游戏(例如,三角形)中渲染场景几何时,使用的像素数(或采样率-子像素蒙版)决定了图像的外观。



图片



使用4x4采样网格渲染三角形时,我们可以看到结果很差。



图片



通过将采样网格扩大4倍-达到8x8-图像看起来更像预期的三角形。这是DLSS的本质:将低分辨率图像转换为较高图像。



图片

DLSS的本质



因此,以与低质量图像相同的渲染成本,您可以获得更高分辨率的图像。



图片

DLSS的目的



实际上解决了并非新的超分辨率问题。



让我们快速看一下AI辅助的分辨率增强技术是如何发展的。



单图像超分辨率



这种技术允许使用内插技术(例如双线性,双三次和Lanczos滤波器)从较低的图像中获取高分辨率图像。您也可以在深度神经网络的帮助下实现它,但随后会出现从训练数据中获得的新像素失真的问题。这使图像看起来可信,但与原始图像不太相似。该方法产生的图像过于平滑,不够细腻,并且时间上不稳定,从而导致帧不一致和闪烁。



图片

单图像超分辨率



让我们将这些单图像超分辨率技术的某些结果与DLSS 2.0提供的功能进行比较。目标分辨率-1080p









显然,DLSS 2.0优于双三次插值和ESRGAN(一种使用生成对抗网络实现超分辨率的神经网络体系结构)。结果,在DLSS 2.0的情况下,蕨类植物看起来比原始图像中的更加精细。



多帧超分辨率



此方法使用多个低分辨率图像来生成高分辨率图像。与以前的方法相比,它有助于更​​好地恢复细节。它主要用于视频和连拍摄影,因此不使用特定于渲染的信息。其使用的一个示例是使用光流代替几何运动矢量进行帧对齐。在这种情况下,计算更便宜,并且结果更准确。这种方法似乎比前一种方法更有希望,并将我们带入了下一种技术。



时空超级采样



此方法使用多个帧对图像进行超级采样。







我们有当前框架。假设上一个看起来像。通过使用较低的采样率,我们可以增加重建图像所需的样本总数。



图片

时空超级采样直方图



问题是在游戏中,所有事物都在不断运动。因此,为了校正帧历史,例如根据邻居钳位原理,迫使这种超级采样方法执行启发式搜索。这些试探法会导致模糊,时间不稳定,莫尔条纹,滞后和重影。邻域钳制的不利影响邻域钳制图像中的临时闪烁和波纹















DLSS 2.0: Deep Learning-based multi-frame reconstruction



DLSS神经网络从成千上万的训练图像中学习,这些训练图像旨在执行比试探法所能提供的更好的重建,从而消除了它们的影响。使用多个帧中的数据可以得到更好的结果。



图片



首先,在引擎中实现DLSS时,必须以低分辨率渲染场景:所有场景的几何形状,动态光照,屏幕空间效果和光线跟踪。之后,DLSS可以在通常出现抗锯齿的阶段应用-毕竟,该技术仅使用超级采样即可执行完全相同的功能。然后对图像进行后处理,包括运动模糊,光晕,色差,色调映射和其他效果。







DLSS不仅是图像处理算法。它通常与渲染配合使用,因此也需要重新考虑其过程。但是,在DLSS 2.0的情况下,实现这些更改并不像以前那样困难。



性能测试



图片



最新的标题Remedy Control支持射线追踪和DLSS。如上图所示,RTX 2060通过DLSS将性能从8fps提高到了36.8fps,这极大地提高了项目的可玩性。该结果甚至比不带DLSS的RTX 2080ti更好,这进一步证明了该技术的有效性。



Digital Foundry在视频中使用DLSS 1.9和2.0比较了图像质量





左-使用DLSS 1.9控制,右-使用DLSS 2.0控制。在RTX 2060上以1080p捕获的图像,然后放大到4K。



在上面的比较中,我们可以看到在DLSS 1.9的情况下DLSS 2.0如何渲染扭曲的发束。



结论



DLSS仅适用于RTX 2000和基于Turing的GPU(以及即将推出的基于Ampere的RTX 3000 GPU),并且目前仅支持少数游戏。更少的标题支持DLSS 2.0,但是细节水平甚至可以超过原始图像,而帧速率仍然很高。对于NVIDIA来说,这是一个非常酷的成就,而且该技术的前景肯定是美好的。



All Articles