Lec16 Ray Tracing 4 (Monte Carlo Path Tracing)蒙特卡洛路径追踪

这篇博客探讨了蒙特卡洛路径追踪技术在渲染领域的应用,详细阐述了渲染方程的解决方法,包括辐射度量学、BRDF、光线传播和全局光照的概念。通过概率论和蒙特卡洛积分,解释了如何使用随机采样近似复杂函数的定积分,进而求解渲染方程。文中还讨论了Whitted风格的光线追踪存在的问题,如镜面和光泽反射的处理,并介绍了Utah茶壶的经典例子。最后,提出了RayGeneration、递归终止条件如Russian Roulette以及直接光源采样等优化策略,以提高路径追踪的效率和准确性。

Lec16 Ray Tracing 4 (Monte Carlo Path Tracing)蒙特卡洛路径追踪

正确的解出渲染方程

回顾
  • 辐射度量学
    • irradiance和radiance解释反射问题
    • BRDF
  • 光线传播方式
    • 反射方程
    • 渲染方程
  • 全局光照
  • 概率论复习

复习

  • 渲染方程
    • 自己发出的光加上来的光

    • 在这里插入图片描述

    • BRDF就会告诉自己发射的光反射到发射方向上的光

  • 概率论
    • 离散随机变量,符合一种概率密度分布
    • 在这里插入图片描述

蒙特卡洛积分

积分方法

  • 为了干什么

    • 解一个定积分

    • 在这里插入图片描述

    • 用数值方法算一个复杂函数的定积分的近似值

  • 蒙特卡洛定积分

    • 定积分

      • ∫abf(x)dx\int_{a}^{b}f(x)dxabf(x)dx
    • 随机变量

      • Xi∼p(x)X_i \sim p(x)Xip(x)
      • p(x)是任意概率密度函数
    • 蒙特卡洛算子

      • 在这里插入图片描述

      • 例子

        • 在这里插入图片描述

        • 这里用蒙特卡洛去求就是Fn=b−aN∑i=1Nf(Xi)F_n = \frac{b - a}{N}\sum_{i = 1}^N f(X_i)Fn=Nbai=1Nf(Xi)​​​​

    • 任意定积分都能这样算

      • 在这里插入图片描述

      • N越大,得到的越准确

      • 积分是定义在x上的,采样x

路径追踪 Path Tracing

  • whitted-style ray tracing:
    • 当光线打到光滑物体上,光线沿着镜面方向反射 / 折射
    • 在一个漫反射面上停止反射
  • whitted-style 的问题:
    • Glossy的反射不太对
      • specular reflection(镜面)

      • Glossy reflection(没那么镜面的反射,但是也有高光)

      • 在这里插入图片描述

      • The Utah teapot

    • 在漫反射面没有反射
      • 在这里插入图片描述
渲染方程
  • 其实是解一个积分

    • 在这里插入图片描述
  • 是对于Li(p,wi)fr(p,wi,w0)(n⋅wi)dwiL_i(p,w_i)f_r(p,w_i,w_0)(n·w_i)dw_iLi(p,wi)fr(p,wi,w0)(nwi)dwi

  • pdf是多少?

    • 均匀采样
    • p(wi)=1/2πp(w_i) = 1/2\pip(wi)=1/2π
  • path tracing

    • 在这里插入图片描述

    • 加上间接光照

      • 对于打到的物体,算物体以-w_i方向发出的光照(即在p点看q点发出的直接光照)

      • 在这里插入图片描述

      • 在这里插入图片描述

    • 但是这样光线会指数爆炸

      • 在这里插入图片描述

      • 所以N = 1的时候能够避免这个问题

      • 在这里插入图片描述

    • 在这里插入图片描述

  • Ray Generation

    • 对一个像素内多个采样点进行采样
    • 在这里插入图片描述
  • 递归终止条件

    • Russian Roulette(RR)
    • 一定的概率来停止光线往下追踪
    • 在这里插入图片描述
  • 效率不高(多条光线可能只有一条能打到光源)

  • 直接从光源采样就能够不浪费

    • 但是在光源上积分的话,需要在光源上采样

    • 在这里插入图片描述

    • 根据立体角定义,可以得到dw和dA的关系

      • 在这里插入图片描述
    • 所以就可以根据关系改写渲染方程

      • 在这里插入图片描述
  • 所以分成两种光

    • 来自光源
      • 不需要RR
    • 来自其他非光源物体对他的贡献
      • 需要RR
  • 最终算法

    • 在这里插入图片描述
一个小问题
  • 光源可见性
    • 从P打一条光线去光源,看能不能打到光源
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值