?? 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日分享大模型与 AI 领域的最新开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术,欢迎关注我哦!
? 微信公众号|搜一搜:蚝油菜花 ?
? 快速阅读
- 功能:SPAR3D 能从单张图像中高效重建出高质量的3D网格模型,支持用户交互式编辑。
- 技术:基于两阶段设计,结合点扩散模型和三平面Transformer,实现快速且高质量的3D重建。
- 应用:适用于增强现实、电影制作、工业设计等多种场景,泛化能力强。
正文(附运行示例)
SPAR3D 是什么
SPAR3D 是由 Stability AI 和伊利诺伊大学香槟分校联合推出的先进单图生成3D模型方法。它能够从单张图像中高效重建出高质量的3D对象,结合了回归模型和生成模型的优势,既能准确重建图像中的可见表面,又能合理生成被遮挡部分的几何和纹理细节。
SPAR3D 采用两阶段设计,第一阶段使用点扩散模型生成稀疏的3D点云,第二阶段结合采样的点云和输入图像生成高度详细的网格。该方法在多个数据集上表现出色,推理速度快,支持用户对生成网格的交互式编辑,为单视图3D重建任务提供了一种实用且高效的解决方案。
SPAR3D 的主要功能
- 单视图3D重建:从单张2D图像中重建出高质量的3D网格模型,适用于增强现实、电影制作、制造业等需要3D建模的场景。
- 快速推理:具有高效的推理速度,每个物体的重建时间仅需0.7秒,适合实时应用需求。
- 支持用户编辑:生成的3D网格支持交互式编辑,用户基于修改点云调整未见表面的细节,如添加物体部件或改善局部细节,满足个性化需求。
- 泛化能力强:不仅在标准数据集上表现优异,多图像和AI生成图像上实现准确的几何结构重建和良好的纹理效果,具有强大的泛化性能。
SPAR3D 的技术原理
- 两阶段设计:
- 点采样阶段:用轻量级的点扩散模型生成稀疏的3D点云。模型基于DDPM框架,用前向过程向原始点云添加噪声,再用后向过程中的去噪器学习去除噪声,生成包含XYZ和RGB信息的点云。
- 网格化阶段:将采样的点云和输入图像作为条件,用大型三平面Transformer生成高分辨率的三平面特征,用于估计物体的几何、纹理、光照以及材质属性。
- 点云作为中间表示:点云作为连接两个阶段的桥梁,为网格化阶段提供必要的几何和颜色信息,支持用户在点云层面上进行编辑,增强模型的灵活性和可交互性。
- 概率建模与逆渲染:在点采样阶段,基于概率建模处理单视图3D重建中的不确定性问题,生成合理的点云分布。在网格化阶段,进行逆渲染,将点云和图像信息融合,估计出物体的详细几何结构和材质属性。
如何运行 SPAR3D
1. 安装依赖
确保你的环境满足以下条件:
- Python >= 3.8
- 可选:CUDA
- 对于 Windows(实验性支持):Visual Studio 2022
安装 PyTorch 和其他依赖:
pip install -U setuptools==69.5.1
pip install wheel
pip install -r requirements.txt
2. 请求访问并登录
3. 运行推理
python run.py demo_files/examples/fish.png --output-dir output/
这将把重建的3D模型保存为 GLB 文件到 output/
目录中。
4. 本地 Gradio 应用
python gradio_app.py
资源
- GitHub 仓库:https://github.com/Stability-AI/stable-point-aware-3d
- HuggingFace 仓库:https://huggingface.co/stabilityai/stable-point-aware-3d
- arXiv 技术论文:https://arxiv.org/pdf/2501.04689
?? 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日分享大模型与 AI 领域的最新开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术,欢迎关注我哦!
? 微信公众号|搜一搜:蚝油菜花 ?