目录
安装CUDA
下载Gaussian Splatting的源码
创建Gaussian Splatting假造环境
下载数据集并练习
模型可视化
更新gcc和g++
更新cmake
安装eigen3.4.0
安装opencv4.9.0
安装远程可视化
官方说we used 11.8, known issues with 11.6。因此需要确保CUDA版本高于11.8。
CUDA官网链接:https://developer.nvidia.com/cuda-toolkit-archive
- wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run
- sudo sh cuda_11.8.0_520.61.05_linux.run
复制代码 安装完成后,配置并更新环境变量:
- vim ~/.profile
- #添加路径(此处展示的是默认路径,根据自己的路径来)
- export PATH=/usr/local/cuda-11.8/bin${PATH:+:${PATH}}
- export LD_LIBRARY_PATH=/usr/local/cuda-11.8/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
- source ~/.profile
复制代码 使用下面的下令查看你的CUDA版本:
留意:末了的--recursive特殊重要,不加的话submodules和sibr_viewers中部分东西装不上,影响后续环境配置。
- git clone https://github.com/graphdeco-inria/gaussian-splatting --recursive
复制代码
使用下面的下令实行,会自动为你创建一个名为 gaussian_splatting 的假造环境。并在安装完所需要的依赖库后激活。
- conda env create --file environment.yml
- conda activate gaussian_splatting
复制代码
数据集:3D Gaussian Splatting for Real-Time Radiance Field Rendering (inria.fr)。
scenes数据集包含了4个场景的图片,并已经通过convert.py举行colmap转换,可以直接用来做train.py。
我新建了一个data文件夹用来放数据和输出结果,然后可以开始练习了(-s后接数据路径-m后接输出路径):
- python train.py -s data/truck/ -m data/truck/output
复制代码 练习速度真的很快!其中L1是L1损失;PSNR是图像峰值信噪比,单元是dB,数值越大代表MSE越小,MSE越小代表两张图片越接近,失真就越小,因此PSNR值数值越大表现失真越小。
生成的output文件夹布局如下(程序会保存练习7000轮与30000轮时的模型):
更新gcc和g++
- cd /usr/bin
- sudo rm gcc
- sudo ln -s gcc-9 gcc
- sudo rm g++
- sudo ln -s g++-9 g++
复制代码 更新cmake
cmake官方列表:Index of /files (cmake.org) (官方文件说recent version, we used 3.24)
- #下载
- wget https://cmake.org/files/v3.25/cmake-3.25.0-linux-x86_64.tar.gz
- #解压
- tar -zxvf cmake-3.25.0-linux-x86_64.tar.gz
复制代码 cmake-3.25.0-Linux-x86_64.tar.gz压缩包里的文件是已经编译过的,解压就可以用!
- #将解压出来的包移到 /opt 目录下
- sudo mv cmake-3.25.0-linux-x86_64 /opt/cmake-3.25.0
- #建立软连接
- sudo ln -sf /opt/cmake-3.25.0/bin/* /usr/bin/
复制代码 查看版本
安装eigen3.4.0
不知道为什么我不绝进不去eigen官网https://eigen.tuxfamily.org/index.php?title=Main_Page
背面找到了这个下载链接:发布 · libeigen / eigen · GitLab
(写在前面:555安装这个是因为make opencv的时候提示egien版本不敷新,所以就用源码安装了一下。但是呢后续安装colmap的时候又提示eigen版本过高咋咋的,所以我又把它卸载了。大家可以根据自己的情况试试,我也是非常的迷惑。)
- #下载
- wget https://gitlab.com/libeigen/eigen/-/archive/3.4.0/eigen-3.4.0.zip
- #解压
- unzip eigen-3.4.0
- #进入文件夹
- cd eigen-3.4.0
- #创建build文件夹并进入
- mkdir build
- cd build
- #cmake构建
- cmake..
- make
- #安装
- sudo make install
- #复制文件夹(方便以后查找)
- sudo cp -r /usr/local/include/eigen3 /usr/include
- #查看当前版本
- pkg-config --modversion eigen3
复制代码 安装opencv4.9.0
官网:Releases - OpenCV
github地点:https://github.com/opencv
- #下载opencv
- git clone https://github.com/opencv/opencv.git
- #进入源码文件夹
- cd opencv
- #下载opencv_contrib
- git clone https://github.com/opencv/opencv_contrib.git
复制代码 安装依赖
- sudo apt-get update
- sudo apt-get upgrade
- sudo apt-get install cmake gfortran
- sudo apt-get install python3 python3-dev python3-numpy
- sudo apt-get install libjpeg-dev libtiff-dev libgif-dev
- sudo apt-get install libgstreamer1.0-dev gstreamer1.0-gtk3
- sudo apt-get install libgstreamer-plugins-base1.0-dev gstreamer1.0-gl
- sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev
- sudo apt-get install libgtk2.0-dev libcanberra-gtk*
- sudo apt-get install libxvidcore-dev libx264-dev libgtk-3-dev
- sudo apt-get install libtbb2 libtbb-dev libdc1394-22-dev libv4l-dev
- sudo apt-get install libopenblas-dev libatlas-base-dev libblas-dev
- sudo apt-get install protobuf-compiler
复制代码 编译安装
- #在opencv文件夹下
- mkdir build
- cd build
- cmake -D WITH_TBB=ON -D WITH_EIGEN=ON -D OPENCV_GENERATE_PKGCONFIG=ON -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_EXTRA_MODULES_PATH=../opencv_contrib/modules -D OPENCV_ENABLE_NONFREE=ON ..
- sudo make -j8
- sudo make install
复制代码 环境配置
- #修改文件
- sudo vim /etc/ld.so.conf
- #在文件中输入,并保存退出
- /usr/local/lib
- #执行命令
- sudo ldconfig
复制代码- #修改文件
- sudo vim /etc/bash.bashrc
- #在文件中输入,并保存退出
- PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
- export PKG_CONFIG_PATH
- #执行命令
- source /etc/bash.bashrc
复制代码 查看版本号:pkg-config --modversion opencv4
安装远程可视化
- #安装依赖
- sudo apt install -y libglew-dev libassimp-dev libboost-all-dev libgtk-3-dev libopencv-dev libglfw3-dev libavdevice-dev libavcodec-dev libeigen3-dev libxxf86vm-dev libembree-dev
- #进入文件夹
- cd SIBR_viewers
- #因为我是20.04版本,所以还要加一句
- #22.04版本不需要加
- git checkout fossa_compatibility
- #构建安装
- cmake -Bbuild . -DCMAKE_BUILD_TYPE=Release
- cmake --build build -j24 --target install
复制代码 在这个过程中出现了非常多的标题hai
大多数都是版本不划一造成的(所以大家可能不会遇到)
我的办理办法就是遇到一个办理一个 耗时很久
终于在众多编译的警告下安装成功(看的真是心脏怦怦跳)
在SIBR_viewers/install/bin文件夹内如下:
接下来就是见证古迹的时刻(我用的MobaXterm):
- ./SIBR_gaussianViewer_app -m /home/lyc/3dgs-code/gaussian-splatting/data/truck/output
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |