Project Icon

GeoGaussian

几何感知高斯分布的场景渲染新方法

GeoGaussian是一种创新的场景渲染方法,利用几何感知的高斯分布优化来保持场景结构。它通过初始化表面对齐的薄高斯分布和约束优化,有效保持了场景的几何和纹理特征。该方法在新视角合成和几何重建方面表现优异,尤其适合结构化区域。项目开源了代码、数据集和使用说明,为计算机视觉研究提供了有价值的资源。

GeoGaussian:基于几何信息的高斯点云融合渲染(ECCV 2024)


📖 摘要

在高斯点云融合优化过程中,如果没有特意保护场景几何结构,特别是无纹理区域如墙壁、天花板和家具表面,场景几何会逐渐恶化。这种退化严重影响了与训练数据视角差异较大的新视图的渲染质量。

为解决这一问题,我们提出了一种称为GeoGaussian的新方法。基于点云观察到的平滑连接区域,该方法引入了一种新的流水线来初始化与表面对准的细长高斯模型,并通过精心设计的密集化策略将其特性传递到新的生成中。最后,该流水线通过带有显式几何约束的约束优化过程确保场景几何和纹理得到维护。得益于所提出的架构,3D高斯的生成能力在结构化区域得到增强。

我们提出的流水线在新视图合成和几何重建方面达到了最先进的性能,在公共数据集上进行了定性和定量评估。

image image image
3DGS | LightGS | GeoGaussian(Ours)

在公共数据集上的新视图渲染对比。在某些具有较大平移和旋转差异的具有挑战性的视角下,3DGS和LightGS在照片级渲染方面存在问题。

📋 待办事项

  • 仓库 - 创建GeoGaussian仓库。
  • 代码 - 发布我们的方法。
  • 代码 - 为每个高斯点随机采样N个点脚本
  • 数据集 - 上传数据集下载链接。
  • 自述文件 - 预告片( I II III )图像和摘要
  • 自述文件 - 基于几何的策略
  • 自述文件 - GeoGaussian的设置。
  • 自述文件 - 表I和表II的结果
  • 自述文件 - 许可证致谢引用
  • 许可证 - 根据高斯融合许可证发布。
  • 测试 - 在Windows工作站上进行了测试
  • 测试 - 在Ubuntu服务器上进行了测试

🚀 基于几何信息的策略

image
  • 在仔细设计的初始化和密集化策略中采用了具有显式几何意义的细长3D高斯参数化,以建立合理的3D高斯模型。
  • 提出了几何一致性约束,鼓励细长高斯与平滑表面保持一致排列。

💾 数据集

基于SLAM方法PlanarSLAM,我们创建了新的点云而不是使用COLMAP的结果进行实验。

此类输入的新特性:

  1. 位于非纹理区域的点
  2. 用不同颜色表示的全局平面实例
  3. 每个平面点的表面法向量

可以通过以下链接获取子数据集: Replica (PlanarSLAM)TUM RGB-D (PlanarSLAM)ICL NUIM (PlanarSLAM)。 然后需要将原始数据集图像放在"results"文件夹中。 原始图像可以通过以下链接获取: ReplicaTUM RGB-DICL NUIM。 每个序列的结构组织如下:

Replica_r2
	|______PointClouds.ply          # SLAM系统生成的稀疏点云
 	|______KeyFrameTrajectory2.txt  # SLAM系统生成的相机位姿
  	|______results                  # 所有原始图像的文件夹

我们的代码提供了处理这种数据格式的接口。

🎓 基准线

1. 基于平面点云的高斯溅射 代码仓库

🔧 GeoGaussian的设置

1. 克隆代码仓库。

# https
git clone https://github.com/yanyan-li/GeoGaussian
# or ssh
git clone git@github.com:yanyan-li/GeoGaussian.git

2. 环境设置。

如果你已有3dgs环境,可直接使用。 否则请参考3DGS environment的环境配置。 我们的代码仓库中提供了environment.yml文件。

此外,你还需要安装open3dscipymatplotlibpillow库。

# 如果你已经安装了3dgs环境,
# 请激活该环境,并执行以下命令:
conda activate gaussian_splatting
pip install open3d scipy matplotlib pillow

3. 下载演示数据集

  • 创建一个新的data文件夹
  • 下载文件(Replica OFF2).
  • 将其解压到data文件夹中。

