0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用时空蓝色噪声纹理实时渲染一

星星科技指导员 来源:NVIDIA 作者:NVIDIA 2022-04-14 09:34 次阅读

蓝色噪波纹理可用于提供每像素随机值以在渲染中生成噪波图案。蓝色噪声纹理比随机数生成器或散列(两者都是白噪声)产生的噪声更难看到,也更容易去除。要使用蓝色噪波纹理,请在屏幕上平铺它,使用最近邻点采样读取纹理,并将其用作随机值。

在本文中,我们将时间轴添加到蓝色噪波纹理中,为每个帧提供高质量的空间蓝色噪波,并使每个像素随时间变为蓝色。与其他蓝色噪声动画方法相比,这提供了更好的收敛性和时间稳定性。我们还将向您展示如何制作非均匀的蓝色噪波纹理,以便进行重要采样。我们将在后续文章 使用时空蓝色噪声纹理实时渲染,第 2 部分 中进行更深入的技术探讨。

虽然 other methods 结合了蓝色噪声和更好的收敛性,但它们首先关注收敛性,其次关注蓝色噪声。我们的工作首先关注蓝色噪声,其次关注收敛,这有助于在采样数最低的情况下获得更好的渲染效果,而蓝色噪声的好处最大。

蓝色噪声纹理的一个显著限制是,它们在低采样数、低维算法中效果最好。对于高采样数或路径跟踪等算法中的高维,您可能希望切换到低差异序列以消除错误,而不是试图用蓝色噪声隐藏错误。

同样值得一提的是,在 TAA 下运动的像素失去了时间上的好处,我们的噪声就如同纯粹的空间蓝色噪声。然而,在一瞬间仍然是偶数的像素获得了时间稳定性和较低的误差,当它们再次运动时,这将由 TAA 携带。在这些情况下,我们的噪声并不比空间蓝色噪声差,因此应始终使用它,以在可用的情况下获得好处,否则不会更糟。

使用随机单次散射,其中自由飞行距离随时间使用一系列蓝色噪声遮罩进行采样。传统的 2D 蓝色噪声遮罩(最左侧)很容易在空间上进行过滤,但随着时间的推移,会显示出白噪声信号,使得基础信号难以在时间上进行过滤。

我们的时空蓝色噪声( STBN )遮罩(大图像右侧)在时间维度上还表现出蓝色噪声,导致信号更容易随时间过滤。在最右边,我们展示了主图像的两种裁剪,以及它们在空间( DFT ( XY ))和时间( DFT ( ZY ))上的相应离散傅里叶变换。 Z 轴是时间。大图像中的插图(右上角和右下角)显示了地面真相。

标量

标量时空蓝色噪波纹理存储每个像素的标量值,对于需要每个像素的随机标量值的渲染算法非常有用,例如随机透明度。通过 在 3D 中运行 void 和 cluster 算法 生成这些纹理,但修改能量函数。

计算两个像素之间的能量时,仅当两个像素来自同一纹理切片(具有相同的 z 值)或在不同时间点是相同的像素(具有相同的 xy 值)时,才返回能量值;否则,它返回零。结果是 N 纹理,在空间上是完全蓝色的,但每个像素在 z 轴(时间)上也是蓝色的。在这些纹理中,( x 、 y )平面是与屏幕像素相对应的空间维度, z 轴是时间维度。在每帧 z 尺寸上前进一步。

图 2 显示了时空蓝色噪波、一组独立的 2D 蓝色噪波纹理和 3D 蓝色噪波的示例纹理以及 XY 和 XZ DFT 。只有我们的噪声在空间( XY )上是蓝色的,在时间( Z )上是蓝色的,正如你可以从中心的变暗中看到的,在那里低频会衰减。

在图 2 中, 3D 蓝色噪声的各个片段在空间和时间上都不好。只有我们的时空蓝色噪声在空间和时间上都是蓝色的。有关为什么 3D 蓝色噪波对设置蓝色噪波动画不有用的更多信息,请参见 3D 蓝色噪音问题 中 Christoph Peters 的精彩解释。

