运行代码
- 查看虚拟环境的命令:conda env list
- 在目录hufei/code/gaussian-spaltting,激活虚拟环境conda activate gaussian
- unexpected token ‘newline’ - 尝试1: dos2unix run.sh,失败,无法打开文件
- - 尝试2: set +o posix,没有报错但是无效
- - 尝试3: 输入的python train.py -s <path to COLMAP or NeRF Synthetic dataset>命令中,<path to COLMAP or NeRF Synthetic dataset>应该是一个自己创建的根目录下的文件夹./dataset/db/playroom,用来存放一组输入的照片。即输入python train.py -s ./dataset/db/playroom
查看代码
- 下载finalshell中复现好的代码
- 阅读read.me
- 梳理代码框架
阅读论文
- 下载论文并通读
- 看他人资料辅助理解:知乎、b站、YouTube的AI葵
- 总结论文流程
代码框架与论文流程的对应
step1: initialization | |
step2: projection | |
adaptive density control | gaussian_renderer |
step3: differentiable tile rasterize | submodules/diff-gaussian-rasterization |
其他代码文件
- arguments文件夹:一些可调的参数
- lpipsPyTorch文件夹:测量比较各个网络训练结果的LPIPS
- scene文件夹:cameras.py,加载colmap三维重建框架,读取数据库,其中的gaussian_model.py包含加载、缩放旋转、优化、activation、densification
- SIBR_viewers文件夹:引用开源的《A System for Image Based Rendering》,来构建interactive viewer
- utils文件夹:存放一些公共的可全局调用的文件
- convert.py:特征提取和匹配,捆绑调整(bundle adjuestment,从一组照片中重建三维模型),将image转化为ideal pinhole intrinsics
- full_eval.py:和MipNeRF等比较
- metrics.py:读图像,评估
- render.py:渲染
- train.py:训练,报告