本文字数:1324

预计阅读时间:20分钟

https://www.bilibili.com/read/cv26465887/

01

什么是三维重建

三维重建就是利用一组2d图像创建3d场景(为了方便拍摄,采用视频形式,通过ffmpeg切片获取图片)

效果:

02

低成本

  • 以苹果的物体捕捉技术为例,市面上的使用图片进行3d建模的技术,都对图像有较高的要求。以下图为例,一般都需要使用灯箱等专业工具提供稳定均匀光环境、特殊的拍摄设备、均匀的拍摄间隔,成本高昂、对拍摄手法要求高;

  • 得益于3D Gaussian Splatting技术,采用高斯椭球体点云取代传统的骨架+三角形贴图,并且利用深度学习技术实现了椭球点云的自校验,使得对于图像素材的要求大大降低,相应的对于拍摄设备与拍摄手法的要求也大大降低。将利用图像生成三维场景这件事,从专业领域带到普通用户领域。以下图为例,我们展示的重建产物,采用的都是普通设备、普通环境加普通转圈拍摄,使用的图片数量也较少;

  • 还原度很高的人像,也同样,如下面动图所示,只是在普通场地围着中心模特拍摄了两圈总共59s的视频,导出共118张图,并且最终产物只有5.9M。

03

如何实现

  • 首先为了方便拍摄采用的是视频形式,然后利用ffmpeg切片生成帧图片;

  • 通过COLMAP库,利用运动结构恢复技术提取拍摄机位信息与模型点云数据;

  • 如果只是到上面一步,与市面上的重建技术并没有什么不同,那3D Gaussian Splatting是怎么与他们拉开差距的呢?

1.首先,放弃贴图,给点云中的每个点附上一个3*3的矩阵、颜色、透明度,利用高斯函数使每一个点都膨胀为一个高斯椭球体;

单椭球

2.堆叠椭球,以大量椭球构建整体场景;

多椭球

椭球点云

这样以椭球代替贴图,不仅解决了从图像中提取纹理并连接的难题,也增加毛绒类物体重建时的毛绒质感。同时由于单个图像中物体边缘的颜色在实际空间中未拍摄到的相邻位置大概率也是相同颜色,椭球体堆叠的方式也更符合空间推理逻辑,提高了重建的还原度。

采用苹果物体捕捉技术还原的小熊玩偶

采用3D Gaussian Splatting技术还原的小熊玩偶:

3.由于在早期步骤中获取到了每个图片的拍摄机位信息,那么我们可以利用机位信息将椭球点云反推为一系列图像,再将生成的图像与原始图像进行损失计算,然后根据损失数据调整椭球点云,不断重复以上过程以实现一个损失不断下降的自校验过程。

04

踩坑&思考

  • 由于3D Gaussian Splatting采用了不同于以往的高斯椭球体点云形式直接进行渲染,那么以往可以加载普通3d模型的软件将不能直接使用该数据,不过目前unity、ue等软件已经有作者提供了相应的插件。使用该数据转换obj等普通模型格式时,由于椭球体点云并没有贴图的概念,所以只能转换为没有纹理的空白骨架(目前);

  • 所以就算拍摄简单,还原精度高,也不知道能不能直接用于3d打印等输出场景(不然为博物馆扫描制作周边产品将是个很好的用途);

  • 由于最终产物体积较小,也方便修改,倒是比较适合作为新的媒体形式下发到端内渲染。

05

结尾

如果您对3d重建技术感兴趣,或者您发现有3d打印软件适配了椭球点云数据,请您在评论区留言讨论。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