COLMAP

简介:在使用instant-ngp过程中需要使用COLMAP得到模型的必要输入,比如模型需要的相机外参我们就可以通过COLMAP中的sparse reconstruction稀疏重建得到;而对于depth map深度图我们则需要dense reconstruction稠密重建得到,下面我们将简单介绍下一些选项功能,不作深入讨论。

dense reconstruction稠密重建

稠密重建的必要前提步骤就是完成稀疏重建的步骤得到相机参数信息,所以在进行稠密重建前我们先得完成稀疏重建,在点击稠密重建后会出现如下的页面
COLMAP_第1张图片
在此对undistortion , stereo , fusion , possion , delaunay几个选项进行简单的解释。

Undistortion(去畸变):相机镜头的畸变会影响图像的几何形状,通过去畸变可以还原出真实的图像几何形状,便于后续的处理。

Stereo(立体匹配):通过对两张或多张图像进行立体匹配,计算出场景中的三维点云,得到场景的三维结构。

Fusion(点云融合):将多张图像的三维点云进行融合,得到更加完整和准确的场景三维结构。

Poisson Reconstruction(泊松重建):一种基于光滑度约束的三维重建方法,通过将点云重构为连续的表面,得到更加光滑和真实的三维模型。

Delaunay Triangulation(德劳内三角剖分):将点云进行三角剖分,可以得到一系列三角形面片,作为场景三维模型的基础构件,方便后续的处理。

在此先讲述下自己配置,租的机子,9核CPU,3060显卡,数据集有60张图片。
其中undistortion运行只需要几分钟,stereo则需要约莫1小时这样子(这步必须要CUDA的设备,否则没法运行),fusion运行非常快,几分钟内即可,完成此步后就能看到一个三维重建场景(以点云表示),基本属于能看范畴,效果不错。但是在运行poisson reconstruction时,应该是算法没法很好的并行,是在CPU上跑的,9个核占满跑了我5个小时都没出结果,放弃了。

稍微也要注意点是,在undistortion过程结束后,会在原来图片数据集基础上生成一个新的images文件夹,这文件夹里的图片跟原来的图片在分辨率上有所不一样,原因是去畸变(undistortion)是通过消除相机镜头畸变(lens distortion)来实现的,从而得到无畸变的图像。镜头畸变会导致图像中的像素位置发生变化,使得相机成像的物体的实际位置与其在图像中的位置不匹配。通过去除这种畸变,可以提高图像的几何精度和质量。

当进行去畸变时,COLMAP会将图像中的每个像素重新映射到新的位置,因此会导致图像分辨率发生变化。具体来说,去畸变的过程将会在原始图像的基础上进行重新采样,使得畸变修正后的图像分辨率比原始图像略小。这是因为在去畸变过程中,COLMAP会将图像中的像素位置重新映射到新的位置,而这个过程可能会导致某些像素被合并或者分裂,从而导致畸变修正后的图像分辨率发生变化。

你可能感兴趣的:(杂篇,学习)