图 2 。二维蓝色噪波在空间上是蓝色的,但在时间上不是很好的采样

图 3 显示了在黑色背景上 50% 透明的纹理,使用噪波进行二元 alpha 测试(随机透明度),并使用 temporal anti-aliasing ( TAA )进行过滤。

独立的蓝色噪波纹理是对白色噪波的显著改进,它在每一帧中都有一组均匀分布的幸存像素。与白噪声相比,这种方法对于邻域采样抑制效果更好,白噪声具有残存像素的团块和空洞。时空蓝色噪波通过使每个像素在时间上均匀分布的帧上存活下来而表现得更好,从而获得更收敛、更稳定的结果。

图 3 。在 TAA 下,使用各种类型的噪声进行 50% 透明度的随机透明度测试

在图 3 中,白噪波(左)非常嘈杂,因为蓝噪波(中)中不存在团块和空洞。我们的时空蓝色噪声通过使像素不仅在空间上而且在时间上均匀地存活而做得更好。

载体

矢量时空蓝色噪波纹理存储每个像素的矢量值,对于需要每个像素的随机矢量的渲染算法非常有用,例如光线跟踪环境光遮挡。您可以通过在 3D 中从 蓝色噪声抖动采样 ( BNDS )运行算法来生成这些纹理。你在那篇论文中对能量函数做了同样的修改,就像你在 void 和 cluster 中对标量做的一样。如果它们来自同一纹理切片,或者它们在不同时间点是同一像素,则仅返回非零能量。

结果还是 N 纹理,在空间上是完全蓝色的,但每个像素在 z 轴上也是蓝色的。可以使用单位向量,这在需要方向向量的情况下很有用,也可以使用非单位向量,这在只需要 N 维随机数(如空间中的点)时很有用。

图 4 显示了向量值时空蓝色噪声的切片,以及它们在空间和时间轴上的频率分量。这表明它们在空间上是蓝色的,在时间上是蓝色的。

图 4 。 128x128x64 时空蓝色噪声纹理及其频率显示为维度 1 、 2 和 3 的单位向量和非单位向量。

图 5 显示了使用各种类型的单位 vec3 噪声的 4 个逐像素光线跟踪环境遮挡( AO )样本。如果向量朝向法线,则该向量为负值。白噪声、独立的蓝色噪声纹理和时空蓝色噪声之间的质量差异非常明显。

图 5 。使用均匀分布的光线对每像素 AO 进行四次采样。蓝色噪声比白色噪声好得多,而时空蓝色噪声比蓝色噪声好得多,因为随着时间的推移采样效果更好。

重要性抽样

BNDS 算法从一组白噪声纹理开始,并重复随机交换像素(如果交换改善了能量函数)。但是,没有理由必须将这些纹理初始化为均匀的白噪声向量。

当将它们初始化为非均匀分布时,该算法仍然可以创建蓝色噪波纹理。结果是时空蓝色噪声纹理,它也恰好有一个非均匀直方图,允许进行重要采样。由于需要每个像素的 PDF 进行重要性采样,您可以将 PDF ( x )存储在 alpha 通道中,也可以根据纹理中的值计算 PDF ,例如,如果它是余弦半球加权的,则进行点积,或者除以作为着色器常量传入的规格化值。

图 6 显示了重要性采样、向量值、时空蓝色噪声纹理。

图 6 。重要采样的时空蓝色噪声切片,其 DFT ,以及它们是重要采样的源图像。纹理的 alpha 通道将 PDF 存储为最小和最大 PDF 之间的百分比。

图 7 显示了再次跟踪 AO 的四个每像素采样光线,但使用了余弦加权半球,重要性采样单位向量。白噪波生成一个单位 vec3 ,将其添加到法线,然后进行规格化。 Blue noise 和 STBN 的纹理中存储了余弦加权半球向量,这些向量使用 TBN 基矩阵转换为切线空间。

查看旋转木马顶部的椭圆显示蓝色噪波比白色噪波效果更好。

查看右上角的窗口帧,您可以看到 STBN 在阴影中的噪波如何比独立的蓝色噪波纹理少。

图 7 。余弦加权半球形(重要性采样)每像素四个采样环境遮挡。

