当前位置:   article > 正文

Nerf如何制作自己的llff数据集_出门吃三碗饭 nerf

出门吃三碗饭 nerf

Nerf三维重建使用Pycharm运行自己的数据集

------------------------------------20230427更新----------------------------------------------
Nerf代码讲解,从零简单复现论文代码
Nerf环境配置教程

你好! 这里是“出门吃三碗饭”本人,本文章接下来将介绍自己制作Nerf数据集,让你自己动手渲染第一个三维模型。视频解说可以关注B站,搜索 出门吃三碗饭 ,即可找到对应视频(预计11.24更新),另外可以关注《AI知识物语》 公众号获取更多详情信息。
讲解视频链接如下
讲解演示视频

1:准备图片数据

我这里 新建1个文件,叫plant,里面创建images文件,放上拍好的图片(这里建议按照拍照角度顺序,不要一会左一会右),文件中没有用红色方框圈起来的文件先不用着急

在这里插入图片描述在这里插入图片描述
在这里插入图片描述

2:Colmap 重建预处理

1: File --New Project-- 新建自己 plant.db,并选取images文件
2:

在这里插入图片描述

现在进行特征提取
在这里插入图片描述

再进行特征匹配
在这里插入图片描述
结束后点击Processing旁边的Reconstruction,选择Start Reconstruction
结果如下
在这里插入图片描述

3:导出参数文件

在导出前,先建立以下目录,和images同一等级创建sparse文件,再在其下建立0文件
在这里插入图片描述
File 导出 export model,保存的位置就是上图sparse文件下的0文件
在这里插入图片描述
export后,0文件就有下面4个文件
在这里插入图片描述

4: 位姿获取

现在我们有以下3个文件
在这里插入图片描述
创建 imgs2poses文件
(该imgs2poses.py 需要从llff导入一些包,其可以在官方代码github上找到,文末我也会贴出项目地址)
imgs2poses.py

from llff.poses.pose_utils import gen_poses
import sys

import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--match_type', type=str, 
					default='exhaustive_matcher', help='type of matcher used.  Valid options: \
					exhaustive_matcher sequential_matcher.  Other matchers not supported at this time')
parser.add_argument('scenedir', type=str,
					default='M:/ColmapData/NerfPlant1/', help='input scene directory')
args = parser.parse_args()

if args.match_type != 'exhaustive_matcher' and args.match_type != 'sequential_matcher':
	print('ERROR: matcher type ' + args.match_type + ' is not valid.  Aborting')
	sys.exit()
# python imgs2poses.py  M:/ColmapData/NerfPlant1

if __name__=='__main__':
    #gen_poses(args.scenedir, args.match_type)
	gen_poses(args.scenedir, args.match_type)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20

在pycharm下使用命令

python imgs2poses.py  M:/ColmapData/NerfPlant1/

M:/ColmapData/NerfPlant1/  这个可以换为自己的images所在的文件
比如我的 NerfPlant1文件下有之前创建的 images,sparse,以及plant.db文件
  • 1
  • 2
  • 3
  • 4

在这里插入图片描述
运行成功下,会有下面这个重要的文件
在这里插入图片描述

5:转移到项目中

下面把以上步骤的文件转移到 Nerf项目 data/nerf_llff_data下面的plant文件

在这里插入图片描述

6:创建config

在官网项目中,创建自己的configs文件,我这里是plant.txt,其内容参考chair.tex
在这里插入图片描述
这是我的plant.txt 内容,具体改的内容可以自己对照其他txt修改

expname = plant
basedir = ./logs
datadir = ./data/nerf_llff_data/plant
dataset_type = llff

factor = 8
llffhold = 8

N_rand = 1024
N_samples = 64
N_importance = 64

use_viewdirs = True
raw_noise_std = 1e0
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

7:完成数据制作,开始训练

使用以下命令

python run_nerf.py --config configs/plant.txt
  • 1

在这里插入图片描述
在这里插入图片描述
就可以开始训练了。

上面的项目文件可以在公众号AI知识物语 输入 关键词 获取资源

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/511086
推荐阅读
相关标签
  

闽ICP备14008679号