gaustudio

gaustudio

模块化框架推动3D高斯散射技术创新与应用

GauStudio作为3D高斯散射(3DGS)领域的模块化框架,整合了全面数据集、网格提取工具和纹理绑定功能。该框架支持多种3DGS方法研究,优化复杂场景处理流程,并为室内外场景重建提供新方案。GauStudio旨在促进3DGS技术在多领域的应用与创新。

GauStudio3D Gaussian Splatting3DGS三维重建计算机视觉Github开源项目
<p align="center"> <picture> <img alt="gaustudio" src="https://yellow-cdn.veclightyear.com/835a84d5/c221b20c-4d52-41dc-a654-8ec1f495980d.PNG" width="30%"> </picture> </p> <p align="center"> <b>GauStudio是一个模块化框架,支持并加速在快速发展的3D高斯散射(3DGS)及其多样化应用领域的研究和开发。</b> </p> <img alt="gaustudio" src="https://github.com/GAP-LAB-CUHK-SZ/gaustudio/assets/40767265/c7ae8183-583f-4467-ab67-e34c77c3bfd6" width="100%">

论文 | 文档(即将推出)

<br/>

以下是经过改进的文本,结构和流程更佳:

数据集

百度网盘下载 | Hugging Face下载(即将推出)

为全面评估3DGS方法在不同光照条件、材质和几何结构下的鲁棒性,我们精心策划了以下数据集:

1. COLMAP格式的5个合成数据集集合

我们整合了5个合成数据集:nerf_synthetic、refnerf_synthetic、nero_synthetic、nsvf_synthetic和BlendedMVS,共143个复杂的真实场景。为确保兼容性,我们利用COLMAP基于原始姿态进行特征匹配和三角测量,统一将所有数据转换为COLMAP格式。

2. 具有高质量法线标注和LoFTR初始化的真实场景

  • COLMAP格式的MuSHRoom:为解决获取室内场景数据(如ScanNet++)的困难,我们基于公开可用的MuSHRoom数据集处理并生成了兼容COLMAP的数据。请记得在原许可证下使用此数据。

  • 更完整的Tanks and Temples:为解决Tanks and Temples测试集缺乏真实姿态的问题,我们将MVSNet提供的姿态信息转换生成了COLMAP格式数据。这支持在更广泛的室内外场景上评估算法。排行榜提交脚本将在后续版本中发布。

  • 法线标注和LoFTR初始化:为应对稀疏视点和镜面高光区域等建模挑战,我们基于私有模型标注了高质量、时间一致的法线数据,为室内和无界场景3DGS重建提供了新途径。标注代码将soon发布。此外,我们提供基于LoFTR的初始点云,以支持更好的初始化。

安装

安装软件前,请注意以下步骤已在Ubuntu 20.04上测试。如果在Windows上安装遇到任何问题,我们愿意解决这些问题。

先决条件

  • NVIDIA显卡,至少6GB显存
  • 已安装CUDA
  • Python >= 3.8

可选步骤:创建Conda环境

建议在安装前创建conda环境。你可以使用以下命令创建conda环境:

# 创建新的conda环境 conda create -n gaustudio python=3.8 # 激活conda环境 conda activate gaustudio

步骤1:安装PyTorch

你需要安装PyTorch。本软件已在torch1.12.1+cu113和torch2.0.1+cu118版本上测试,但其他版本应该也能正常工作。你可以使用conda安装PyTorch,如下所示:

# 安装PyTorch 1.12.1+cu113版本的示例命令
conda install pytorch=1.12.1 torchvision=0.13.1 cudatoolkit=11.3 -c pytorch

# 安装PyTorch 2.0.1+cu118版本的示例命令
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu118

步骤2:安装依赖

运行以下命令安装必要的依赖:

pip install -r requirements.txt

步骤3:安装自定义光栅化器和Gaustudio

cd submodules/gaustudio-diff-gaussian-rasterization
python setup.py install
cd ../../
python setup.py develop

可选步骤:安装PyTorch3D

如果你需要网格渲染和进一步的网格优化,可以按照链接安装PyTorch3D:

快速开始

3DGS的网格提取

<p align="center"> <picture> <img alt="gaustudio" src="https://github.com/GAP-LAB-CUHK-SZ/gaustudio/assets/40767265/ee6bf7ae-379b-4264-9065-2929f1654c9a" width="100%"> </picture> </p>

准备输入数据

我们目前支持大多数高斯散射方法生成的输出目录,如3DGSmip-splattingGaussianPro,具有以下最小结构:

- output_dir
    - cameras.json (必需)
    - point_cloud 
        - iteration_xxxx
            - point_cloud.ply (必需)

我们正在准备一些演示数据(即将推出)用于快速开始测试。

运行网格提取

要从输入数据提取网格,运行以下命令:

gs-extract-mesh -m ./data/1750250955326095360_data/result -o ./output/1750250955326095360_data

./data/1750250955326095360_data/result替换为你的输入output_dir路径。 将./output/1750250955326095360_data替换为所需的输出网格路径。

为网格绑定纹理

输出数据的组织方式与mvs-texturing相同。按照以下步骤为网格添加纹理:

  • 在你的系统上编译mvs-texturing仓库。
  • 将build/bin目录添加到你的PATH环境变量中。
  • 导航到包含网格的输出目录。
  • 运行以下命令:
texrecon ./images ./fused_mesh.ply ./textured_mesh --outlier_removal=gauss_clamping --data_term=area --no_intermediate_results

发布计划

