想象你在一个黑漆漆的展厅里,用手电筒去欣赏墙上的一幅巨幅油画。手电筒的光束很细,每次只能照亮画布上的一小块。为了看清整幅画,你必须不断移动手电筒,扫过成千上万个点,再把它们记在脑子里——这正是光线追踪的工作方式:每个像素要射入很多条光线,采样越多画面越干净,但渲染时间也越久。如果只采几束光,画面就会布满颗粒状噪点,像手电筒照过的地方还蒙着一层灰。这时,一位聪明的画面修复师站了出来:他不需要你把每个角落都照完,只靠已经看清的几个区域,就能推断出旁边没照到地方的纹理与颜色,飞快地把整幅画补全。这位修复师就是“去噪器”。市面上有两位著名修复师:NVIDIA 的 OptiX 和 Intel 的 OIDN,一个擅长用 GPU 调动千只手快速抹平,一个擅长用神经网络和跨平台代码精打细算。本文带你认识他们的手艺、比拼结果,以及何时该请谁。

岗位关联

对 AI 从业者而言,掌握去噪器原理与选型,能帮你把昂贵的光线追踪采样成本压到可交互量级,是通往实时光追和高效离线渲染的必修课。

目录
  1. 可视化演示
  2. 噪点成因
  3. 去噪原理
  4. OptiX方案
  5. OIDN方案
  6. 对比评测
  7. 管线集成
  8. 参数调优
  9. 选型策略
  10. AI 应用场景
  11. Python 演示
  12. 常见误区
  13. 面试题

可视化演示

展示光线追踪噪声去噪过程、OptiX与OIDN架构管线对比及质量性能权衡曲线,含采样数与PSNR实时调节。

本节配有交互动效(进入视口后自动加载,约 3KB)。

噪声去噪:扫描线清洁过程 左侧Raw:蒙特卡洛随机采样噪声 右侧Den:AI去噪后干净图像 noise ~ 1/sqrt(spp) 低采样(spp<4)含噪严重,去噪器大幅加速收敛。

噪点成因

修复师走进展厅时,首先看到的是满画面的“灰”。这层灰不是环境尘埃,而是因为手电筒照得太少——光线追踪要在每个像素上随机发射光线,通常需要几十条甚至上万条,才能让画面颗粒消失。发射的光线越多,你越能看清油画笔触;光线越少,画面就越像蒙了一层砂纸。这层“砂纸”就是噪点。

噪点的数学根源是蒙特卡洛采样。渲染器把每个像素的亮度看作一个随机变量的期望,用 N 条独立光线的均值去估计它。由于每条光线都是随机发射的,估计值天然带有统计波动,不同像素之间的波动就是噪点。

修复师心里清楚,这层灰是随机性的产物,不能靠蛮力去擦,只能靠聪明的推测。于是,他决定用周围已经看清的颜色来补全画面,这便是去噪原理的起点。

Var(I^)=σ2N\displaystyle \mathrm{Var}(\hat{I}) = \frac{\sigma^2}{N}
这个式子告诉我们:像素亮度估计值的噪声方差,等于单条光线的方差除以采样数。
  1. 左侧估计方差\(\mathrm{Var}(\hat{I})\) 表示像素亮度估计值在多次渲染之间的波动程度,波动越大,噪点越明显。
    Var(I^)\mathrm{Var}(\hat{I})
  2. 分子采样方差\(\sigma^2\) 由场景本身的明暗对比和材质复杂度决定,高光、硬阴影会让单条光线差异更大。
    σ2\sigma^2
  3. 分母采样数\(N\) 是每个像素发射的光线数量,增加它可以让噪声线性下降。
    NN

去噪原理

修复师观察蒙灰的画面时会想:被灰尘遮住的区域,周围的颜色和纹理往往能给出线索。去噪器的核心思路同样是“看四周”:用像素周围一大片已采样的颜色做加权平均,替换掉当前像素那颗不稳定的噪声点。简单说,就是用邻居的答案来投票,再选一个最可能的颜色。

