三维视觉新范式:深度解析NeRF与3DGS技术 / 通用智能与大模型丛书
定价:¥109.00
作者: 杨继珩
出版时间:2025-01
出版社:电子工业出版社
- 电子工业出版社
- 9787121484650
- 1-3
- 540849
- 60266918-6
- 平塑勒
- 16开
- 2025-01
- 500
- 380
- 工学
- 电子信息类
- 人工智能
- 本科 研究生及以上
内容简介
本书系统地阐述了计算机视觉中NeRF(神经辐射场)技术与 3DGS(三维高斯喷溅)技术的背景、原理与细节。为了深入解读这两种技术如何在速度优化、质量优化、动态场景生成、弱条件生成等方面实现技术创新,本书对它们的核心技术问题与解决方案进行了分类讲解。另外,针对NeRF与3DGS在实际应用过程中可能遇到的挑战进行了深入的分析与讨论。本书旨在帮助读者全方位地理解与认识这两种正在快速发展的技术,并为其进一步的学习、研究以及三维视觉应用的实践提供坚实的基础。
目录
第一部分 NeRF入门
1 NeRF简介 2
1.1 何谓NeRF 2
1.1.1 光栅化渲染与可微渲染 3
1.1.2 人工建模与自动建模 4
1.1.3 离散表示法与连续表示法 5
1.2 三维表达方式演化史与对比 7
1.2.1 点云 7
1.2.2 三维网格 8
1.2.3 体素网格 9
1.2.4 占据网络 10
1.2.5 NeRF 11
1.3 NeRF的行业现状和推动者 12
1.3.1 国外主要实验室 12
1.3.2 国内主要实验室 14
1.4 如何阅读本书 15
1.4.1 本书的结构 15
1.4.2 本书面向的读者 16
1.4.3 代码要求 16
1.4.4 写作风格 17
2 NeRF基础知识 18
2.1 三维空间基础 18
2.1.1 坐标系、点与向量 18
2.1.2 刚体运动的欧氏变换 22
2.1.3 变换矩阵与齐次坐标 24
2.1.4 四元数 25
2.1.5 小结 26
2.2 三维视觉与图形学基础 27
2.2.1 相机模型 27
2.2.2 辐射测量基础 31
2.2.3 光源 33
2.2.4 简单材质建模与着色 34
2.2.5 复杂材质建模与着色 38
2.2.6 光线追踪 40
2.3 深度学习基础 42
2.3.1 神经网络基础 44
2.3.2 基于神经网络学习的核心 45
2.3.3 小结 50
2.4 质量评价方法基础 50
2.4.1 二维平面空间质量评价 50
2.4.2 三维立体空间质量评价 52
2.5 总结 53
3 NeRF的技术细节 54
3.1 NeRF解决的问题 54
3.1.1 辐射场 55
3.1.2 神经辐射场 55
3.2 小试牛刀:NeRF原理介绍与代码实现 57
3.2.1 数据准备 57
3.2.2 环境准备 58
3.2.3 数据加载 60
3.2.4 生成射线 64
3.2.5 位置编码 66
3.2.6 MLP的结构 68
3.2.7 分层采样 72
3.2.8 体渲染技术 76
3.2.9 射线渲染 78
3.2.10 训练过程 81
3.2.11 模型渲染过程 85
3.2.12 小结 86
3.3 NeRF的开源项目:nerfstudio 87
3.3.1 nerfstudio的安装 88
3.3.2 nerfstudio的架构 90
3.3.3 nerfstudio的运行方法 92
3.3.4 nerfstudio的调试方法 96
3.3.5 整合自定义的算法模型 99
3.3.6 小结 103
3.4 NeRF常用的数据集 104
3.4.1公开的数据集 104
3.4.2构造自定义的数据集 113
3.5总结 113
第二部分 NeRF进阶探索
4优化NeRF的生成与渲染速度 115
4.1基于多MLP的加速方法 116
4.1.1 kiloNeRF的架构 116
4.1.2采样优化方法加速训练和推理 117
4.1.3蒸馏方法提升重建质量 118
4.2取代神经网络的方法 119
4.2.1 PlenOctrees 119
4.2.2 Plenoxels 124
4.3体素网格与MLP混合表达的方法 126
4.3.1 DVGO场景表达方法 126
4.3.2 DVGO快速优化方法 128
4.4基于多分辨率网格的速度提升方法 130
4.4.1多分辨率网格表达方法 130
4.4.2哈希存储 131
4.4.3 Instant-NGP的实现 132
4.5基于张量分解的速度提升方法 133
4.5.1张量分解方法 133
4.5.2基于张量分解方法的神经场TensoRF 135
4.5.3 TensoRF的实现 136
4.6基于烘焙方法的超实时渲染方法 136
4.6.1开山之作:SNeRG 137
4.6.2进一步优化的MERF 141
4.6.3支持超高速渲染的MobileNeRF 143
4.7 NeRF结合点云的速度提升方法 148
4.7.1 Point-NeRF场景表达方法 149
4.7.2 Point-NeRF神经点云的重建方法 149
4.7.3非Point-NeRF生成点云的优化方法 150
4.8基于硬件的NeRF加速的方法 151
4.8.1当前NeRF训练算法的性能分析 152
4.8.2 Instant-3D算法的设计 153
4.8.3 Instant-3D硬件加速器的设计 154
4.8.4性能结果 155
4.9总结 155
5提升NeRF的生成与渲染质量 157
5.1反走样类提升方法 157
5.1.1反走样的开山之作Mip-NeRF 158
5.1.2应对无界场景锯齿效应的Mip-NeRF360 167
5.1.3快速反走样算法Zip-NeRF 171
5.1.4基于三平面的反走样算法Tri-MipRF 174
5.2提升几何重建质量的方法 177
5.2.1神经隐式曲面生成算法 178
5.2.2 NeuS2:NeuS的加速与动态支持升级 184
5.2.3重建质量再次升级的Neuralangelo 187
5.3飘浮物去除方法 189
5.3.1 NeRFBuster:消除场景中的鬼影 190
5.3.2 Bayes’Rays:不确定性即飘浮物 192
5.4总结 195
6动态场景NeRF的探索和进展 196
6.1基于变形场的方法 197
6.1.1早期基于变形场的动态方法D-NeRF 197
6.1.2动态自拍场景的方法Nerfies 199
6.1.3基于超空间的动态场景重建方法HyperNeRF 202
6.2基于动静分离建模的方法 204
6.2.1动态场景解耦方法D2NeRF 204
6.2.2更通用的动静分离方法NeRFPlayer 208
6.3基于三平面的方法 210
6.3.1四维空间建模方法Hex-Plane 210
6.3.2更通用的多维平面建模方法K-Planes 213
6.4基于流式动态建模的方法 216
6.4.1 OD-NeRF的框架 217
6.4.2基于投影颜色引导的动态NeRF 218
6.4.3占据网络的转移与更新 218
6.5总结 219
7弱条件NeRF生成 220
7.1稀疏视角的NeRF重建方法 220
7.1.1基于策略优化与正则化的生成方法 221
7.1.2基于图像特征提取的生成方法 224
7.1.3基于几何监督的生成方法 235
7.2无相机位姿的NeRF重建方法 242
7.2.1静态无相机位姿重建方法 242
7.2.2动态场景弱相机位姿重建方法RoDynRF 245
7.3弱图像采集条件NeRF重建方法 250
7.3.1采集图像偏暗的重建方法 250
7.3.2采集图像模糊的重建方法 255
7.4总结 257
第三部分 NeRF实践
8 NeRF的其他关键技术 259
8.1将NeRF导出为三维网格的方法 259
8.1.1传统导出三维网格模型的方法 260
8.1.2基于NeRF的三维网格导出方法NeRF2Mesh 261
8.2 NeRF的逆渲染与重照明技术 264
1 NeRF简介 2
1.1 何谓NeRF 2
1.1.1 光栅化渲染与可微渲染 3
1.1.2 人工建模与自动建模 4
1.1.3 离散表示法与连续表示法 5
1.2 三维表达方式演化史与对比 7
1.2.1 点云 7
1.2.2 三维网格 8
1.2.3 体素网格 9
1.2.4 占据网络 10
1.2.5 NeRF 11
1.3 NeRF的行业现状和推动者 12
1.3.1 国外主要实验室 12
1.3.2 国内主要实验室 14
1.4 如何阅读本书 15
1.4.1 本书的结构 15
1.4.2 本书面向的读者 16
1.4.3 代码要求 16
1.4.4 写作风格 17
2 NeRF基础知识 18
2.1 三维空间基础 18
2.1.1 坐标系、点与向量 18
2.1.2 刚体运动的欧氏变换 22
2.1.3 变换矩阵与齐次坐标 24
2.1.4 四元数 25
2.1.5 小结 26
2.2 三维视觉与图形学基础 27
2.2.1 相机模型 27
2.2.2 辐射测量基础 31
2.2.3 光源 33
2.2.4 简单材质建模与着色 34
2.2.5 复杂材质建模与着色 38
2.2.6 光线追踪 40
2.3 深度学习基础 42
2.3.1 神经网络基础 44
2.3.2 基于神经网络学习的核心 45
2.3.3 小结 50
2.4 质量评价方法基础 50
2.4.1 二维平面空间质量评价 50
2.4.2 三维立体空间质量评价 52
2.5 总结 53
3 NeRF的技术细节 54
3.1 NeRF解决的问题 54
3.1.1 辐射场 55
3.1.2 神经辐射场 55
3.2 小试牛刀:NeRF原理介绍与代码实现 57
3.2.1 数据准备 57
3.2.2 环境准备 58
3.2.3 数据加载 60
3.2.4 生成射线 64
3.2.5 位置编码 66
3.2.6 MLP的结构 68
3.2.7 分层采样 72
3.2.8 体渲染技术 76
3.2.9 射线渲染 78
3.2.10 训练过程 81
3.2.11 模型渲染过程 85
3.2.12 小结 86
3.3 NeRF的开源项目:nerfstudio 87
3.3.1 nerfstudio的安装 88
3.3.2 nerfstudio的架构 90
3.3.3 nerfstudio的运行方法 92
3.3.4 nerfstudio的调试方法 96
3.3.5 整合自定义的算法模型 99
3.3.6 小结 103
3.4 NeRF常用的数据集 104
3.4.1公开的数据集 104
3.4.2构造自定义的数据集 113
3.5总结 113
第二部分 NeRF进阶探索
4优化NeRF的生成与渲染速度 115
4.1基于多MLP的加速方法 116
4.1.1 kiloNeRF的架构 116
4.1.2采样优化方法加速训练和推理 117
4.1.3蒸馏方法提升重建质量 118
4.2取代神经网络的方法 119
4.2.1 PlenOctrees 119
4.2.2 Plenoxels 124
4.3体素网格与MLP混合表达的方法 126
4.3.1 DVGO场景表达方法 126
4.3.2 DVGO快速优化方法 128
4.4基于多分辨率网格的速度提升方法 130
4.4.1多分辨率网格表达方法 130
4.4.2哈希存储 131
4.4.3 Instant-NGP的实现 132
4.5基于张量分解的速度提升方法 133
4.5.1张量分解方法 133
4.5.2基于张量分解方法的神经场TensoRF 135
4.5.3 TensoRF的实现 136
4.6基于烘焙方法的超实时渲染方法 136
4.6.1开山之作:SNeRG 137
4.6.2进一步优化的MERF 141
4.6.3支持超高速渲染的MobileNeRF 143
4.7 NeRF结合点云的速度提升方法 148
4.7.1 Point-NeRF场景表达方法 149
4.7.2 Point-NeRF神经点云的重建方法 149
4.7.3非Point-NeRF生成点云的优化方法 150
4.8基于硬件的NeRF加速的方法 151
4.8.1当前NeRF训练算法的性能分析 152
4.8.2 Instant-3D算法的设计 153
4.8.3 Instant-3D硬件加速器的设计 154
4.8.4性能结果 155
4.9总结 155
5提升NeRF的生成与渲染质量 157
5.1反走样类提升方法 157
5.1.1反走样的开山之作Mip-NeRF 158
5.1.2应对无界场景锯齿效应的Mip-NeRF360 167
5.1.3快速反走样算法Zip-NeRF 171
5.1.4基于三平面的反走样算法Tri-MipRF 174
5.2提升几何重建质量的方法 177
5.2.1神经隐式曲面生成算法 178
5.2.2 NeuS2:NeuS的加速与动态支持升级 184
5.2.3重建质量再次升级的Neuralangelo 187
5.3飘浮物去除方法 189
5.3.1 NeRFBuster:消除场景中的鬼影 190
5.3.2 Bayes’Rays:不确定性即飘浮物 192
5.4总结 195
6动态场景NeRF的探索和进展 196
6.1基于变形场的方法 197
6.1.1早期基于变形场的动态方法D-NeRF 197
6.1.2动态自拍场景的方法Nerfies 199
6.1.3基于超空间的动态场景重建方法HyperNeRF 202
6.2基于动静分离建模的方法 204
6.2.1动态场景解耦方法D2NeRF 204
6.2.2更通用的动静分离方法NeRFPlayer 208
6.3基于三平面的方法 210
6.3.1四维空间建模方法Hex-Plane 210
6.3.2更通用的多维平面建模方法K-Planes 213
6.4基于流式动态建模的方法 216
6.4.1 OD-NeRF的框架 217
6.4.2基于投影颜色引导的动态NeRF 218
6.4.3占据网络的转移与更新 218
6.5总结 219
7弱条件NeRF生成 220
7.1稀疏视角的NeRF重建方法 220
7.1.1基于策略优化与正则化的生成方法 221
7.1.2基于图像特征提取的生成方法 224
7.1.3基于几何监督的生成方法 235
7.2无相机位姿的NeRF重建方法 242
7.2.1静态无相机位姿重建方法 242
7.2.2动态场景弱相机位姿重建方法RoDynRF 245
7.3弱图像采集条件NeRF重建方法 250
7.3.1采集图像偏暗的重建方法 250
7.3.2采集图像模糊的重建方法 255
7.4总结 257
第三部分 NeRF实践
8 NeRF的其他关键技术 259
8.1将NeRF导出为三维网格的方法 259
8.1.1传统导出三维网格模型的方法 260
8.1.2基于NeRF的三维网格导出方法NeRF2Mesh 261
8.2 NeRF的逆渲染与重照明技术 264