GauStudio将在不久的将来支持更多基于3DGS的方法,如果你也对GauStudio感兴趣并想改进它,欢迎提交PR!

  • 发布网格提取和渲染工具包
  • 发布常见nerf和neus数据集加载器和预处理代码
  • 发布半密集、基于MVSplat和基于DepthAnything的高斯初始化
  • 发布完整的训练流程
  • 发布高斯天空建模和天空掩码生成脚本
  • 发布VastGaussian重新实现
  • 发布Mip-Splatting、Scaffold-GS和Triplane-GS训练
  • 发布'gs-viewer'用于在线可视化和'gs-compress'用于3DGS后处理
  • 发布SparseGS和FSGS训练
  • 发布Sugar和GaussianPro训练

BibTeX

如果你发现这个库对你的研究有用,请考虑引用:

@article{ye2024gaustudio,
  title={GauStudio: A Modular Framework for 3D Gaussian Splatting and Beyond},
  author={Ye, Chongjie and Nie, Yinyu and Chang, Jiahao and Chen, Yuantao and Zhi, Yihao and Han, Xiaoguang},
  journal={arXiv preprint arXiv:2403.19632},
  year={2024}
}

许可证

除光栅化器外,代码均以MIT许可证发布。我们也欢迎商业合作,以推进3DGS的应用并解决尚未解决的问题。如果你有兴趣,欢迎联系Chongjie,邮箱:chongjieye@link.cuhk.edu.cn

编辑推荐精选

讯飞智文

讯飞智文

一键生成PPT和Word,让学习生活更轻松

讯飞智文是一个利用 AI 技术的项目,能够帮助用户生成 PPT 以及各类文档。无论是商业领域的市场分析报告、年度目标制定,还是学生群体的职业生涯规划、实习避坑指南,亦或是活动策划、旅游攻略等内容,它都能提供支持,帮助用户精准表达,轻松呈现各种信息。

AI办公办公工具AI工具讯飞智文AI在线生成PPTAI撰写助手多语种文档生成AI自动配图热门
讯飞星火

讯飞星火

深度推理能力全新升级,全面对标OpenAI o1

科大讯飞的星火大模型,支持语言理解、知识问答和文本创作等多功能,适用于多种文件和业务场景,提升办公和日常生活的效率。讯飞星火是一个提供丰富智能服务的平台,涵盖科技资讯、图像创作、写作辅助、编程解答、科研文献解读等功能,能为不同需求的用户提供便捷高效的帮助,助力用户轻松获取信息、解决问题,满足多样化使用场景。

热门AI开发模型训练AI工具讯飞星火大模型智能问答内容创作多语种支持智慧生活
Spark-TTS

Spark-TTS

一种基于大语言模型的高效单流解耦语音令牌文本到语音合成模型

Spark-TTS 是一个基于 PyTorch 的开源文本到语音合成项目,由多个知名机构联合参与。该项目提供了高效的 LLM(大语言模型)驱动的语音合成方案,支持语音克隆和语音创建功能,可通过命令行界面(CLI)和 Web UI 两种方式使用。用户可以根据需求调整语音的性别、音高、速度等参数,生成高质量的语音。该项目适用于多种场景,如有声读物制作、智能语音助手开发等。

Trae

Trae

字节跳动发布的AI编程神器IDE

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

AI工具TraeAI IDE协作生产力转型热门
咔片PPT

咔片PPT

AI助力,做PPT更简单!

咔片是一款轻量化在线演示设计工具,借助 AI 技术,实现从内容生成到智能设计的一站式 PPT 制作服务。支持多种文档格式导入生成 PPT,提供海量模板、智能美化、素材替换等功能,适用于销售、教师、学生等各类人群,能高效制作出高品质 PPT,满足不同场景演示需求。

讯飞绘文

讯飞绘文

选题、配图、成文,一站式创作,让内容运营更高效

讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。

热门AI辅助写作AI工具讯飞绘文内容运营AI创作个性化文章多平台分发AI助手
材料星

材料星

专业的AI公文写作平台,公文写作神器

AI 材料星,专业的 AI 公文写作辅助平台,为体制内工作人员提供高效的公文写作解决方案。拥有海量公文文库、9 大核心 AI 功能,支持 30 + 文稿类型生成,助力快速完成领导讲话、工作总结、述职报告等材料,提升办公效率,是体制打工人的得力写作神器。

openai-agents-python

openai-agents-python

OpenAI Agents SDK,助力开发者便捷使用 OpenAI 相关功能。

openai-agents-python 是 OpenAI 推出的一款强大 Python SDK,它为开发者提供了与 OpenAI 模型交互的高效工具,支持工具调用、结果处理、追踪等功能,涵盖多种应用场景,如研究助手、财务研究等,能显著提升开发效率,让开发者更轻松地利用 OpenAI 的技术优势。

Hunyuan3D-2

Hunyuan3D-2

高分辨率纹理 3D 资产生成

Hunyuan3D-2 是腾讯开发的用于 3D 资产生成的强大工具,支持从文本描述、单张图片或多视角图片生成 3D 模型,具备快速形状生成能力,可生成带纹理的高质量 3D 模型,适用于多个领域,为 3D 创作提供了高效解决方案。

3FS

3FS

一个具备存储、管理和客户端操作等多种功能的分布式文件系统相关项目。

3FS 是一个功能强大的分布式文件系统项目,涵盖了存储引擎、元数据管理、客户端工具等多个模块。它支持多种文件操作,如创建文件和目录、设置布局等,同时具备高效的事件循环、节点选择和协程池管理等特性。适用于需要大规模数据存储和管理的场景,能够提高系统的性能和可靠性,是分布式存储领域的优质解决方案。

下拉加载更多