码迷,mamicode.com
首页 > 其他好文 > 详细

序列图像三维重建

时间:2016-01-13 19:32:17      阅读:121      评论:0      收藏:0      [点我收藏+]

标签:

想找个序列图像三维重建的工作,遂开始收集各种信息,搜了下找工作的网站,下了几篇三维重建的硕士论文,上了下知乎。

前两年就知道了有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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!