标签:
想找个序列图像三维重建的工作,遂开始收集各种信息,搜了下找工作的网站,下了几篇三维重建的硕士论文,上了下知乎。
前两年就知道了有123Dcatch这么个玩意,当时搜到了这么个东西
http://www.didayin.com/archives/632
还一直留着这个书签,昨天照着下了visualSFM,CMVS,MeshLab做了一下,效果如下
拿手机拍的一个欧莱雅洁面膏,放在一张有字的纸上拍的,光线不好。在MeshLab里头看有24万个Vertices,想要删除不要的点结果一操作就卡死,遂放弃。
知乎上搜到这个 https://www.zhihu.com/question/29885222/answer/48940748
第一个链接里头的内容这么说:
照片重建的主要步骤
整个重建过程大致有以下几步,
1、找出各张照片中的特征点,进行两两匹配
这一步讲究的是能够精确识别物体的局部特征,并且进行快速准确的匹配,由于在实际拍摄中,可能存在物体的旋转、缩放、或者亮度变化,所以难度不小。现在常用的算法是由 David Lowe 提出的SIFT 方法。
2、根据匹配的结果,利用射影定理计算得到相机位置等场景信息
这步又称运动恢复结构(Structure from Motion)。对于结果的衡量标准主要是准确性,流行使用的是基于 Levenberg-Marquardt 算法的 Bundler。我们也可把这一步称为稀疏重建(Sparse Reconstruction)。
3、将场景信息与原始照片结合在一起,得到照片中物体的三维点云
有了场景信息,我们就能进行多视立体重建(Multi-view Stereo Reconstruction)了。由于处理的图像精度通常都比较高,所以这一步的计算量很大,执行效率也因此成为判断算法优劣的标准之一。除了效率之外,还需要考量重建的精度以及完整性,因为这些因素决定了点云的质量。PMVS 算法是目前表现最好的多视立体重建算法。另外,为了表示和稀疏重建的区别,这一步也成为密集重建(Dense Reconstruction)。
4、根据三维点云构建三维模型
我们已经得到了物体表面的一系列三维点云,但是还需要把这些点连成面,才能在一般的三维建模软件中使用。现在比较常用的是泊松表面重建算法(Poisson Surface Reconstruction)。是的,就是发明了能够用来预测火车是否晚点的泊松分布的那个人。
使用开源软件完成重建
我们将使用 VisualSFM 来完成其中的前三步,VisualSFM 中已经包含了 SIFT 和 Bundler 的算法,不过为了完成第三步,你还需要下载 PMVS 的升级版 CMVS,VisualSFM 会自动调用。而对于第四步,我们需要使用 Meshlab 进行网格处理。
一堆关键词SIFT,SFM,Levenberg-Marquardt 算法,Bundler。。。SIFT还好,以前玩过,剩下的一个个弄懂
标签:
原文地址:http://www.cnblogs.com/shepherd2015/p/5128171.html