初次尝试使用VisualSFM记录

初次尝试使用VisualSFM记录  对于SFM一直觉得高大上又神秘,一年前粗略的了解过一下,今年有时间尝试深入了解SFM,对于初学者来说,VisualSFM真的时非常好的感受SFM的免费软件,于是通过其他博客的指导(没去看官方的英文版,容易犯困),做了一个3D模型出来,感觉还挺好玩,记录一下。  实际上,VisualSFM只做了一部分工作,优化是用MeshLab做的,所以分两个环节:   1.VisualSF…

大家好,又见面了,我是你们的朋友全栈君。

    对于SFM一直觉得高大上又神秘,一年前粗略的了解过一下,今年有时间尝试深入了解SFM,对于初学者来说,VisualSFM真的时非常好的感受SFM的免费软件,于是通过其他博客的指导(没去看官方的英文版,容易犯困),做了一个3D模型出来,感觉还挺好玩,记录一下。

    实际上,VisualSFM只做了一部分工作,优化是用MeshLab做的,所以分两个环节:

     1.VisualSFM做”图像匹配”、“SFM”(CMVS)、”BA”

    官网下载的UI不带cmvs,所以从别的博客下载了配好cmvs的拿来直接用,简单麻利快,一天就见效;

                                                            初次尝试使用VisualSFM记录

     1.1 导入图像

       鼠标单击下面的按钮

初次尝试使用VisualSFM记录

选择需要导入的图像

初次尝试使用VisualSFM记录

图像导入完成

初次尝试使用VisualSFM记录

1.2 图像配准

鼠标单击下面的按钮“Compute Missing Matches”

初次尝试使用VisualSFM记录

开始配准了…

初次尝试使用VisualSFM记录

