gaussian-splatting/run_code.txt
2024-06-24 18:48:54 +08:00

81 lines
4.7 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Running:
# Train with train/test split
python train.py --source_path <path to COLMAP or NeRF Synthetic dataset> --model_path <保存路径> --eval
python train.py --source_path ../../Dataset/3DGS_Dataset/linggongtang --model_path output/linggongtang --data_device 'cpu' --eval --resolution 1
python train.py --source_path ../../Dataset/3DGS_Dataset/xiangjiadang --model_path output/xiangjiadang --data_device 'cpu' --eval --resolution 1
--source_path / -s数据集输入路径包含图片文件夹images, SfM输出文件夹sparse/0
--model_path / -m指定的训练模型存储路径默认为 output/<random>
--images / -i输入路径下存储图片的替代文件夹名默认为 images
--eval训练时默认使用全部图片添加此标志将在训练时按照MipNeRF360-style划分训练集/测试集每8张选1张作为测试集以用于 evaluation
--resolution / -r指定训练前加载图像的分辨率。如果是 1, 2, 4 or 8 则使用原始分辨率的 1/2, 1/4 or 1/8。
对于所有其他值,会将图像宽度调整到给定数字,同时保持图像宽高比;
如果未设置且输入图像宽度超过 1.6k 个像素,则输入将宽度自动缩放到 1.6k
--data_device指定源图像数据在训练时的放置位置默认使用cuda如果在大型/高分辨率数据集上进行训练建议使用cpu减少显存占用
--white_background / -w添加此标志以使用白色背景而不是黑色默认用于评估 NeRF Synthetic dataset
--sh_degree球谐函数的阶数不大于 3默认为 3
--convert_SHs_python添加此标志以使用PyTorch而不是论文提出的pipeline计算 SH系数的forward和backward默认为False
--convert_cov3D_python添加此标志以使用PyTorch而不是论文提出的pipeline计算 3D协方差的forward和backward默认为False
--debug如果遇到错误请启用调试模式。如果光栅化器失败dump则会创建一个文件默认为False
--debug_from调试速度慢。可以指定从哪一迭代>= 0开始
--ip启动 GUI 服务器的 IP默认为 127.0.0.1
--portGUI 服务器的端口,默认为 6009
--iterations训练的总迭代次数默认为 30_000
--test_iterations训练脚本在测试集上计算 L1 和 PSNR 的迭代次数,默认为 7000, 30000
--save_iterations训练脚本保存高斯模型的迭代次数默认为 7000, 30000
--checkpoint_iterations存储checkpoint的迭代次数以后续继续训练保存在model_path中
--start_checkpoint继续训练时要加载的checkpoint的路径
--quiet此标志用于不写入任何文本到标准输出管道
--position_lr_init位置学习率的初始值默认为 0.00016
--position_lr_final位置学习率的最终值默认为 0.0000016
--position_lr_delay_mult位置学习率的乘数默认为 0.01
--position_lr_max_steps位置学习率从初始值到最终值的步数从 0 开始),默认为 30_000
--feature_lr球谐函数的学习率默认为 0.0025
--opacity_lr不透明度的学习率默认为 0.05
--scaling_lr缩放尺度的学习率默认为 0.005
--rotation_lr旋转四元数的学习率默认为 0.001
--densify_from_iterdensification增稠开始的迭代次数默认为 500
--densify_until_iterdensification增稠结束的迭代次数默认为 15_000
--densify_grad_threshold决定是否应基于 2D 位置梯度对点进行densification的限制默认为0.0002
--densification_interval增稠的频率默认为 100每迭代100次进行1次
--opacity_reset_interval重置不透明度的频率默认为 3_000
--lambda_dssimSSIM在总损失的权重从 0 到 1默认为0.2
--percent_dense点必须超过场景范围的百分比才能强制增稠 (0--1)默认为0.01
#--------------------------------------------------------------------------
Evluation:
# Generate renderings
python render.py -m <path to trained model>
--model_path / -m训练模型输出路径, 在其子文件夹下生成训练或测试视角的渲染图同train中
--skip_train跳过渲染训练视角
--skip_test跳过渲染测试视角
--quiet不写入任何文本到标准输出管道
以下参数会从用于训练输出的model_path中自动读取但可覆写它们
--source_path / -s
--images / -i
--eval
--resolution / -r
--white_background / -w
--convert_SHs_python
--convert_cov3D_python
#--------------------------------------------------------------------------
# Compute error metrics on renderings
python metrics.py -m <path to trained model>
--model_paths / -m保存所有输出结果的文件夹路径同train中