简易录制视频做3D高斯

系统环境

ubuntu20 ,cuda11.8,anaconda配置好了3D高斯的环境。

具体参考3D高斯环境配置:https://blog.csdn.net/Son_of_the_Bronx/article/details/138527329?spm=1001.2014.3001.5501

colmap安装:https://blog.csdn.net/Son_of_the_Bronx/article/details/138543508?spm=1001.2014.3001.5501

录制视频

用手机录制即可,直接录制视频

从视频中截取照片

这里我是参考的一片博客:3D Gaussian Splatting Linux端部署指南(含Linux可视化)

在这篇博客的最后,提供了一个train_video.py的代码,具体可以去那篇博客参考他的代码。具体的操作应该就是通过ffmpeg来截取视频生成一张一张的图片,然后放到colmap中进行稀疏重建,然后再把点云和相机位姿图片放到3D高斯中训练,最终得到训练结果。

我这里记录的是在跑这个train_video.py代码期间遇到的报错。

python脚本报错

报的这个错误,应该就是脚本在运行这句命令的时候报错:

bash 复制代码
command = f'ffmpeg -i {video_path} -qscale:v 1 -qmin 1 -vf fps={fps} {images_path}/%05d.jpg'
subprocess.run(command, shell=True)

我没有像这篇博客3D Gaussian Splatting Linux端部署指南(含Linux可视化)在一开始的时候就把conda和apt-get的ffmpeg卸载,可能是这个原因导致的错误吧。

当我在终端打出:

bash 复制代码
ffmpeg -h

出现的也是这个问题:

因为我是在conda环境下用的ffmpeg命令,而这个conda环境下的ffmpeg命令有问题,找不到这个openh264的库文件。(PS:不在conda环境下,ffmpeg命令是有效的,说明现在conda的bin目录优先级是比系统的bin目录优先级高)

解决方案

那么conda环境下的ffmpeg命令有问题就去解决他。

网上搜索的方法首先是更新ffmpeg

bash 复制代码
conda update ffmpeg

但是在更新完后对我来说还是报这个错误,所以我想的是openh264有问题,所以运行下面指令,去更新openh264

bash 复制代码
conda update openh264

然后也能够在 gaussian_splatting这个anaconda环境中的lib

找到对应的库文件

所以后续就没有报错,用的是自己录的小视频进行3D高斯训练。

训练结果

一个一分钟的视频,3090训练了16分钟

整体质量还是比较粗糙,相机比较差,而且拍摄的角度应该也是有讲究的,后面再好好准备自己录的数据集。

相关推荐
zfxwasaboy14 小时前
DRM KMS 子系统(4)Planes/Encoder/Connector
linux·c语言
暮色_年华14 小时前
随想 2:对比 linux内核侵入式链表和 STL 非侵入链表
linux·c++·链表
dnncool14 小时前
【Linux】操作系统发展
linux
文言一心15 小时前
LINUX离线升级 Python 至 3.11.9 操作手册
linux·运维·python
XRJ040618xrj16 小时前
如何在Linux中根据物理网卡建立虚拟网卡
linux·服务器·网络
码农水水16 小时前
蚂蚁Java面试被问:混沌工程在分布式系统中的应用
java·linux·开发语言·面试·职场和发展·php
晚风吹长发16 小时前
初步了解Linux中的动静态库及其制作和使用
linux·运维·服务器·数据结构·c++·后端·算法
物理与数学17 小时前
linux 内核memblock
linux·linux内核
4t4run17 小时前
28、Linux 系统定时任务
linux·运维·服务器