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

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

相关推荐
hjjdebug1 小时前
linux 下 signal() 函数的用法,信号类型在哪里定义的?
linux·signal
其乐无涯1 小时前
服务器技术(一)--Linux基础入门
linux·运维·服务器
Diamond技术流1 小时前
从0开始学习Linux——网络配置
linux·运维·网络·学习·安全·centos
斑布斑布1 小时前
【linux学习2】linux基本命令行操作总结
linux·运维·服务器·学习
Spring_java_gg1 小时前
如何抵御 Linux 服务器黑客威胁和攻击
linux·服务器·网络·安全·web安全
✿ ༺ ོIT技术༻1 小时前
Linux:认识文件系统
linux·运维·服务器
会掉头发2 小时前
Linux进程通信之共享内存
linux·运维·共享内存·进程通信
我言秋日胜春朝★2 小时前
【Linux】冯诺依曼体系、再谈操作系统
linux·运维·服务器
饮啦冰美式2 小时前
22.04Ubuntu---ROS2使用rclcpp编写节点
linux·运维·ubuntu