基础环境配置
运行环境:Ubuntu20.04, CUDA11.6
按照GitHub项目https://github.com/sxyu/svox2.中的要求创建相关的虚拟环境
安装依赖:
sudo apt-get install \
git \
cmake \
build-essential \
libboost-program-options-dev \
libboost-filesystem-dev \
libboost-graph-dev \
libboost-system-dev \
libboost-test-dev \
libeigen3-dev \
libsuitesparse-dev \
libfreeimage-dev \
libgoogle-glog-dev \
libgflags-dev \
libglew-dev \
qtbase5-dev \
libqt5opengl5-dev \
libcgal-dev \
libatlas-base-dev \
libmetis-dev \
liblapack-dev libcxsparse3.1.4 libgflags-dev libgtest-dev
CUDA extension支持问题
svox/svox2的编译
分辨获取svox和svox2的源码。
svox:https://github.com/sxyu/svox
sovx2:https://github.com/sxyu/svox2
在项目地址的根目录下运行下述命令:
MAX_JOBS=16 pip3 install -vvv .
可根据机器性能提高线程数量,以加快编译速度。
colmap编译问题
编译安装ceres-solver
- 下载源码:
git clone https://github.com/ceres-solver/ceres-solver.git
- 到ceres根目录
mkdir build
cd build
cmake ..
make -j64
sudo make install
编译安装colmap
- 下载源码:
git clone https://github.com/colmap/colmap.git
- 编译安装
cd colmap
git checkout dev
mkdir build
cd build
cmake ..
make -j64
sudo make install
运行
训练
单个场景训练
进入opt目录,运行:
bash ./launch.sh <exp_name> <GPU_id> <data_dir> -c <config>
data_dir为当前目录到存放数据目录的相对目录 exp_name可随意指定, config文件存放在configs目录下
多个场景训练
配置文件存放在opt/tasks目录下,具体细节详见GitHub项目中的Parallel task executor
python autotune.py -g '<space delimited GPU ids>' tasks/eval.json
生成视频
python render_imgs.py <CHECKPOINT.npz> <data_dir>
data_dir为需要生成视频的图片目录,断点文件为该图片文件夹训练完成后生成的断点文件
使用拍摄照片构建数据集
- 生成数据集
opt/scripts目录下执行:
bash proc_colmap.sh <img_dir>
- 训练&生成视频