nerfstudio+instant-ngp 渲染三维场景
1.环境配置
nerfstudio:
instant-ngp:
2.使用nerfstudio处理视频流
#video_path为视频路径
#data_path为视频所在文件夹路径
#NUM_FRAMES_TARGET为预计从视频中提取的影像帧数
#CAMERA_TYPE 可以是perspective,或者fisheye
ns-process-data video \
--data ${video_path} \
--output-dir ${data_path}/ns2 \
--num-frames-target ${NUM_FRAMES_TARGET} \
--num-downscales 1 \
--sfm-tool hloc \
--camera-type ${CAMERA_TYPE} \
--crop-factor 0.0 0.0 0.0 0.0 \
--verbose
–sfm-tool colmap或者hloc
注:如果选择hloc,则还需要安装hloc,该步骤参考博客:
https://blog.csdn.net/fengbingchun/article/details/130307992?spm=1001.2014.3001.5506
–crop-factor 0.0 0.0 0.0 0.0 (裁剪系数,默认为0,不裁剪)
3.转成colmap结果转成txt格式
mkdir -p ${data_path}/colmap_text
colmap model_converter --input_path ${data_path}/ns/colmap/sparse/0 --output_path ${data_path}/colmap_text --output_type TXT
3.使用instant-ngp渲染
生成transforms.json文件
python3 ./scripts/colmap2nerf.py \
--colmap_matcher vocab_tree \
--colmap_db ${data_path}/colmap.db \
--text ${data_path}/colmap_text \
--images ${data_path}/images/ \
--out ${data_path}/transforms.json \
--vocab_path "../colmap_voc_tree/vocab_tree_flickr100K_words256K.bin" \
--colmap_camera_model OPENCV \
训练
python3 ./scripts/run.py \
--training_data ${data_path} \
--save_snapshot ${data_path}/base.ingp \
--n_steps 60000 \
4.打开gui界面
./instant-ngp