3D Gaussian splatting中的球谐函数与球谐光照

0.概述

球谐函数是指一种定义在球面上的特殊函数,它在处理三维空间中的球形对称性问题时非常有用,特别是在图形学和计算机视觉领域。具体来说,球谐函数是球面上的傅立叶级数展开,可以用来逼近和插值球面上的数据,如光照强度或颜色分布。在3D GS原文中提到的球谐光照技术,就是利用球谐函数来高效地模拟和渲染复杂的环境光照效果。

1.引入

1.1 球坐标系中的拉普拉斯方程

三维空间的拉普拉斯方程为

​​​​​​​ ​​​​​​​

使用球坐标系中的拉普拉斯算子得:

​​​​​​​ ​​​​​​​ ​​​​​​​

其通解为:

​​​​​​​ `

上述通解中,一般把在单位球面上归一化后的关于 的函数称为球谐函数,记为

原则上 m 可以取任意实数,但由于球坐标中的循环边界条件要求约束,m 只能取任意整数。那么解的形式可以表示为:

​​​​​​​

这里 称为勒让德函数,如果考虑的问题具有 方向的对称性,那么的展开式中将只涉及到 的球谐函数,这时关联勒让德函数就退化为勒让德多项式,详见下文。

1.2 关联勒让德函数

关联勒让德方程来源于在球坐标系中使用分离变量法解拉普拉斯方程:

​​​​​​​

其中参数 l,m 分别叫做次数(degree)阶数(order)

时,该方程变为勒让德方程:

​​​​​​​ ​​​​​​​ ​​​​​​​

方程的解 是关于 阶多项式

​​​​​​​

​​​​​​​ ​​​​​​​

图 1:勒让德多项式

最广义的情况下, 都可以是任意复数。实际应用中通常只考虑整数 ,且的情况,同时只讨论区间 。这些限制在实际应用中是最常见的。此时方程的解是关联勒让德函数(associated Legendre function) 可用勒让德多项式

生成:

​​​​​​​ ​​​​​​​ ​​​​​​​

注意当 时有

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​

当 m 为奇数时, 并不是一个多项式,但习惯上称之为关联勒让德多项式 。式中 称为Shortley-Condon 相位.

1.3 球谐函数

上述关于极角 的函数为关联勒让德函数,方向角函数为。那么定义**球谐函数(spherical harmonics)**为

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​

其中 表示一个单位矢量

,指向球坐标中的点 。l,m 为整数, 是归一化系数,使得 在单位球面上的面积分等于 1。

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​

球谐函数可以看作是将单位球面上的每一点(或三维空间中的每个方向)映射到一个复数函数值。

图 1: 平面的极坐标曲线。红色代表正值,蓝色代表负值。

2.球谐函数

3.球谐系数

4.球谐光照模型

相关推荐
小草帽学编程14 小时前
camera功能真的那么难用吗
数码相机·图形渲染
EtpBot-萧阳10 天前
SDL2常用函数:SDL_Texture 数据结构及使用介绍
图形渲染·sdl2·硬件加速
清 澜11 天前
《三维点如何映射到图像像素?——相机投影模型详解》
计算机视觉·机器人·自动驾驶·slam·三维重建·三维视觉·投影变换
GISer_Jing12 天前
工作流长任务处置方案
前端·编辑器·图形渲染
EtpBot-萧阳12 天前
SDL2常用函数:SDL_BlitSurface&SDL_UpdateWindowSurface 数据结构及使用介绍
算法·ffmpeg·图形渲染·sdl2
大势智慧16 天前
6.6重建大师常见空三问题
大数据·人工智能·科技·三维重建·实景三维
冒泡P16 天前
Unity Shader入门(更新中)
unity·c#·游戏引擎·图形渲染·着色器
平和男人杨争争17 天前
山东大学计算机图形学期末复习15——CG15
人工智能·算法·计算机视觉·图形渲染
龙湾开发19 天前
计算机图形学编程(使用OpenGL和C++)(第2版)学习笔记 13.几何着色器(二)爆炸效果&修改图元类型
c++·笔记·学习·3d·图形渲染·着色器
平和男人杨争争19 天前
山东大学计算机图形学期末复习11——CG13上
算法·图形渲染