返回
VisualSFM 0.5.27绿色免费版

VisualSFM

立即下载

小编提示:PC版不适合移动端,如下载有问题点击反馈!

软件介绍

VisualSFM是一款专业的SFM三维重建软件。如果你需要进行SFM三维重建久友下载站小编推荐VisualSFM。软件可以为用户提供便捷的三维重构平台,整个用户界面设置了重构所需的功能模块,这对用户的工作更加方便非常有帮助;该程序允许用户直接从用户界面导入文件进行编辑; rich可以直接在应用程序上单击隐藏菜单功能,它可以匹配两个视图,还可以成对匹配重建的3D地图。同时,它支持稀疏的重建,恢复的简历和密集的重建。您需要工作;需要注意的是,该程序仅支持win64位,目前不支持32位,需要它的用户可以下载体验。

使用说明:

用户可以直接通过此网站下载相应的安装软件包,然后将其解压缩。双击该程序将其打开

VisualSFM

双击后,将弹出相应的用户界面,整个用户界面的功能模块分布非常清晰

VisualSFM

3D重建-使用命令行

VisualSFM

VisualSFM

相同命令行的相同功能是选项“ + import”。请勿使用完全匹配的“ SfM->逐项匹配->计算丢失的匹配”。匹配文件的格式如下:匹配文件= <图像匹配列表>

图像匹配= <图像1路径> <图像2路径> <#匹配>

例如,以下给出了888.jpg和709.jpg之间的24个匹配项

VisualSFM

使用您自己的特征检测器

选项1.您可以编写一个二进制函数检测器,例如Lowe的SiftWin32.exe。

或者,您可以使用类似SiftGPU的界面编写共享库。

选项2.以Lowe的ASCII格式写入.sift文件,它们将自动转换为VisualSFM二进制格式。 (让我知道是否有错误)。

选项3.以以下二进制格式写入.sift文件:

VisualSFM

调整参数以提高速度

大多数参数存储在nv.ini中,该文件在首次运行时会自动生成。功能检测速度在GUI模式下,使用“菜单->工具->启用GPU->自定义参数”在控制台模式下,使用“ VisualSFM sfm [+ pmvs]输入和输出[SiftGPU参数]”您需要检查以下内容这些参数在SiftGPU上。通常,除非您用尽了图形内存,否则这样做是没有意义的。特征匹配速度“ param_gpu_match_fmax”是用于特征匹配的每个图像的特征数量。默认值为8192,但是在大多数情况下4k就足够了。请注意,特征按比例排序,因此将使用比例最大的特征。

如果您知道图像邻域(例如视频中的相邻帧),则应指定成对列表,而不要使用完整的成对匹配。

保存结果可能要花费很多时间(尤其是对于NFS)。现在,在Linux下默认启用beta功能以提高效率。可以通过设置param_asynchronous_write = 0或取消选中“按对匹配->异步写入”来禁用它。增量重构速度“ param_bundle_full_iteration”是b时的BA迭代次数

推出完整的模型。 “ Param_bundle_full_frequency”控制执行全包调整的频率。这两个参数决定了重建的速度。

焦距初始化

焦距(以像素为单位)是根据EXIF.Focallength和FocalplaneXRes / FocalplaneYRes自动计算的,而不是使用CCD数据库。

提示:如果调整JPEG大小,请保留原始EXIF! (例如XNView可以做到这一点)

如果EXIF不包含此信息,则焦距设置为1.2 *最大(宽度,高度),对应于中等视角。

VisualSFM还支持对所有图像使用单个固定校准[fx,cx,fy,cy]。

使用菜单“ SfM->更多功能->设置固定校准”

中级:功能与搭配

VisualSFM自动将功能检测和功能匹配保存到磁盘。每个图像文件[名称]。 [ext]将存储[name] .sift和[name] .mat。 [name] .sift存储所有检测到的SIFT函数,[name] .mat存储功能匹配。

提示:添加新照片(或关闭/重新启动)时,VisualSFM仅与缺少的内容匹配。