4. 运行代码

为了运行我们的代码, 你应该指定数据集的路径, 该路径应包含KeyFrameTrajectory.txt文件或sparse文件夹, 并指定输入图像的稀疏度,即输入图像之间的间隔。

# python train.py -s [path_to_dataset] --sparse_num [N]( 1 ==> 100% images, 5 ==> 20% images)

运行演示:

python train.py -s data/Replica-OFF2 --sparse_num 1

然后你会发现output文件夹中有一个特定的xxxxxxxx-x目录, 以及depthrgb目录, 它们分别存储训练过程中渲染的RGB和深度图像。

📊 结果

方法
数据
3DGS
LightGS
GeoGaussian(我们的)
R1
PSNR↑
SSIM↑
LPIPS↓
30.4933.9837.4537.6030.5434.0637.7238.4431.6535.1738.0038.24
0.9320.9510.9640.9650.9320.9510.9650.9670.9370.9570.9680.979
0.0510.0360.0290.0280.0510.0350.0280.0250.0410.0270.0220.021
R2
PSNR↑
SSIM↑
LPIPS↓
31.5335.8238.5338.7031.5435.9338.7839.0732.1336.8138.8439.14
0.9350.9590.9680.9680.9350.9590.9680.9680.9430.9630.9690.970
0.0500.0310.0280.0290.0490.0310.0270.0280.0410.0250.0240.024
OFF3
PSNR↑
SSIM↑
LPIPS↓
30.9033.8636.2636.5630.9333.9036.3836.6331.6233.9136.42
36.66 0.928 0.946 0.958 0.959 0.928 0.947 0.958 0.958 0.938 0.953 0.963 0.964 0.052 0.040 0.037 0.036 0.052 0.040 0.036 0.037 0.040 0.032 0.029 0.029
OFF4
PSNR↑
SSIM↑
LPIPS↓
29.5 32.98 37.70 38.48 29.51 32.97 37.95 38.59 31.90 34.61 38.30 38.74 0.920 0.941 0.962 0.964 0.920 0.941 0.962 0.964 0.936 0.953 0.966 0.967 0.070 0.049 0.037 0.035 0.070 0.049 0.036 0.036 0.050 0.036 0.030 0.031
Avg.
PSNR↑
SSIM↑
LPIPS↓
30.62 34.16 37.49 37.84 30.63 34.22 37.71 38.18 31.83 35.13 38.18 38.20 0.929 0.949 0.964 0.964 0.929 0.950 0.964 0.964 0.939 0.957 0.967 0.970 0.056 0.039 0.032 0.032 0.056 0.039 0.032 0.032 0.043 0.030 0.026 0.026
表 I. Replica 数据集的渲染比较。 ↓ 表示数值越小越好, ↑ 表示数值越大越好。 最佳得分以粗体斜体显示。 第二佳得分以斜体显示。

方法
R0R1R2OFF0OFF1OFF2OFF3OFF4平均
3DGS

GeoGaussian
(我们的)
均值 (m)
标准差 (m)
0.0260.0250.0420.0170.0190.0390.0320.0320.029
0.0660.0810.1460.0500.0550.2010.0660.1120.097
均值 (m)
标准差 (m)
0.0180.0140.0150.0200.0290.0130.0180.0140.018
0.0320.0160.0280.0420.0670.0240.0200.0230.031

表 II. Replica 数据集上的重建性能比较。 基于 Replica 数据集提供的地面真值网格模型,我们将这些网格模型与来自高斯模型的点云对齐,其中我们在每个高斯椭球中随机采样三个点。

⭕️ 致谢

本项目基于 3DGS 并依赖于 PlanarSLAM 工作提供的数据。 感谢开源社区的贡献。

📋 许可证

本项目根据 Gaussian-Splatting 许可证发布。

✉️ 引用

如果您在研究中发现本项目有用,请考虑引用:

BibTex

@article{li2024geogaussian,
  title={GeoGaussian: Geometry-aware Gaussian Splatting for Scene Rendering},
  author={Li, Yanyan and Lyu, Chenyu and Di, Yan and Zhai, Guangyao and Lee, Gim Hee and Tombari, Federico},
  journal={arXiv preprint arXiv:2403.11324},
  year={2024}
}
项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号