在图 7 中,噪声之间的差异不如均匀采样时明显,但仍然存在。蓝色噪声中的噪声比白色噪声更难看到,也更容易过滤。 STBN 中的噪声与之相同,但幅度也较低。

结论

蓝色噪波是一种在低采样数下获得外观更好的图像的好方法,就像在实时渲染中发现的那样。蓝色噪波在几乎任何每像素需要一个或多个随机值的情况下都很有用。

关于作者

Alan Wolfe 最初是一名自学成才的游戏编程爱好者,拥有超过 20 年的游戏开发经验,拥有包括《星际争霸 2 》、《风暴英雄》、《高谭市冒名顶替者》、《线骑士》和《疯狂扭曲的阴影星球》在内的多部游戏。 Alan 对蓝色噪音和其他随机渲染方法有着不健康的迷恋。

Nathan Morrical 是博士。犹他大学的学生,来自NVIDIA OpTix 团队的实习生和皮克斯的 RenderMan 集团,以及科学计算和成像研究所( SCI )的现任成员。他的研究兴趣包括高性能光线跟踪框架和计算、科学数据可视化、计算几何和实时光线跟踪。在加入 SCI 之前, Nate 在爱达荷州立大学获得了计算机科学学士学位,在那里他研究了交互式计算机图形学和计算几何。

Tomas Akenine-Moller 是NVIDIA 杰出的研究科学家,目前正在休假,他是隆德大学计算机图形学教授。托马斯与人合著 Real-Time Rendering 、 浸入线性代数 并共同编辑 射线追踪宝石 I 。

Ravi Ramamoorthi 是 Nvidia 的一名研究顾问,他是圣地亚哥加利福尼亚大学的教授,他担任 Ronald L.Graham 计算机科学系的主席,也是 UCSD 视觉计算中心的创始主任。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 噪声
    +关注

    关注

    13

    文章

    1118

    浏览量

    47364
  • NVIDIA
    +关注

    关注

    14

    文章

    4930

    浏览量

    102792
