Nerf-W学习记录(二)——个人LLFF数据集制作

 series:

Nerf-W学习记录(一)——环境配置_nerf环境配置-优快云博客

Nerf-W学习记录(二)——个人LLFF数据集制作-优快云博客

Nerf-W学习记录(三)——个人数据训练-优快云博客

参考教程:

1.视频:

【手把手NeRF代码讲解——数据处理】 https://www.bilibili.com/video/BV1gG411k7KS/?share_source=copy_web&vd_source=9e04d4c780ef7da9423668eecb89e382

2.代码:

https://github.com/superrice2020/ZoomLab_NeRF?tab=MIT-1-ov-file

一、步骤

1.数据集采集

设备:iPhone13Pro

视频格式:.mov

提取images脚本:

#!/bin/bash

# 指定输入的.mov文件路径
input_mov="/home/lib/lib/IMG_0354.MOV"

# 指定输出图片的文件夹路径
output_folder="/home/lib/lib/test/images"

# 创建输出文件夹(如果不存在)
mkdir -p "$output_folder"

num_frames=200

# 获取视频的总帧数
total_frames=$(ffmpeg -i "$input_mov" -map 0:v:0 -c copy -f null - 2>&1 | grep "frame=" | awk '{print $2}')

# 计算提取间隔
interval=$((total_frames / num_frames))

# 使用ffmpeg提取指定数量的帧
ffmpeg -i "$input_mov" -vf "select='not(mod(n\,$interval))',scale=trunc(iw/2)*2:trunc(ih/2)*2" -vsync vfr -qscale:v 2 "$output_folder/%04d.jpg"
# ffmpeg -i "$input_mov" -vf "select='not(mod(n\,10))',scale=trunc(iw/2)*2:trunc(ih/2)*2" -vsync vfr -qscale:v 2 output_folder/%04d.jpg

输出数据:213张jpg

对于手动采集图片可以运行重命名脚本:

#!/bin/bash

# 指定文件夹路径
folder_path="/home/lib/lib/test/images"

# 初始化计数器
counter=1

# 遍历文件夹中的所有图片文件
for file in "$folder_path"/*.jpg; do
    # 格式化计数器为四位数
    new_name=$(printf "%04d.jpg" "$counter")

    # 重命名文件
    mv "$file" "$folder_path/$new_name"

    # 增加计数器
    ((counter++))

    # 如果计数器达到108,停止重命名
    if [ $counter -gt 108 ]; then
        break
    fi
done

运行脚本:

step1.赋权

chmod +x xxx.sh

step2.运行 

./xxx.sh

2.colmap稀疏点云

step1.运行colmap

colmap gui

*建立一个空database.db文件为database,选中images文件夹为输入图像路径

step2.特征点提取 camera model选simple_pinhole

step3.特征匹配

step4.稀疏建模

step5.导出模型

        *导出路径:sparse/0/

3.LLFF数据集制作

step1.修改文件夹路径,运行pose_utils.py

step2.删除对应图片文件(可以多删)

step3.删除sparse和database.db文件,重新进行上述步骤生成poses_bounds.npy文件,完成LLFF数据集制作

二、过程建议

*苯人试了视频转和图片格式转,感觉还是图片数据集比较丝滑*

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值