3D通用物体重建

我要开发同款
匿名用户2024年07月31日
29阅读
所属分类ai、surface reconstructi、pytorch、隐式辐射场、三维重建、Neural Rendering、NeRF、Neural Surface Recon、cv
开源地址https://modelscope.cn/models/iic/cv_surface-reconstruction-common
授权协议Apache License 2.0

作品详情

输入一段手机拍摄视频,即可生成对应的3D物体模型,该模型通过隐式表面重建的方式对静态三维物体或场景进行学习和建模。

效果展示

以下是在自拍摄数据集上使用该模型重建渲染的结果

模型描述

使用方式和范围

使用方式:

  • 对训练好的模型通过GPU推理,导出对应3D物体模型

使用范围:

  • 用户自拍摄视频(支持主流视频格式),高清不低于720P,物体位于拍摄中心,尽量减少镜头畸变

目标场景:

  • 需要对单一静态物体进行三维重建的场景
  • 支持高精度人头、人体重建

运行环境:

  • 模型只支持GPU上运行,具体效率与GPU性能相关
  • GPU显存要求大于等于16G

如何使用

模型推理

在 ModelScope 框架上,调用训练好的模型即可通过简单的 pipeline 来推理(仅支持 GPU 运行)。

from modelscope.msdatasets import MsDataset
from modelscope.pipelines import pipeline
from modelscope.utils.constant import Tasks
import os

data_dir = MsDataset.load('surface_recon_dataset', namespace='menyifang', split='train').config_kwargs['split_config']['train']
data_dir = os.path.join(data_dir, 'surface_recon_dataset')

surface_recon_common = pipeline(Tasks.surface_recon_common, model='damo/cv_surface-reconstruction-common',)
surface_recon_common(dict(data_dir=data_dir, save_dir='.'))
print('done')

模型训练

数据处理方式和训练代码请参考 [github]

模型局限性以及可能的偏差

以下是针对用户自定义数据场景的说明

  • 如果用户采集数据时应覆盖足够视角,保持物体处理中心,避免手机运动抖动,否则可能影响3D重建效果。

  • 模型预处理依赖colmap对视频帧进行相机视角估计,该估计过程对不同场景存在一定误差,可能影响重建渲染结果。

  • 模型数据预处理依赖图像分割模型,如拍摄物体边缘结果复杂或者背景存在干扰导致无法正确分割出物体,将影响到重建渲染效果。

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论