Skip to content

降噪

降噪算法

路径追踪使用蒙特卡洛积分,每个像素需要追踪数百甚至数千条路径才能收敛到无噪点结果。实时光线追踪只能追踪每像素 1-4 条路径,噪点严重。降噪算法利用空间和时间相干性,从低采样率图像重建高质量图像。

空间滤波

空间滤波假设相邻像素的光照相似,通过加权平均减少噪点。

  • 高斯滤波:对像素周围的像素加权平均,权重随距离衰减
  • 双边滤波:同时考虑空间距离和颜色相似度,保留边缘
  • 非局部均值(Non-Local Means):搜索整幅图像中相似的图像块,加权平均

时间累积

时间累积利用帧间相干性,将当前帧与历史帧混合。

  • 指数移动平均:It=αIcurrent+(1α)Ihistory
  • 运动向量:使用光栅化阶段计算的运动向量,将历史帧对齐到当前帧
  • 阴影/反射重投影:对阴影和反射通道单独重投影,减少幽灵伪影

混合降噪

现代游戏引擎使用结合空间滤波和时间累积的混合降噪方案,典型的如 NVIDIA 的 Real-Time Denoiser(RTXDI)和 AMD 的 FidelityFX SPD。

  • 分类通道:

    • 根据材质类型(镜面、漫反射、发射)将图像分成多个通道
    • 每个通道单独降噪,保留不同材质的特征
    • 通道间交互避免分离伪影
  • 自适应采样:

    • 对高方差区域(边缘、反射)增加采样数
    • 对低方差区域(平坦表面)减少采样数
    • 使用方差估计指导采样分配
  • 神经降噪:

    • 使用小型的 CNN 网络学习噪点模式
    • 训练数据来自离线渲染器的高质量图像
    • 推理速度极快,适合实时应用