如果要更改特征检测参数,请再次运行重建。您需要删除所有相应的.sift和.mat文件。

如果要回读匹配结果,请在此处检查匹配文件代码;或者您可以使用“ SfM->对对匹配->导出F-矩阵匹配”

输出格式:N视图匹配(NVM)

VisualSFM将SfM工作区保存到NVM文件,该文件包含输入图像路径和多个3D模型。以下是格式说明

VisualSFM

可视化

使用菜单->视图下的菜单项选择视图模式或更改参数。

您可以使用鼠标,键盘快捷键或工具栏按钮进行快速切换。

您可以将当前视图另存为JPEG文件或将其复制到内存中(粘贴到ppt吗?)

更多文件即将推出

鼠标控制和导航

在3D点模式下右键单击相机以查看所选图像

在缩略图模式下左键单击图像以查看所选图像

在单图像模式下单击鼠标右键可返回上一个查看模式。

通过左/右键单击按住+移动来平移/旋转。

按Shift +鼠标或鼠标滚轮缩放

使用“ Alt +鼠标滚轮”更改点的大小

更改通过Ctrl +鼠标滚轮更改相对摄像机尺寸。

只需尝试左/右双击/单击(在空白区域或在相机上,在图像上)

键盘快捷键

“ Z”缩放适合2D视图;重置3D视图。

“退格”以返回缩略图视图

密集3D模型和稀疏3D模型中的“ TAB”

在“ TAB”之间切换,以在原始图像及其无失真的视图之间切换

Pa“暂停”仅显示当前摄像机看到的点

“ T”在3D可视化模式之间切换:摄像机+点/摄像机/点

单张图像查看模式下的“ S”开关

单图像查看模式“ F”中“ F”显示/隐藏功能的SI SIFT显示样式

在密集重建模式下

显示在“ A”中显示/隐藏相机

“上/下”切换到上一个/下一个3D模型

嗯...

VisualSFM中的命令行

在主窗口中按ENTER,命令文本框将显示在状态栏中。

“ Am”动画经理

日志“日志”使用默认的文本编辑器打开日志文件

C“ clog <文件名>”替换默认的日志文件

找到“定位”以在文件资源管理器中打开当前图像

“ pwd”打印出当前目录

“ Cd <路径>”更改当前目录

“跳过”加载NVM

“ Ci”不加载匹配记录以打印当前相机

“ Pi”打印当前对

上“ on mi”

“ Psz”更改OpenGL的默认点大小

“缩放”更改高分辨率屏幕截图的缩放倍数

“ Ao”调整坐标系以适合主相机平面

排序“排序”将摄像机重新排序为输入顺序(对于所有型号)。

TAB显示以前的命令

轻松使用VisualSFM轻松显示动画

通过单击F4将当前视图添加到动画列表。添加多个视图(不同的视点或不同的视图模式)后,单击一次F5,您将看到已保存视图的过渡动画。双击F5,动画将循环播放。这就是我制作论文视频的方式。

在内部命令行中键入“ am”,您将看到制作动画的命令的完整列表。

手动干预重建

在GUI模式下,您可以暂停/恢复增量重建。

查找以下按钮:>> +继续,||暂停

相机如果相机未正确注册,则可以将其删除

右键在3D N视点模式下右键单击相机,然后选择一个相机

单击手动)按钮将相机从3D模型中移除

您也可以手动选择初始化对,请参见下面的常见问题解答。

较小的GPU内存可能存在问题

默认情况下,SiftGPU将通过在需要时对图像进行下采样来尝试满足您的内存要求。在小型内存GPU上,您获得的功能可能会少很多,这将在以下方面产生不同的结果

不同的计算机。

您可以查看有关远程/ CPU解决方案的常见问题解答,或者

您也以尝试禁用降采样并重新运行实验。

1,删除所有.sift和.mat文件

2,选择“工具->启用GPU->自定义参数”

在参数列表中添加“ -nomc”,表示“无内存限制”

3,重新运行比赛并重建。

由于内存不足,无法保证正常运行。

这可能有效,

VisualSFM的局限性