收藏 人收藏

    评论

    相关推荐

    噪声纹波探头测量应用指南

    当今大多数电子设计都要求不同的供电电压才能正确运行。事实上,块电路内部许多元器件都要求多种电压,特别是高度集成的片上系统及多种技术接口在起的微处理器设计。 由于许多因素,执行 DC 低噪声纹
    的头像 发表于 11-13 13:56 100次阅读
    低<b class='flag-5'>噪声纹</b>波探头测量应用指南

    调试PCM3500E,DAC输出噪声纹波峰峰值居然高达600mV,为什么?

    你好!最近在调试PCM3500E,发现其DAC部分,输出噪声纹波峰峰值居然高达600mV,将芯片power down之后噪声就消除了。附图是DIN输入全零时,纹波的波形特征。
    发表于 11-08 07:25

    RT-Thread携手进迭时空:共建RISC-V实时计算生态

    日益高涨。基于新代精简指令集架构RISC-V开发的高性能计算芯片,可极大提升计算效能,提供更多优质算力。近日,RT-Thread与进迭时空(杭州)科技有限公司宣布
    的头像 发表于 08-06 08:35 388次阅读
    RT-Thread携手进迭<b class='flag-5'>时空</b>:共建RISC-V<b class='flag-5'>实时</b>计算生态

    深入理解渲染引擎:打造逼真图像的关键

    在数字世界中,图像渲染是创造逼真视觉效果的核心技术。渲染引擎,作为这过程中的关键组件,负责将二维或三维的模型、纹理、光照等数据转化为人们肉眼可见的二维图像。本文将深入探讨
    的头像 发表于 06-29 08:28 285次阅读
    深入理解<b class='flag-5'>渲染</b>引擎:打造逼真图像的关键

    VIVERSE 推行实时3D渲染: 探索Polygon Streaming技术力量与应用

    在商业领域和娱乐行业中,3D渲染技术直是推动视觉体验革新的关键力量。随着技术的进步,实时3D渲染技术逐渐成为主流,近期VIVERSE平台对外发布引入
    的头像 发表于 05-31 15:49 2293次阅读
    VIVERSE 推行<b class='flag-5'>实时</b>3D<b class='flag-5'>渲染</b>: 探索Polygon Streaming技术力量与应用

    CPU渲染和GPU渲染优劣分析

    使用计算机进行渲染时,有两种流行的系统:基于中央处理单元(CPU)或基于图形处理单元(GPU)。CPU渲染利用计算机的CPU来执行场景并将其渲染到接近完美。这也是执行渲染的更传统方式。
    的头像 发表于 05-23 08:27 527次阅读
    CPU<b class='flag-5'>渲染</b>和GPU<b class='flag-5'>渲染</b>优劣分析

    HarmonyOS实战开发-合理选择条件渲染和显隐控制

    if/else条件渲染是ArkUI应用开发框架提供的渲染控制的能力之。条件渲染可根据应用的不同状态,渲染对应分支下的UI描述。条件
    发表于 05-10 15:16

    【RTC程序设计:实时音视频权威指南】音频采集与渲染

    在进行视频的采集与渲染的同时,我们还需要对音频进行实时的采集和渲染。对于rtc来说,音频的实时性和流畅性更加重要。 声音是由于物体在空气中振动而产生的压力波,声波的存在依赖于空气介质,
    发表于 04-28 21:00

    【RTC程序设计:实时音视频权威指南】视频采集与渲染

    屏幕等等,这些都是显示器件。人眼观察的最低要求般是60赫兹,渲染的过快,会使人眼无法分辨过低,则会出现闪烁和不流畅。在2000年以来渲染技术主要是实时
    发表于 04-25 08:40

    探索渲染技术与云渲染的魅力!

    在数字艺术和计算机图形领域中,渲染技术占据着至关重要的地位。随着科技的进步,云渲染作为种新兴的渲染方式,正逐渐受到业界的关注和应用。本文将对渲染
    的头像 发表于 04-12 08:30 253次阅读
    探索<b class='flag-5'>渲染</b>技术与云<b class='flag-5'>渲染</b>的魅力!

    测电源噪声纹波时为什么选无源探头

    在测量电源的噪声纹波时,采用无源探头是种常见的选择。无源探头是指在测量过程中不需要额外的电源供电的探头。那么,为什么我们要选择无源探头呢?下面将详细解释这个问题。 首先,无源探头具有高频
    的头像 发表于 02-01 10:10 573次阅读
    测电源<b class='flag-5'>噪声纹</b>波时为什么选无源探头

    OpenHarmony Sheet 表格渲染引擎

    基于 Canvas 实现的高性能 Excel 表格引擎组件 [OpenHarmonySheet]。 由于大部分前端项目渲染层是使用框架根据排版模型树结构逐层渲染的,整棵渲染树也是与排版模型树一一对应
    发表于 01-05 16:32

    揭秘:实时渲染、离线渲染、云渲染和混合渲染的区别

    遇到这些概念,或者些3D渲染引擎产品的时候,可以按照这些渲染分类,去快速的进行定位和分析,更好的帮助我们理解和学习。实时
    的头像 发表于 12-26 08:27 739次阅读
    揭秘:<b class='flag-5'>实时</b><b class='flag-5'>渲染</b>、离线<b class='flag-5'>渲染</b>、云<b class='flag-5'>渲染</b>和混合<b class='flag-5'>渲染</b>的区别

    实时渲染在虚拟展会中的应用

    网上推介、供采对接、在线洽谈等服务,让中外客商足不出户下订单、做生意。那么什么是虚拟展会呢?虚拟展会与线下展会有什么区别呢?点量实时渲染云平台在虚拟展会中的应用有哪些? 什么是虚拟展会? 虚拟展会是种媒体的网络互
    的头像 发表于 12-05 17:01 397次阅读

    实时渲染部署数字孪生显卡要求

    在数字孪生项目中,云渲染技术成为了个重要的工具。它允许用户在不同的终端上使用,包括电脑、手机、平板、智能屏、电视和电视盒等。对用户而言,使用云渲染就像打开个网页
    的头像 发表于 12-05 17:01 612次阅读