(注意:高分辨率的图像,这里默认3200,具体请参考这里:https://blog.csdn.net/kiara_wei/article/details/68485062

配准完事了,Log Window可见

初次尝试使用VisualSFM记录

1.3 稀疏点云

配准完了之后点击下面的按钮:

初次尝试使用VisualSFM记录

开始生成点云了,很快,而且有显示:

初次尝试使用VisualSFM记录

 

 

1.4 加密点云

按下面的按钮:

初次尝试使用VisualSFM记录

开始之后,命名,然后就要等了,稍微有点慢(87秒/73张图):

初次尝试使用VisualSFM记录

完成了!

初次尝试使用VisualSFM记录

 

2. MeshLab 该登场了

2.1 open project

    打开VisualSFM生成的 “.out”,和“list.txt”

初次尝试使用VisualSFM记录

初次尝试使用VisualSFM记录

 

初次尝试使用VisualSFM记录

稍等片刻:

初次尝试使用VisualSFM记录

2.2 显示相机位置

Render->ShowCamera

初次尝试使用VisualSFM记录然后设置尺度:(参考:https://blog.csdn.net/moneyhoney123/article/details/78454837

(注:其实这一步可以不要,但是这一步能直观的给你展示一个SFM的具体的样子,对于新手还是很有必要的)

初次尝试使用VisualSFM记录

2.3 加载稠密点云

初次尝试使用VisualSFM记录

注意,就是用VisualSFM生成稠密点云时咱命名的哪个文件名,别选错了。

 

初次尝试使用VisualSFM记录

初次尝试使用VisualSFM记录

2.4 清除杂点

就是把那些离散的很远的,点都去掉,把不是我们想要的目标的点去掉,还有就是明显错误的点(例如:不在本来的平面上)都去掉。(注意:这时我们右边的图层中应该选中的是刚打开的稠密点云.ply,而不是稀疏点云 model)

初次尝试使用VisualSFM记录

按下面的这个按钮:

初次尝试使用VisualSFM记录

选择需要清除的点:

初次尝试使用VisualSFM记录

然后点下面这个按钮删除:

初次尝试使用VisualSFM记录

重复上面的操作:选择->删除->选择->删除->选择->删除……..en,干净、整齐了很多

初次尝试使用VisualSFM记录

2.4 网格化(参考:https://blog.csdn.net/moneyhoney123/article/details/78454837

Filter -> Point Set -> Surface Reconstruction:Poisson

初次尝试使用VisualSFM记录

en,我电脑垃圾,所以有点慢:(关于这里的参数设置,可以参考上面的参考博客,我不想深究,就想早点看到结果)

初次尝试使用VisualSFM记录

 

初次尝试使用VisualSFM记录

上面的曲面明显多了很多,下面就把多余的删除:

Filter-> Slection -> Slect Face With edges longer than…

初次尝试使用VisualSFM记录

初次尝试使用VisualSFM记录

然后按下面这两个按钮,删除:

初次尝试使用VisualSFM记录

然后,保存整个工程和文件;

2.5 修复流形边

Filter-> Selction ->Slect non Manifold Edges

初次尝试使用VisualSFM记录

初次尝试使用VisualSFM记录

执行完成之后,再点一次下面的两个按钮,删除之:

初次尝试使用VisualSFM记录

2.6 参数化(Parameterization)

Filter–> Texture –> Parameterization from registered rasters

初次尝试使用VisualSFM记录

初次尝试使用VisualSFM记录

Apply!

2.7 纹理投影

Filter–> Texture –> Project active rasters color to current mesh, filling thetexture

初次尝试使用VisualSFM记录

初次尝试使用VisualSFM记录

执行完成之后,得把稠密点云和稀疏点云都关闭(隐藏),就能看出创建好的模型了:

初次尝试使用VisualSFM记录

2.8 完成了,就可导出了,不导出下次可就看不到了;

初次尝试使用VisualSFM记录

 

—————————————————————————————————————————–

好了,完事了,总结一下:

图越多,效果越好哈,真的是;(这是一句废话)

2.4栅格化的时候,删除多余的面,如果手动删除的话也是可行的,这样鼠标的表面就不会被删除了,最终的结果就不会镂空那么多了。

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/151334.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Android中mesure过程详解 –[通俗易懂]

    Android中mesure过程详解 –[通俗易懂]invalidate()最后会发起一个View树遍历的请求,并通过执行performTraersal()来响应该请求,performTraersal()正是对View树进行遍历和绘制的核心函数,内部的

    2022年8月1日
    8
  • Origin绘图快速上手指南

    Origin绘图快速上手指南1、创建工程打开origin后,点击菜单栏“文件”,选择“项目另存为”,给项目命名,并存到某个工作路径。2、导入数据然后将excel中的数据(只要数据)选中后复制到Book1中,从第5行开始粘贴。可以在侧面打开“项目管理器”,给表格“Book1”重命名为“曲线数据”。还可以在表格的“长单位”处给每列数据加上标签。3、那么这时可以直接使用Origin的自动绘图功能了。选择A、B、C所有列,然后点击菜单栏的“绘图”,选择一个折线图,双击即可绘图。这样呢就是将两条曲线放到同一张图中了。如果想要自定

    2022年5月31日
    55
  • Retrofit2.0 请求数据 一直出返回网络错误,错误代码 414

    Retrofit2.0 请求数据 一直出返回网络错误,错误代码 414今天使用rettorfit去请求数据一直不成功,请求逻辑上以及请求参数上都没有问题,后台也验证过是通的(我用xutils3请求也是成功的,后来意识到xutils3是将参数放在请求体里面),但是就是一直不能请求成功,后来终于发现还是参数的问题。由于使用的是retrofitPOST请求,查询字段用的是@QueryMap,而这个查询时是直接拼接在url的后面,但是url的请求接口是有长度限制的…

    2022年5月5日
    60
  • 大数据监控平台实践之路

    大数据监控平台实践之路大数据监控平台实践之路一、监控体系业务层:应用层:系统层:二、架构设计Telegraf:input:output:调度频率:服务启动:InfluxDB:服务启动:常用命令:Grafana:Grafana主要特性:简单使用介绍:原文地址:大数据监控平台实践之路一、监控体系监控粒度、监控指标完整性、监控实时性是评价监控系统的三要素。从分层体系可以把监控系统分为三个层次:业务层:业务系统…

    2022年5月27日
    34
  • 如何备份mysql_史上最全的MYSQL备份方法

    如何备份mysql_史上最全的MYSQL备份方法本人曾经用过的备份方式有:mysqldump、mysqlhotcopy、BACKUPTABLE、SELECTINTOOUTFILE,又或者备份二进制日志(binlog),还可以是直接拷贝数据文件和相关的配置文件。MyISAM表是保存成文件的形式,因此相对比较容易备份,上面提到的几种方法都可以使用。Innodb所有的表都保存在同一个数据文件ibdata1中(也可能是多个文件,或者是独立的表…

    2022年6月22日
    48
  • 前端面试题ajax_前端性能优化面试题

    前端面试题ajax_前端性能优化面试题AJAX1,Ajax是什么?如何创建一个Ajax?ajax的全称:AsynchronousJavascriptAndXML。异步传输+js+xml。所谓异步,在这里简单地解释就是:向服务器发送请求的时候,我们不必等待结果,而是可以同时做其他的事情,等到有了结果它自己会根据设定进行后续操作,与此同时,页面是不会发生整页刷新的,提高了用户体验(1)创建XMLHttpRequest对象…

    2022年8月27日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号