1.基于关键点的重建仅适用于纹理表面。

如果检测到的功能太少,该工具将无法使用

例如,白色的墙壁,颜色均匀的物体

2.增量重建方法有很多局限性:

循环并不总是关闭的,

敏感于初始化(您可能需要尝试手动初始化)

不稳定使诸如前进的运动退化

不要利用视频的运动连续性(可以考虑使用SLAM工具)。

3.只有一个径向参数。这足以拍摄产品照片,但是

如果您的相机有不适合此型号的大畸变,则可能无法使用。

4.由于操作系统的限制,大数据集中的32位版本的内存可能很容易耗尽。

多线程稳定性

重建在重建过程中,将修改点和摄像机,并同时对其进行可视化。由于我不想通过可视化降低重建速度,因此我使用了非常有限的互斥控件。

已经进行了一些内存管理,以确保当您查看实时重建(旋转,缩放,单击...)时,崩溃的可能性很小。但是内存泄漏的可能性仍然很小。

对于控制台模式,这不是问题。同样,如果仅使GUI窗口最小化或避免过多的鼠标拖动,则将减少此类内存泄漏的机会。

FAQ-1。一些典型错误消息的含义(例如ERROR1)。

1. SiftGPU未通过检测测试”或“错误:siftgpu无法正常工作”,

这意味着SiftGPU功能检测无法正常工作。图形驱动

已时,或者图形卡根本不支持SiftGPU。

更新图形驱动程序后,应重试。如果以相同的方式失败,也许

需要切换到CPU进行功能测试或获得更好的GPU。

2.“ ERROR1” +“错误:找不到过滤器二进制文件”

这意味着VisualSFM尝试使用CPU功能检测器,但找不到它。

在Windows下,如果param_use_

vlfeat_or_lowe == 0然后搜索。 \ SiftWin32.exe或

\ Sift.exe否则。 对于其他操作系统,它将寻找./sift3

“找不到CMVS!” 或“错误:上面的CMVS命令失败!\”

这意味着VisualSFM无法启动cmvs,genOption或pmvs2。

通常如果CMVS二进制文件未放置在正确的位置,通常会发生这种情况。

ViualSFM [.EXE]应该位于同一文件夹中:

Cmvs.exe / pmvs2.exe / genOption.exe [pthreadVC2.dll]适用于Windows,

CMVS / PMVS2 / GENOption其他操作系统。

如果尚未下载,请参阅FAQ-2。

请注意,这些命令也可能由于输入错误或单独输入而失败。 你应该

尝试自己在系统终端上运行这些命令,然后查看

这些二进制文件中的原始日志。

软件特色:

功能检测速度快,在GUI模式下,使用“菜单->工具->启用GPU->自定义参数”

控制台在控制台模式下,使用“ VisualSFM sfm [+ pmvs]输入和输出[SiftGPU参数]”

您需要检查SiftGPU的这些参数的文档。通常除非您的图形内存不足,否则无需这样做。

功能匹配速度

Param_gpu_match_fmax是在特征匹配中使用的每个图像的特征数。默认值为8192,但在大多数情况下4k应该足够。请注意,要素是按比例排序的,因此将使用比例最大的要素。

如果您知道图像邻域,例如视频中的相邻帧,则应指定匹配对列表,而不要使用完整的成对匹配。

软件功能:

支持使用VisualSFM GUI,通过命令行使用VisualSFM

该程序在使用时依赖于SiftGPU / PBA和PMVS / CMVS

改进用法,支持指定匹配列表以进行匹配

您可以使用自己的特征匹配和自己的特征检测器

支持更高速度参数的调整,输出格式:N-View Match(NVM)

技术细节,相机模型和坐标系,焦点初始化,中间:功能和匹配

命令行VisualSFM中的命令行!使用VisualSFM轻松显示动画

可能会花费很多时间来保存结果(尤其是对于NFS)。默认情况下,在Linux下启用测试功能以提高效率。

增量重建速度param_bundle_full_iteration是绑定完整模型时的BA迭代次数。

精品推荐
猜你喜欢
用户评论