“
近几年,随之而来AR,VR,随着虚拟试衣、自动驾驶等领域的兴起,三维重建技术得到了广泛的应用。今天,我想分享一篇关于三维重建的三维独创性综述文章。这篇文章很长议收集。
”
三维匠心(已授权)来源
三维匠/Realcat丨编辑
自接触三维重建以来,三维工匠一直是基于RGB-D相机的三维重建令人惊叹与此同时,心里一直盘旋着写一个总结的想法,相信大家也能感受到三维匠的感受,。
最后,经过个人实践,我终于可以实现我的愿望了。因此,首先写一个总结作为备忘录,这也可以为您的朋友提供方便。稍后,我将撰写具体文章的分析,并分享我对相关论文的理解。我希望你能给我一些建议。(PS:温馨提示,因为这篇文章包含了很多有趣的东西GIF,所以加载可能需要一些时间,请耐心等待)
。在基于RGB-D在相机的三维重建中,输入深度信息和彩色信息,深度信息起主导作用SLAM和SFM该算法主要输入彩色信息,个别工作也与深度信息相结合。
。SLAM在框架类算法中,。我们通常需要定位能够实时响应,而密集地图的构建通常规模大,计算量大,因此地图的构建不一定需要实时。当然,当地图稀疏时,也可以实时构建,但不能满足实际需要。另一个想法是,其次,旨在构建密集准确的高质量地图,可以提供高质量地图SLAM基于算法定位的使用RGB-D三维重建相机是满足上述需求的一种方法。
“基于RGB-D基于深度相机的三维重建和基于深度相机的三维重建fusion三维重建系列方法实际上是三种等价的说法。由于该领域发表的大部分工作都在标题中fusion该行业还将这些相关工作简称为基于fusion本文还采用了基于系列方法fusion描述系列方法
基于fusion其实系列的三维重建大致可以分为两种,一种是静态场景的三维重建KinectFusion作为典型的代表,一种是动态场景的三维重建。无论是静态场景还是动态场景fusion系列重建最大的特点是使用当然,模型(截断符号距离函数模型)也用于个别工作(Surfel)表达方法(面元简单来说就是等属性集合)。,当然,重建拓扑不会改变(比如驱动三维网格模板模型)的难度会降低很多。
为了更好的理解fusion系列方法,这里在介绍下TSDF模型。TSDF全称是Truncated Signed Distance Function缩写,译为。通常我们首先选择要建模的三维空间,比如2m×2m×2m这么大,然后把这个三维空间分成很多小块,分辨率一般是256×256×256或是128×128×每一小块都叫128。
如果小块在物体表面前,则存储正值;如果小块位于物体表面,则存储负值。此外,通常认为物体表面有厚度,因此将值过大和值过小的放置为1或-1,以获得截断后的距离,即所谓的TSDF模型。最后,根据定义,。换句话说TSDF数值从负数过渡到正数。人脸出现在下图中TSDF值改变符号,即TSDF值为0的地方,如下图所示。
再来说说Surfel,如下图。
Surfel该表示方法最早于2000年用于模型渲染,如下图所示Surfel包含以下元素的小面片可以理解为:
空间点坐标,即面片位置;
空间法向量,即面片方向;
颜色;
权重,即根据当前点到相机的距离进行初始化,距离越远,权重越小;
半径由当前表面到相机光心的距离决定,距离越大,半径越大;
时间戳;
下面分别介绍代表性工作。
是Richard A. Newcombe经典。该系统只需要一个低成本的移动深度相机来重建任何更复杂的室内场景。它的核心思想将是Kinect传感器采集的深度数据流实时集成(fusion into)对应当前场景使用从粗到精的迭代最近点(ICP)算法目前收集的深度帧数据与上述全球隐藏表面模型的相对关系Kinect传感器的位置变化。
同时,该系统也有缺点,该系统只能重建不到7立方米的体空间。主要有两个原因:由于系统采用密集的体积表示,需要消耗大量内存;此外,重建大型建筑时积累的误差会导致漂移现象。上述两个原因Kinectfusion大型建筑无法重建。
:https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/ismar2011.pdf
https://github.com/ParikaGoel/KinectFusion
上述 KinectFusion 算法采用固定体积的网格模型(如256×256×256)表示重建的三维场景,只能重建固定大小的场景;此外,当重建体积较大或网格空间分辨率较高时,会消耗显存。而且 KinectFusion 算法没有回环检测和回环优化,这也造成当相机移动距离大时,不可避免的会有累积误差。Kintinuous算法是一个完善的三维重建系统,集成了和,实时三维刚体重建仍在使用中deformation graph根据回环优化,根据回环优化的结果,更新点的坐标,使回环两次重建对齐。该算法适用于大场景的三维重建。
:http://www.thomaswhelan.ie/Whelan12rssw.pdf
:https://github.com/mp3guy/Kintinuous
算法的作者也是Kintinuous与作者不同Kintinuous的是,ElasticFusion使用了面元(Surfel)用于小场景重建的表达方法。这项工作的主要贡献有两点许多model-to-model”的大规模的结合在一起。因此,重建地图的分布可以尽可能相似,重建结果可以得到保证;此外,该算法用于探测在这种情况下,它更有效,也能取得更好的重建效果。
此外,该算法还面临着巨大的挑战,如解决整个房间以外的问题以及如何随着时间变化,保证重建地图的全局一致的稳定性。
:http://www.thomaswhelan.ie/Whelan16ijrr.pdf
http://roboticsproceedings.org/rss11/p01.pdf
:https://github.com/mp3guy/ElasticFusion
该工作提供一种从RGB-D视频重建室内场景重建的方法,其核心思想在于将场景片段的和相结合。场景片段是通过将输入RGB-D视频流分割成若干帧为一组的场景片段得到的。这种以场景片段为单位进行深度信息的融合可以有效地去除深度图的噪声,从而获得更加准确的表面法向信息以及重建结果。
http://vladlen.info/papers/indoor.pdf
链:https://link.zhihu.com/?target=https%3A//github.com/qianyizh/ElasticReconstruction
InfiniTAM是一个开源、跨平台、实时的大范围深度信息融合与跟踪技术框架。该算法有好几个版本,有很大的借鉴意义。值得一提的是,InfiniTAM能够比KinectFusion重建更加大范围的3D环境,其关键因素在于InfiniTAM采用了的方式来存储隐式的体积表示,极大地节省了内存空间的消耗。
https://arxiv.org/pdf/1708.00783.pdf
https://github.com/victorprad/InfiniTAM
Bundlefusion应该是目前静态场景重建效果最佳的方案了。该方法提出一个并行化的优化框架,充分利用了基于以及和提取的对应关系,实时地估计了BA优化的姿态,并具有从追踪失败中恢复(即)的鲁棒追踪能力。
https://arxiv.org/pdf/1604.01093.pdf
https://github.com/niessner/BundleFusion
DynamicFusion获得了2015年CVPR的,其作者是Newcombe,和KinectFusion是一个作者。DynamicFusion是的动态重建算法,可是说是的开山之作。DynamicFusion系统在重建场景的的同时也在估计稠密体积表示的。类似KinectFusion,该系统能随着深度数据的采集,而获得一个的重建结果。
但同时由于DynamicFusion没有采用任何先验信息使得该算法对于帧间以及都不具备鲁棒性;此外DynamicFusion可以较好的处理封闭拓扑的表面重建,对于就无能为力了。例如我们嘴一开始闭着,后面再打开的情况就没法处理;另外由于追踪的累积误差,使得。
https://rse-lab.cs.washington.edu/papers/dynamic-fusion-cvpr-2015.pdf
volumeDeform算法和dynamicFusion类似,都无需预先定义的模板,同样采用体积表示(volumetric representation)的方法来。该算法的运动追踪基于提取的(如SIFT算子)以及图两者的结合,增强了特征匹配点寻找准确的鲁棒性,进而极大地减小了重建模型的累积误差以及漂移现象 。
该算法的不足之处在于尽管全局SITF特征算子的匹配提高了系统的鲁棒性,减小了对齐的误差,但现象仍然不能完全消除;另外由于的设置使得极度弯曲的物体的重建结果在运动上会显得平滑,变得不那么弯曲。
https://graphics.stanford.edu/~niessner/papers/2016/5volumeDeform/innmann2016deform.pdf
从BodyFusion开始就变得更有意思了。BodyFusion使用作为先验信息,实现鲁棒了的人体动态重建。人体骨架的引入减少了重建表面图节点的,也是在一定程度上缩小了解空间。
不足之处在于所使用的人体骨骼所包含的,并且运动较快时,会在深度图上出现的情况,从而造成重建方法受限。
http://www.liuyebin.com/bodyfusion/bodyfusion_files/BdyFu_ICCV17.pdf
DoubleFusion非常惊艳,该系统将(SMPL模型)以及实时重建的稠密、以及充分结合在一起。该系统的关键贡献之一在于提出了的表示,这里的两层主要是指里层的(inner body),也就是SMPL模型的shape,以及外层通过(outer surface)。该算法的另一个关键贡献在于提出了一个基于双层表面表示的,使得整个系统可以在快速运动的情况下仍然具有鲁棒性。
不足之处在于当用户穿着比较肥大的时候,估计的人体也偏胖;并且无法处理外层表面发生分离的情况,以及无法处理的情况。
http://www.liuyebin.com/doublefusion/doublefusion_files/doublefusion.pdf
通常多相机系统需要一些特殊设计的相机以及预先精细的相机标定操作,但UnstructuredFusion算法可以使用的三个深度相机以一种互补并灵活的方式覆盖整个人体,从而实现实时,高质量,完整的动态人体重建。
该算法也有不足之处。由于输入深度图分辨率受限,该算法无法重建目标非常细小的部分,比如人的脸部区域;该算法也无法处理的情况;该算法也无法处理人-物交互情况。
https://ieeexplore.ieee.org/document/8708933
诚如算法名字RobustFusion所示,该算法使用了各种提高动态重建算法的鲁棒性。这些数据驱动的视觉线索具体包括Occupancy Network,Pose&Shape Network以及Semantic Network。 该算法充分利用了上述数据驱动的视觉线索,避免了预先扫描模板的使用,具备了重新初始化的能力,使得该系统能够处理极具挑战性的运动和几何的重建。
该系统的不足之处有:该系统无法实时运行;不能处理重建的情况,比如脱掉衣服;不能实现;当一些极端运动姿态在上述网络训练时没有出现过,那上述数据驱动的视觉线索就不能很好地提供先验信息。
https://www.ecva.net/papers/eccv_2020/papers_ECCV/papers/123490239.pdf
KillFusion是基于Killing Vector Fields提出的实时三维重建方法,也是不需要任何预先扫描的模板信息以或是形状先验。KillingFusion,当给定感兴趣区域的一对SDF(signed distance fields),该算法可以估计出一个稠密形变域来对齐给定的SDF。具体的,该算法定义一个和SDF相同分辨率的位移向量域(displacement vector field),并通过最优化迭代求解。
该算法的不足之处也是由于其优点造成,,比如就需要显式的对应点。
http://campar.in.tum.de/pub/slavcheva2017cvpr/slavcheva2017cvpr.pdf
SurfelWarp是三维动态重建方案中为数不多的基于面元的算法。类似的,该算法输入一个深度图序列,对非刚性场景进行实时重建,无需任何模板或是先验信息。与现有的方法相比,该算法,比如TSDF模型,该系统采用面元(surfel)的几何表示,极大地增强了拓扑发生改变时的追踪能力,从而获得一致的重建结果。
该算法的不足之处在于,模型重初始化可以极大地提高系统的鲁棒性,然而清除错误的面元会
https://link.zhihu.com/?target=https%3A//arxiv.org/pdf/1904.13073.pdf
Fusion4D的重建结果也非常惊艳。该算法是基于方案,没有使用任何先验信息,因此理论上可以重建任何场景或是物体。如视频所示,除了对人体动态重建,还能对狗子动态重建。该算法很重要的一点贡献是引入了,因此对于以及时都有很强的鲁棒性;另外Fusion4D还引入了,从而得到正确的TSDF模型。
该系统不足之处在于当RGBD输入流时,会使帧间对应匹配点估计不准确,造成非刚性对齐过程无法收敛。
https://www.microsoft.com/en-us/research/wp-content/uploads/2016/11/a114-dou.pdf
如果各位小伙伴想观看完整的演示效果,可以点击这里:
https://zhuanlan.zhihu.com/p/296509722
本文仅做学术分享,如有侵权,请联系删文。
在「3D视觉工坊」公众号后台回复:即可下载 3D视觉相关资料干货,涉及相机标定、三维重建、立体视觉、SLAM、深度学习、点云后处理、多视图几何等方向。
在「3D视觉工坊」公众号后台回复:即可下载包括等。
在「3D视觉工坊」公众号后台回复:即可下载独家学习课件与视频网址;后台回复:即可下载独家学习课件与视频网址。
扫码添加小助手微信,可
也可申请加入我们的细分方向交流群,目前主要有、、、、、等微信群。
一定要备注:
▲长按加微信群或投稿
▲长按关注公众号
学习3D视觉核心技术,扫描查看介绍,3天内无条件退款
圈里有高质量教程资料、可答疑解惑、助你高效解决问题