使用全景相机进行高斯泼溅的构建方案

书接上回,前文尝试视频裁切帧的方式来进行3D高斯场景重建。

但视频切帧缺乏位置信息,运镜的速度、角度不均匀,会导致很多图片没法准确关联。

因此,想到另一种只需一次运镜就能完成场景重建的方案,那就是全景相机

Insta360 X系列的全景相机为例,它允许一前一后两台相机同时进行录制,通过视角合成,实现约等于360°的全景效果。

我手上正好有一台两年前购置的Insta360 X3,于是参考了Pixel Reconstruct的教程[1],尝试了一下通过全景相机来进行3D高斯场景重建。

前期拍摄

拍摄场景必须满足的一点是:拍摄过程中,没有行人经过。

因为后面要利用所有帧的图像来还原场景,如果一个角度有人,一个角度没人,可能就会造成画面不一致无法匹配,甚至场景的崩坏。

我选择了学校图书馆前一处行人较少的场景,等到行人走干净时,采用4K 30fps的规格进行录制。

拍摄方式是通过拍摄杆,将相机举到头顶,这样的好处是可以利用全景相机存在的视角差,让后面在裁剪画面时,可以不把自己的影响裁进去。

举着相机绕着这个场景走了两圈,一圈外圈,一圈内圈,耗时4分钟。

后期编辑

拍摄完成后,将视频导入insta360 studio里面进行编辑。

由于我拍摄的时间偏黄昏,画面亮度较低,因此我进行了简单的画面处理,主要调整三个值:

  • 调高亮度:让画面看起来更亮,提升观感
  • 调高曝光:在调高画面亮度的同时,减少画面中的噪点
  • 调高清晰度:提升锐度,让场景边缘更加锐利,方便后面特征点匹配

调整完之后,导出.mp4格式的视频,直接用普通播放器打开,看到的是这样的画面,一个画面中,记录了两颗摄像头拍摄的信息。

视频切帧

下一步,就是将视频切成图像,采用ffmpeg进行处理,命令如下:

复制代码
ffmpeg -i path/to/360_video.mp4 -vf fps=2 -qscale:v 1 (output_folder)/ image_%04d.jpg

其中,fps=2表示每2帧切一帧,如果步频较慢,可以间隔更多帧进行切帧。

切完帧后,共得到479张图片。

全景图片裁切

下一步,需要将这些全景图像裁切成正方形的图像块。

具体用到的是 meshroom[2],它仅支持windows和linux两个系统,需要下载2021.1这个版本。

因为后面的版本,命令有很大变化,只有该版本能使用下面的命令。

下面进入bin路径,用以下命令进行图像裁切:

复制代码
aliceVision_utils_split360Images.exe -i (input 360 image folder) -o (output 2D image folder) --equirectangularNbSplits 8 --equirectangularSplitResolution 1200

裁切完之后,得到了3k多张1200x1200分辨率的图像块。

进行高斯重建

有了图像块之后,高斯重建就相对简单了。

下面采用colmap-gradio来计算colmap(花费了两个半小时),再用brush训练了三万步。

这两个工具前文已详细介绍过,这里不做赘述。

下图是重建完的效果:

编辑后预览

下面再使用SuperSplat对结果进行编辑,导入图像,会有很多冗余的散点。

编辑后,得到需要保留的区域。

下面基于GaussianSplats3D进行了模型可视化。

模型粗看还可以,但拉近细看还是有些"毛糙"的。

总结

本文打通了从全景相机到构建3DGS的流程路径,不过仍有两点可以优化:

  • 选择在白天光线充足的时候进行拍摄,同时场景中避免水面/玻璃等反射物体干扰,理论效果会更好;
  • 在计算colmap时,可以采用RealityScan的方案,理论效果会比当前计算的效果更好。

后面抽时间再尝试一下新方案。

参考

1\] https://www.youtube.com/watch?v=LQNBTvgljAw \[2\] https://github.com/alicevision/meshroom/releases

相关推荐
双翌视觉2 小时前
高精度视觉对位实现键盘线路薄膜定位纠偏
数码相机·计算机外设
ZPC82102 小时前
OLOv11 + 深度相机的方案实现高精度3D定位
人工智能·数码相机·算法·机器人
yeflx4 小时前
机械臂视觉抓取(三):从手眼标定到实际抓取
数码相机
深视智能科技6 小时前
弱光成像领域的EMCCD替代型科学相机革新者——Solis B518 sCMOS相机
数码相机
小彭努力中8 小时前
193.Vue3 + OpenLayers 实战:圆孔相机模型推算卫星拍摄区域
vue.js·数码相机·vue·openlayers·geojson
qq_526099131 天前
工业视觉时代,图像采集卡如何重构数据采集
图像处理·数码相机·计算机视觉·自动化
码农xo1 天前
android 设备实时传输相机采集的视频到电脑pc端 通过内网wifi 方案
android·数码相机·音视频
PHOSKEY1 天前
3D工业相机从点云数据到五轴点胶运动轨迹的转化技术
数码相机·3d
Pyeako1 天前
基于Qt和PaddleOCR的工业视觉识别报警系统开发
人工智能·python·深度学习·数码相机·opencv·ocr·pyqt5
中达瑞和-高光谱·多光谱1 天前
光谱相机选购指南:核心参数全解析
数码相机