简易录制视频做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分钟

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

相关推荐
AMoon丶15 分钟前
Golang--垃圾回收
java·linux·开发语言·jvm·后端·算法·golang
Densen201426 分钟前
发布blazor应用到Linux, 使用nginx作为WebSocket代理
linux·websocket·nginx
相思难忘成疾39 分钟前
RHEL9 文件管理与 vi/vim 编辑操作实验
linux·编辑器·vim
朱一头zcy39 分钟前
Linux系列02:网络配置、修改hosts映射文件、关闭防火墙
linux·运维·网络
天赐学c语言1 小时前
Linux - 网络应用层协议HTTP
linux·c++·网络服务
JiMoKuangXiangQu1 小时前
Linux 锁 (3) - semaphore
linux·semaphore
顶点多余1 小时前
Linux中进程间通信 ---管道篇
linux·运维·服务器
zzzsde1 小时前
【Linux】进程控制(2):进程等待&&进程替换
linux·服务器·网络
longxibo1 小时前
【Ubuntu datasophon1.2.1 二开之八:验证实时数据入湖】
大数据·linux·clickhouse·ubuntu·linq
恋红尘2 小时前
K8S 服务发现-叩丁狼
linux·docker·kubernetes