
LoG项目完全指南从零开始搭建大规模3D场景渲染系统【免费下载链接】LoGLevel of Gaussians项目地址: https://gitcode.com/gh_mirrors/log6/LoGLoGLevel of Gaussians是一个强大的3D场景渲染系统能够利用单张RTX 4090显卡训练高度逼真的城市级模型并实现实时渲染。本指南将帮助你从零开始搭建并运行这一先进的3D渲染系统即使你是3D建模领域的新手也能轻松上手。 为什么选择LoGLoG项目凭借其创新的高斯层级技术在3D场景渲染领域脱颖而出。它不仅能够处理大规模场景还能在保证渲染质量的同时实现实时交互为开发者和设计师提供了一个高效、灵活的3D建模解决方案。无论是城市规划、游戏开发还是虚拟现实应用LoG都能满足你的需求。 准备工作在开始安装LoG之前请确保你的系统满足以下要求操作系统Linux推荐Ubuntu显卡NVIDIA RTX 4090或同等性能的GPU已安装Anaconda或Miniconda足够的存储空间至少20GB 安装步骤1. 创建并激活虚拟环境首先我们需要创建一个专门的Python环境来运行LoG项目conda create --name LoG python3.10 -y conda activate LoG2. 安装PyTorch和相关依赖LoG需要特定版本的PyTorch和torchvision以支持CUDA 11.8pip install torch2.0.1cu118 --extra-index-url https://download.pytorch.org/whl/cu118 pip install torchvision0.15.2cu118 --extra-index-url https://download.pytorch.org/whl/cu1183. 克隆项目仓库接下来克隆LoG项目仓库并安装所需的依赖包git clone https://gitcode.com/gh_mirrors/log6/LoG cd LoG pip install -r requirements.txt4. 安装必要的子模块LoG依赖于一些外部库需要单独安装mkdir submodules cd submodules git clone https://github.com/graphdeco-inria/diff-gaussian-rasterization.git --recursive pip install ./diff-gaussian-rasterization -v git clone https://github.com/chingswy/diff-gaussian-rasterization.git mydiffgaussian --recursive cd mydiffgaussian git checkout antialias pip install . -v cd .. git clone https://gitlab.inria.fr/bkerbl/simple-knn.git pip install ./simple-knn -v cd ..5. 安装LoG包最后以可编辑模式安装LoG包方便后续开发和修改pip install -e .6. 安装MiDaS可选如果你需要使用深度估计功能可以安装MiDaSgit clone https://github.com/isl-org/MiDaS.git --depth1 cd MiDaS/weights wget -c https://github.com/isl-org/MiDaS/releases/download/v3_1/dpt_beit_large_512.pt cd .. cp ../../docs/external/run_midas.py ./ pip install timm0.6.12 imutils7. 设置交互式GUI可选LoG提供了一个交互式GUI用于可视化和操作3D模型cd submodules git clone https://github.com/zju3dv/EasyVolcap.git cd EasyVolcap pip install -v -e . --no-deps pip install pdbr h5py PyGLM imgui-bundle addict yapf ujson scikit-image cuda-python ruamel.yaml cd ../.. 数据集准备使用示例数据集LoG提供了一个示例数据集你可以通过以下链接获取示例数据集。下载并解压后将其放置在data/feicuiwan_sample_folder目录下。验证数据集完整性python3 apps/test_dataset.py --cfg config/example/test/dataset.yml split dataset检查点云投影是否正确python3 apps/test_pointcloud.py --cfg config/example/test/dataset.yml split dataset radius 0.01输出结果将保存在debug/目录中。准备自己的数据集如果你想使用自己的数据集需要按照以下步骤进行准备1. 图像组织将你的图像按照以下结构组织data ├── images │ ├── DJI_0144.JPG │ ├── DJI_0145.JPG │ └── ...如果使用多个相机拍摄可以按相机组织图像data └── images ├── h ├── q ├── x ├── y └── z2. 运行COLMAP使用COLMAP进行稀疏重建datapath_to_your_dataset # 单相机 colmap feature_extractor --database_path ${data}/database.db --image_path ${data}/images --ImageReader.camera_model OPENCV --ImageReader.single_camera 1 --SiftExtraction.use_gpu 0 # 多相机 colmap feature_extractor --database_path ${data}/database.db --image_path ${data}/images --ImageReader.camera_model OPENCV --ImageReader.single_camera_per_folder 1 --SiftExtraction.use_gpu 0 # 匹配和重建 colmap exhaustive_matcher --database_path ${data}/database.db --SiftMatching.use_gpu 0 mkdir -p ${data}/sparse colmap mapper --database_path ${data}/database.db --image_path ${data}/images --output_path ${data}/sparse3. 检查COLMAP结果python3 apps/calibration/read_colmap.py ${data}/sparse/0 --min_views 2 开始训练完成数据集准备后你可以开始训练模型了。使用以下命令启动训练python3 apps/train.py --cfg config/example/test/train.yml对于大型场景如UrbanScene3D中的Hospital或Campus数据集你可以使用相应的配置文件# Hospital数据集 python3 apps/train.py --cfg config/example/Hospital/train_wdepth.yml # Campus数据集 python3 apps/train.py --cfg config/example/Campus/train_wdepth.yml 可视化训练结果训练完成后你可以使用GUI工具可视化结果python3 apps/gui.py filenameconfig/example/test/train.yml ckptnameoutput/example/test/log/model_latest_wotrain.pth在GUI中你可以使用鼠标进行交互拖动旋转视角滚轮缩放右键拖动平移W/A/S/D键移动相机 进阶技巧处理大规模场景对于大规模场景LoG提供了专门的预处理方法。例如处理UrbanScene3D的Hospital数据集# 特征提取 colmap feature_extractor --database_path ${data}/database.db --image_path ${data}/images --ImageReader.camera_model OPENCV --ImageReader.single_camera_per_folder 1 --SiftExtraction.use_gpu 0 # 匹配 colmap vocab_tree_matcher --database_path ${data}/database.db --VocabTreeMatching.vocab_tree_path ./vocab_tree_flickr100K_words1M.bin --VocabTreeMatching.num_images 100 --SiftMatching.use_gpu 0 # 重建 mkdir ${data}/sparse colmap mapper --database_path ${data}/database.db --image_path ${data}/images --output_path ${data}/sparse # 对齐 python3 apps/calibration/align_with_cam.py --colmap_path ${data}/sparse/0 --target_path ${data}/sparse_align python3 apps/calibration/read_colmap.py ${data}/sparse_align --min_views 3使用GPS信息如果你的数据集包含GPS信息可以利用GPS进行图像匹配和对齐# 读取GPS信息 python3 apps/calibration/read_gps_info.py --image_path ${data}/images --output_path ${data}/gps.npy --multifolder # 使用GPS对齐 python3 apps/calibration/align_with_gps.py --gps_path ${data}/gps.npy --colmap_path ${data}/sparse/0 --output_colmap_path ${data}/sparse_align️ 项目结构LoG项目的主要结构如下model/: 包含核心的高斯层级模型实现如model/level_of_gaussian.pyrender/: 渲染相关代码包括render/renderer.pydataset/: 数据集处理模块如dataset/colmap.pyapps/: 应用程序入口包括训练和测试脚本config/: 配置文件如config/example/test/train.ymldocs/: 项目文档如docs/install.md和docs/preprocess.md 总结通过本指南你已经了解了如何从零开始搭建和使用LoG项目进行大规模3D场景渲染。从环境配置到数据集准备再到模型训练和结果可视化每一步都详细介绍了操作方法。无论你是3D建模的新手还是有经验的开发者LoG都能为你提供一个强大而灵活的工具来创建逼真的3D场景。现在是时候开始你的3D渲染之旅了如有任何问题可以参考项目的官方文档或在社区寻求帮助。祝你使用LoG项目创造出令人惊叹的3D作品【免费下载链接】LoGLevel of Gaussians项目地址: https://gitcode.com/gh_mirrors/log6/LoG创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考