但简单平均会把边缘抹糊。修复师不会这么做——他会在平均时加入约束:距离越近的像素权重越高,颜色差越大的像素权重越低。这样,即使画面中有清晰的物体轮廓,去噪时也不会把边缘抹成一片浆糊。更高级的去噪器还会把反照率、法线、深度等几何信息当作“脚手架”,让修复师知道哪里是物体边界、哪里是阴影区域,从而更精准地补色。

修复师靠着“看周围”和“认结构”这两招,几笔就能把灰盖住,同时保留住油画边缘刚劲的线条。接下来,就看两位不同流派的修复师如何各显神通了。

I′(p)=∑q∈N(p)w(p,q) I(q)∑q∈N(p)w(p,q)\displaystyle I'(p) = \frac{\sum_{q \in N(p)} w(p,q)\, I(q)}{\sum_{q \in N(p)} w(p,q)}
去噪结果就是邻域内所有像素颜色按权重归一化后的加权平均。
  1. 输出像素\(I'(p)\) 是修复后在像素 \(p\) 处的最终颜色。
    I′(p)I'(p)
  2. 邻域集合\(N(p)\) 表示以 \(p\) 为中心的一块局部像素区域,就像修复师手边能看到的颜料盘。
    N(p)N(p)
  3. 权重函数\(w(p,q)\) 同时考虑空间距离、颜色差异和几何特征相似度,距离越近、颜色越接近,权重越大。
    w(p,q)w(p,q)
  4. 归一化分母把所有权重加起来,保证加权平均后画面不会整体变亮或变暗。
    ∑q∈N(p)w(p,q)\sum_{q \in N(p)} w(p,q)

OptiX方案

NVIDIA 请来的修复师叫 OptiX,他有个绝活:手下有成千上万只“手”(GPU 线程)同时工作。他先用 GPU 上的 Tensor Core 跑一个小型神经网络,把带噪图、反照率、法线一次性吃进去,瞬间输出光滑画面。这种“人多力量大”的打法,让他在实时交互场景中尤其占优。

OptiX Denoiser 是 NVIDIA 在 OptiX 框架中内置的 AI 降噪模块。它把去噪建模为一个可学习的映射,输入带噪图和几何辅助特征,输出干净图。由于神经网络推理在 GPU 上高度并行,单帧去噪可以控制在毫秒级,因此非常适合实时光追、游戏预览和交互式渲染。代价是显存:网络推理需要额外分配临时缓冲,而且这个闭源模块只绑定 NVIDIA 硬件。

OptiX 修复师靠“人手多”和“老练眼力”最快交活,但他离不开 NVIDIA 专属工作台。如果工作室里还有别的设备,就要请另一位修复师出马了。

Iout=fθ(Iin,A,N)\displaystyle I_{\mathrm{out}} = f_{\theta}(I_{\mathrm{in}}, A, N)
OptiX 把去噪看作一个训练好的函数,输入带噪图、反照率和法线,输出干净图。
  1. 学习函数\(f_{\theta}\) 是训练好的去噪网络,参数 \(\theta\) 由海量渲染样本离线学得。
    fθf_{\theta}
  2. 输入列表\(I_{\mathrm{in}}, A, N\) 分别是带噪 HDR 图、反照率和法线,它们告诉修复师“哪里有细节、哪里是边界”。
    Iin,A,NI_{\mathrm{in}}, A, N
  3. 输出结果\(I_{\mathrm{out}}\) 是网络预测的干净图像,也就是修复师补全后的画面。
    IoutI_{\mathrm{out}}

OIDN方案

Intel 请来的修复师叫 OIDN(Open Image Denoise),他更像个学院派:不挑工作台,CPU 上也能干,代码还开源,谁都能研究他的手艺。他同样用神经网络修复画面,但设计上更看重跨平台与离线质量,而不是一味追求毫秒级响应。

OIDN 的训练目标是让网络输出的干净图尽量接近参考高清图。训练时,损失函数计算修复结果与参考图之间的逐像素误差,然后不断调整网络权重让误差变小。这套方法让它在全局光照、软阴影等复杂场景中表现稳健,尤其适合影视渲染农场和 CPU 集群。OIDN 也支持 GPU,但它的主场始终是离线渲染与不依赖专有硬件的管道。

OIDN 这位修复师不追求手速,但每一笔都很稳,还愿意把技巧写成公开教科书。现在,两位修复师要同台竞技了。

L(θ)=∥fθ(Iin,A)−Iref∥22\displaystyle L(\theta) = \left\| f_{\theta}(I_{\mathrm{in}}, A) - I_{\mathrm{ref}} \right\|_2^2
损失函数衡量去噪网络的输出与参考图之间的误差,误差越小,网络修复得越准。
  1. 损失函数\(L(\theta)\) 表示网络参数 \(\theta\) 的好坏,数值越小说明修复越接近参考图。
    L(θ)L(\theta)
  2. 网络输出\(f_{\theta}(I_{\mathrm{in}}, A)\) 输入带噪图和反照率辅助特征后,神经网络预测出的干净图。
    fθ(Iin,A)f_{\theta}(I_{\mathrm{in}}, A)
  3. 参考真值\(I_{\mathrm{ref}}\) 是经过大量采样渲染出来的“标准答案”,用于训练时对照。
    IrefI_{\mathrm{ref}}
  4. 二范数平方\(\|\cdot\|_2^2\) 把每个像素误差平方后求和,让明显的错误在训练中受到更大惩罚。
    ∥⋅∥22\|\cdot\|_2^2

对比评测

两位修复师同台,比的不是谁名气大,而是速度、画质、硬件门槛和适用规模。测试通常会固定场景与采样数,分别记录去噪耗时、显存或内存占用,再由专业人员肉眼评分。实时场景看帧耗时,离线场景则看总渲染时间与噪点残留。

画质上通常用信噪比(SNR)来量化:信噪比越高,说明噪声残留越少,画面越干净。经验结论是,在同一块 NVIDIA GPU 上,OptiX 通常更快;但如果换到纯 CPU 或多平台环境,OIDN 的兼容性和稳定输出往往更吃香。两者没有绝对的“更强”,只有“更合适”。

评测表不会告诉你唯一答案:同一个场景,OptiX 手快但可能吃显存,OIDN 慢一点但更稳定。选谁之前,先要把修复师正确地请进渲染管线。

SNR=10log⁡10PsignalPnoise\displaystyle \mathrm{SNR} = 10\log_{10}\frac{P_{\mathrm{signal}}}{P_{\mathrm{noise}}}
信噪比用分贝表示真实画面能量与噪声能量的比值,数值越高,画面越干净。
  1. 信噪比\(\mathrm{SNR}\) 是衡量画面干净程度的指标,单位是分贝。
    SNR\mathrm{SNR}
  2. 信号功率\(P_{\mathrm{signal}}\) 反映画面真实内容的能量,相当于修复师想保留的笔触。
    PsignalP_{\mathrm{signal}}
  3. 噪声功率\(P_{\mathrm{noise}}\) 反映颗粒噪点的残余能量,相当于画布上没擦净的灰。
    PnoiseP_{\mathrm{noise}}
  4. 对数刻度\(10\log_{10}\) 把巨大的动态范围压缩成人眼友好的数字,每增加约 6dB 代表噪声减半。
    10log⁡1010\log_{10}

管线集成

把修复师请进工作室,不是让他站在画前随便画,而是要给他正确的工作流程:先送“半成品”(原始渲染图),再给辅助信息(反照率、法线),并且规定必须在哪个“光源”下工作——对去噪来说,这个光源就是线性 HDR 空间。

渲染管线集成去噪器有四个要点:数据流衔接要能拿到带噪 HDR 图和 G-buffer;图像缓冲布局要对齐,避免 GPU 与 CPU 反复拷贝;颜色空间必须在线性 HDR 中操作,否则伽马压缩会让平均颜色偏色;接口调用上,OptiX 用 optixDenoiserInvoke,OIDN 用 oidnFilter。调试时常用一个混合系数,让画面在“完全原始”与“完全去噪”之间渐变,方便观察力度是否合适。

流程顺了,修复师才能把功夫用在刀刃上,既擦掉噪声,又不破坏原有色彩层次。接下来,还要学会调整修复师的力度。

Cout=α Cdn+(1−α) Craw\displaystyle C_{\mathrm{out}} = \alpha\, C_{\mathrm{dn}} + (1-\alpha)\, C_{\mathrm{raw}}
混合公式用来控制去噪强度:\(\alpha=0\) 时完全保留噪点,\(\alpha=1\) 时完全使用去噪结果。
  1. 最终颜色\(C_{\mathrm{out}}\) 是混合后的输出像素颜色,也是观众最终看到的画面。
    CoutC_{\mathrm{out}}
  2. 混合系数\(\alpha\) 控制去噪结果的占比,可以理解为修复师下笔的力度。
    α\alpha
  3. 两路输入\(C_{\mathrm{dn}}\) 是去噪后的图像,\(C_{\mathrm{raw}}\) 是原始带噪图像。
    Cdn,CrawC_{\mathrm{dn}}, C_{\mathrm{raw}}

参数调优

修复师虽然专业,但力度要由你来定。下笔太轻,灰没擦净;下笔太重,油画笔触也被抹平。调参就是在“采样成本”与“过度平滑”之间找平衡,最核心的旋钮是每像素采样数(SPP)。

增加采样可以降低输入噪声,但会直接拉长渲染时间。工程上通常先用低 SPP 快速出图,再进行去噪;当 SPP 已经很高时,再去噪的边际收益很小。此外还要调整去噪强度阈值、时域权重(动态画面用上一帧信息辅助当前帧),以及决定保留多少高频细节。一个常用经验是:让输入噪声保持“轮廓清楚、表面有颗粒”的程度,去噪效果最好。

聪明的调参者会让修复师在还看得清轮廓时接手,而不是等他把每个角落都反复描完。当你能熟练控制力度时,最后的问题就是:究竟该长期雇哪一位修复师?

RMSE∝1N\displaystyle \mathrm{RMSE} \propto \frac{1}{\sqrt{N}}
去噪后画面的误差与采样数的平方根成反比,低采样区间加采样收益明显,高采样区间收益递减。
  1. 误差指标\(\mathrm{RMSE}\) 是均方根误差,衡量去噪结果与参考图的平均偏差。
    RMSE\mathrm{RMSE}
  2. 正比符号\(\propto\) 表示误差随右边表达式按比例变化。
    ∝\propto
  3. 分母开方\(\sqrt{N}\) 说明误差不是线性下降,而是随采样数增长逐渐变慢。
    N\sqrt{N}

选型策略

最后要回答:你的工作室该雇哪位修复师?答案取决于工种——实时游戏画面追求手速,影视离线渲染追求稳定,混合场景则要看团队硬件和开发预算。选型不是选“最好”,而是选“最不折腾”。

可以算一笔账:RTF(渲染时间因子)表示开启去噪后的总耗时相对纯渲染的比值。RTF 小于 1 说明去噪带来实打实的加速,小于 0.5 通常代表两倍以上收益。选型要同时考虑运行时成本、开发集成成本和硬件采购成本。如果团队已经跑在 NVIDIA 全家桶上,OptiX 是接入成本最低的路径;如果团队希望代码开源、跨平台,并且允许在离线场景多花一点时间,OIDN 更稳妥。

如果你的项目要实时、要快、且硬件统一,OptiX 是最短路径;如果团队希望跨平台、拥抱开源、掌控算法细节,OIDN 是更稳妥的长期伙伴。两位修复师各有绝活,真正的高手,是能根据场景随时切换的人。

RTF=TdenoisedTnoisy\displaystyle \mathrm{RTF} = \frac{T_{\mathrm{denoised}}}{T_{\mathrm{noisy}}}
RTF 是去噪后总耗时与纯采样渲染耗时的比值,比值越小,说明去噪带来的速度收益越大。
  1. 时间比\(\mathrm{RTF}\) 表示“请修复师之后”与“不请修复师硬刚画质”的时间之比。
    RTF\mathrm{RTF}
  2. 分子分母\(T_{\mathrm{denoised}}\) 是渲染加去噪的总耗时,\(T_{\mathrm{noisy}}\) 是只靠提高采样达到同等画质所需的渲染耗时。
    Tdenoised,TnoisyT_{\mathrm{denoised}}, T_{\mathrm{noisy}}
  3. 判断标准比值小于 1 表示去噪划算,等于 1 表示没有提速,大于 1 说明去噪反而拖慢流程。
    <1< 1

AI 应用场景

实时光追游戏中的 OptiX 去噪

阶段:图像后处理 / GPU 推理

解决的问题:没有去噪器时,4K 实时光追要达到无噪需要几百 SPP,游戏帧率几乎不可能维持。OptiX 用 GPU 神经网络把低 SPP 图像瞬间补全,让玩家在十几 SPP 的输入下也能看到接近电影级的光影。

具体案例:某开放世界游戏开启 RTX 全局光照后,每帧先用 1 SPP 渲染出带噪画面和 G-buffer,再调用 OptiX Denoiser 输出干净帧;角色转动视角时,配合时域滤波避免画面闪烁。

影视离线渲染中的 OIDN 去噪

阶段:渲染农场后处理

解决的问题:影视帧要求无噪、无闪烁且细节保真,CPU 渲染农场成本高昂。OIDN 在 CPU 上稳定去噪,可以把每像素采样数从 4096 降到 256,大幅缩短单帧渲染时间。

具体案例:某动画工作室用 Blender Cycles 渲染剧集,单帧平均耗时 30 分钟;接入 OIDN 后降到 8 分钟,噪点依然明显减少,灯光团队可以更快迭代。

建筑可视化中的混合方案

阶段:交互预览 + 最终出图

解决的问题:方案评审需要快速预览,客户又需要高精度最终图。单用 OptiX 实时出图速度快,但离线大图细节不够稳;单用 OIDN 又难满足拖拽交互的帧率。

具体案例:某建筑可视化平台在编辑视口中用 OptiX 实现光照即时反馈,导出 8K 效果图时切换到 OIDN 平滑处理焦散和软阴影,兼顾速度与质量。

Python 演示

python45 行
import numpy as npfrom math import exp  def make_scene(h=128, w=128):    y, x = np.mgrid[:h, :w]    dist = np.sqrt((x - 64) ** 2 + (y - 64) ** 2)    clean = (dist < 28).astype(np.float32) * 0.8 + 0.1    rng = np.random.default_rng(42)    noisy = clean + rng.normal(0.0, 0.2, clean.shape)    return clean, np.clip(noisy, 0.0, 1.0)  def bilateral_denoise(img, radius=2, sigma_spatial=2.0, sigma_color=0.15):    h, w = img.shape    out = np.zeros_like(img)    for i in range(h):        for j in range(w):            val = 0.0            wsum = 0.0            for di in range(-radius, radius + 1):                for dj in range(-radius, radius + 1):                    ni = min(max(i + di, 0), h - 1)                    nj = min(max(j + dj, 0), w - 1)                    w_spatial = exp(-(di * di + dj * dj) / (2 * sigma_spatial * sigma_spatial))                    diff = img[i, j] - img[ni, nj]                    w_color = exp(-(diff * diff) / (2 * sigma_color * sigma_color))                    wt = w_spatial * w_color                    val += wt * img[ni, nj]                    wsum += wt            out[i, j] = val / wsum    return out  def main():    clean, noisy = make_scene()    denoised = bilateral_denoise(noisy)    before = float(np.mean((noisy - clean) ** 2))    after = float(np.mean((denoised - clean) ** 2))    print("MSE before denoise: %.4f" % before)    print("MSE after denoise:  %.4f" % after)  if __name__ == "__main__":    main()
目的:用双边滤波模拟去噪器,演示如何在只有少量采样信息时,通过邻域颜色加权来降低噪声。
  1. rng = np.random.default_rng(42)固定随机种子,保证每次运行生成的噪点可复现。
  2. noisy = clean + rng.normal(0.0, 0.2, clean.shape)给干净图像加上高斯噪声,模拟蒙特卡洛采样不足。
  3. for di in range(-radius, radius + 1):遍历当前像素周围的正方形邻域,相当于修复师观察四周颜料。
  4. w_spatial = exp(-(di * di + dj * dj) / (2 * sigma_spatial * sigma_spatial))距离越近权重越大,控制空间影响范围。
  5. w_color = exp(-(diff * diff) / (2 * sigma_color * sigma_color))颜色差越大权重越小,保护边缘不被抹糊。
  6. val += wt * img[ni, nj]; wsum += wt累加邻居颜色和权重,为最终加权平均做准备。
  7. out[i, j] = val / wsum除以总权重完成归一化,得到去噪后的像素。
  8. before = float(np.mean((noisy - clean) ** 2))计算原始带噪图与标准图的均方误差,作为去噪前的基线。

常见误区

误区“去噪强度拉满,画面立刻就干净了,反正多抹一点看不出差别,直接开最强不就好了?”

正解去噪器本质是猜测,强度过高会把真实高频细节——头发、树叶、粗糙纹理——也当成噪声抹平,导致画面出现“塑料感”。修复师用力过猛会把油画笔触一同擦掉。正确做法是用混合系数或强度阈值,让去噪只消除颗粒、不模糊边缘。

为何常见:噪声非常刺眼,看到去噪后立即变干净会让人忽略细节损失,尤其在小尺寸预览时更看不出来。

误区“既然去噪器这么强,每像素采样一两根光线就够了,剩下的交给修复师猜。”

正解去噪依赖输入中的微弱信息;采样过少时,真实结构(细线、小高光)根本没被采样到,修复师只能凭空瞎猜,结果会出现脏斑和闪烁。通常要保证主要轮廓和光照信息可辨,比如 4 到 16 SPP,才适合交给去噪器。

为何常见:厂商演示常展示 1 SPP 到 100 SPP 的神奇对比,让人误以为 1 SPP 也能用,但那是静态图像加上特定场景,动态场景会立刻露馅。

误区“网上评测都显示 OptiX 速度碾压,所以选它准没错。”

正解在 NVIDIA GPU 上 OptiX 通常更快,但如果项目跑在 AMD GPU 或纯 CPU 服务器上,OIDN 可能更稳、更快,而且更省显存、更容易跨平台。选型要看目标硬件,而不是单个评测视频。

为何常见:厂商演示和论坛评测多以高端 N 卡为平台,长期看会让人形成“永远更快”的错觉。

误区“渲染器最终输出的就是 sRGB 图,直接在这个图上调用去噪不就好了?”

正解sRGB 经过伽马压缩,亮暗关系是非线性的,去噪假设邻域颜色可线性平均,在 sRGB 上平均会偏色、产生黑边。必须在线性 HDR 空间完成去噪,最后再色调映射到显示空间。

为何常见:很多渲染器默认输出 sRGB,低动态范围场景下去噪看起来没问题,但一遇到高动态范围灯光,偏色和光晕问题就暴露了。

误区“OIDN 是 Intel 出的,应该只支持 Intel CPU,而且不能 GPU 加速吧?”

正解OIDN 是一个开源库,核心用 C++ 与 SYCL 实现,支持 CPU,也支持 Intel GPU 以及部分其他 GPU 后端。它只是不像 OptiX 那样绑定 CUDA 生态,所以给人“纯 CPU 库”的错觉。

为何常见:名字里带 Intel,官方案例又总以 CPU 渲染农场为主,用户很容易忽略它一直存在的 GPU 后端。

面试题

Q1. 光线追踪画面出现颗粒噪点,最主要原因是?

单选题 · easy

  • A.三角形数量过少
  • B.蒙特卡洛采样不足← 正确答案
  • C.显示器刷新率低
  • D.场景光照过于简单

答案:B。光追用蒙特卡洛采样估算像素亮度,采样数不足时方差增大,表现为颗粒噪点。三角形数量和刷新率与像素亮度估算无关,光照过于简单反而会降低噪声。

Q2. 去噪器本质上是在做什么?

单选题 · easy

  • A.跳过所有光线求交
  • B.预测缺失的采样信息← 正确答案
  • C.降低图片分辨率
  • D.压缩渲染资源

答案:B。去噪器根据邻域颜色和辅助特征推测未充分采样的信息,从而降低噪声。它并不跳过求交,也不降低分辨率,而是对图像做智能后处理。

Q3. 关于 OIDN 的定位,正确的是?

单选题 · mid

  • A.仅适配 NVIDIA 显卡
  • B.面向跨平台离线渲染← 正确答案
  • C.不支持神经网络模型
  • D.必须配合 OptiX 使用

答案:B。OIDN 是 Intel 开源的跨平台去噪库,支持 CPU 与 GPU,且训练时使用神经网络。它不依赖 OptiX,也不仅限 NVIDIA 硬件。

Q4. 下列哪些辅助特征能帮助去噪器保留边缘?

多选题 · mid

  • A.反照率贴图← 正确答案
  • B.法线方向← 正确答案
  • C.深度距离← 正确答案
  • D.音频波形

答案:ABC。反照率、法线、深度都是 G-buffer 中的常见几何信息,能告诉去噪器物体边界和材质归属。音频波形与画面无关,不能帮助图像去噪。

Q5. 去噪操作应在什么色彩空间完成?

单选题 · mid

  • A.sRGB 显示空间
  • B.线性 HDR 空间← 正确答案
  • C.CMYK 印刷空间
  • D.HSV 感知空间

答案:B。去噪的本质是邻域颜色线性平均,只有在线性 HDR 空间中平均才符合物理亮度关系。sRGB 经过伽马压缩,直接平均会偏色。

Q6. 某帧原始渲染 10s,开启去噪后总耗时 2s,RTF 为?

单选题 · hard

  • A.0.2← 正确答案
  • B.5.0
  • C.0.5
  • D.2.5

答案:A。RTF = 去噪后总耗时 / 纯渲染耗时 = 2 / 10 = 0.2。这个值小于 1,代表去噪把整体耗时降到了原来的五分之一。

Q7. 下列哪些方法可以提高去噪后的画面质量?

多选题 · hard

  • A.提高预采样数量← 正确答案
  • B.利用前后帧时域信息← 正确答案
  • C.在 sRGB 空间直接去噪
  • D.用反照率法线辅助保边← 正确答案

答案:ABD。适度提高采样数能为去噪提供更多真实信息,时域复用能减少动态闪烁,辅助特征能保护边缘。sRGB 空间去噪会因伽马非线性引入偏色,因此 C 错误。

Q8. 关于 OptiX 去噪的显存,正确的是?

单选题 · mid

  • A.需要额外分配临时缓冲← 正确答案
  • B.不占用任何显存
  • C.仅使用 CPU 内存
  • D.显存满自动降采样

答案:A。OptiX Denoiser 在 GPU 上做神经网络推理,需要额外的临时缓冲来存放输入、辅助特征和中间结果。显存不足时通常报错或要求重新配置,并不会自动降采样。

Q9. OptiX 和 OIDN 都可用于哪些场景?

多选题 · easy

  • A.实时游戏光追← 正确答案
  • B.影视动画离线渲染← 正确答案
  • C.建筑可视化预览← 正确答案
  • D.自然语言翻译

答案:ABC。只要涉及光线追踪图像去噪,实时渲染、离线渲染和可视化预览都可以使用。自然语言翻译是文本任务,与图像去噪无关。

Q10. 为什么不能完全用去噪替代增加采样?

单选题 · hard

  • A.去噪器速度太慢
  • B.低采样已丢失真实信息← 正确答案
  • C.去噪器只会增加噪点
  • D.提高采样没有代价

答案:B。当采样数极低时,细线、小高光等真实细节根本没有被采集到,去噪器只能猜测,可能出现脏斑和闪烁。去噪可以压低噪声,但不能凭空创造出从未被采样的结构。