下面的链接是配置环境的教程,可自行学习配置。
https://blog.csdn.net/sakuya__/article/details/135376331?spm=1001.2014.3001.5506
下面四个命令是我在尝试从录制好的roasbag提取出一组图片,以供3DGS训练,无ros基础可不予理会。
python3 extract_rgb.pyrosbag record /rgb/image_rawrosbag info xxx.bagrosbag play -l xxx.bag开始训练
1.首先进入Gaussian Splatting源码的路径下,然后创建一个data文件夹,并把准备的MP4格式的视频放到data文件夹下,我这里视频的名字为1.MP4。(这里我使用了我自己搭建的虚拟环境 3dgs)
cd gaussian-splatting/data/ conda activate 3dgs2.使用FFmpeg截取视频帧为图片,在data目录下创建input目录,使用下面的代码可以截取视频帧并把图片放到input目录下:
ffmpeg -i 1.mp4 -vf "setpts=0.2*PTS" input/input_%4d.jpg3.进入到源码的目录下,使用源码中的 convert.py 文件生成点云,其中就是调用colmap生成点云,所以需要先安装好colmap,运行后的data文件夹中目录结构如下:(启动python脚本时一定要看版本是否兼容,如有报错就可向我一样用conda虚拟环境)
python convert.py -s data4.开始训练,接下来等待训练完即可:
python train.py -s data -m data/output训练结束后在output文件夹下找到.ply文件
然后访问这个网站,把.ply文件直接拉入这个网页即可可视化,网页的使用小技巧请自行学习。
SuperSplat Editor
常用扩展小技巧
- 自动覆盖文件,不用手动确认:加
-y
ffmpeg -y -i 1.mp4 -vf "setpts=0.2*PTS" input/input_%4d.jpg- 控制图片清晰度(
-q:v 2高质量,1–31,数字越小越清晰)
ffmpeg -i 1.mp4 -vf "setpts=0.2*PTS" -q:v 2 input/input_%4d.jpg