MCPcopy Create free account
hub / github.com/ActiveVisionLab/DFNet / config_parser

Function config_parser

script/models/options.py:2–100  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

1import configargparse
2def config_parser():
3 parser = configargparse.ArgumentParser()
4 parser.add_argument("-f", "--fff", help="a dummy argument to fool ipython", default="1")
5 parser.add_argument("--device", type=int, default=-1, help='CUDA_VISIBLE_DEVICES')
6 parser.add_argument("--multi_gpu", action='store_true', help='use multiple gpu on the server')
7 parser.add_argument('--config', is_config_file=True, help='config file path')
8 parser.add_argument("--expname", type=str, help='experiment name')
9 parser.add_argument("--basedir", type=str, default='../logs', help='where to store ckpts and logs')
10 parser.add_argument("--datadir", type=str, default='./data/llff/fern', help='input data directory')
11
12 # 7Scenes
13 parser.add_argument("--trainskip", type=int, default=1, help='will load 1/N images from train sets, useful for large datasets like 7 Scenes')
14 parser.add_argument("--df", type=float, default=1., help='image downscale factor')
15 parser.add_argument("--reduce_embedding", type=int, default=-1, help='fourier embedding mode: -1: paper default, \
16 0: reduce by half, 1: remove embedding, 2: DNeRF embedding')
17 parser.add_argument("--epochToMaxFreq", type=int, default=-1, help='DNeRF embedding mode: (based on Nerfie paper): \
18 hyper-parameter for when α should reach the maximum number of frequencies m')
19 parser.add_argument("--render_pose_only", action='store_true', help='render a spiral video for 7 Scene')
20 parser.add_argument("--save_pose_avg_stats", action='store_true', help='save a pose avg stats to unify NeRF, posenet, direct-pn training')
21 parser.add_argument("--load_pose_avg_stats", action='store_true', help='load precomputed pose avg stats to unify NeRF, posenet, nerf tracking training')
22 parser.add_argument("--train_local_nerf", type=int, default=-1, help='train local NeRF with ith training sequence only, ie. Stairs can pick 0~3')
23 parser.add_argument("--render_video_train", action='store_true', help='render train set NeRF and save as video, make sure render_test is True')
24 parser.add_argument("--render_video_test", action='store_true', help='render val set NeRF and save as video, make sure render_test is True')
25 parser.add_argument("--frustum_overlap_th", type=float, help='frustsum overlap threshold')
26 parser.add_argument("--no_DNeRF_viewdir", action='store_true', default=False, help='will not use DNeRF in viewdir encoding')
27 parser.add_argument("--load_unique_view_stats", action='store_true', help='load unique views frame index')
28
29 # NeRF training options
30 parser.add_argument("--netdepth", type=int, default=8, help='layers in network')
31 parser.add_argument("--netwidth", type=int, default=128, help='channels per layer')
32 parser.add_argument("--netdepth_fine", type=int, default=8, help='layers in fine network')
33 parser.add_argument("--netwidth_fine", type=int, default=128, help='channels per layer in fine network')
34 parser.add_argument("--N_rand", type=int, default=1536, help='batch size (number of random rays per gradient step)')
35 parser.add_argument("--lrate", type=float, default=5e-4, help='learning rate')
36 parser.add_argument("--lrate_decay", type=float, default=250, help='exponential learning rate decay (in 1000 steps)')
37 parser.add_argument("--chunk", type=int, default=1024*32, help='number of rays processed in parallel, decrease if running out of memory')
38 parser.add_argument("--netchunk", type=int, default=1024*64, help='number of pts sent through network in parallel, decrease if running out of memory')
39 parser.add_argument("--no_batching", action='store_true', help='only take random rays from 1 image at a time')
40 parser.add_argument("--no_reload", action='store_true', help='do not reload weights from saved ckpt')
41 parser.add_argument("--ft_path", type=str, default=None, help='specific weights npy file to reload for coarse network')
42 parser.add_argument("--no_grad_update", action='store_true', default=False, help='do not update nerf in training')
43
44 # NeRF-Hist training options
45 parser.add_argument("--NeRFH", action='store_true', help='my implementation for NeRFH, to enable NeRF-Hist training, please make sure to add --encode_hist, otherwise it is similar to NeRFW')
46 parser.add_argument("--N_vocab", type=int, default=1000,
47 help='''number of vocabulary (number of images)
48 in the dataset for nn.Embedding''')
49 parser.add_argument("--fix_index", action='store_true', help='fix training frame index as 0')
50 parser.add_argument("--encode_hist", default=False, action='store_true', help='encode histogram instead of frame index')
51 parser.add_argument("--hist_bin", type=int, default=10, help='image histogram bin size')
52 parser.add_argument("--in_channels_a", type=int, default=50, help='appearance embedding dimension, hist_bin*N_a when embedding histogram')
53 parser.add_argument("--in_channels_t", type=int, default=20, help='transient embedding dimension, hist_bin*N_tau when embedding histogram')
54
55 # NeRF rendering options
56 parser.add_argument("--N_samples", type=int, default=64, help='number of coarse samples per ray')
57 parser.add_argument("--N_importance", type=int, default=64,help='number of additional fine samples per ray')
58 parser.add_argument("--perturb", type=float, default=1.,help='set to 0. for no jitter, 1. for jitter')
59 parser.add_argument("--use_viewdirs", default=True, action='store_true', help='use full 5D input instead of 3D')
60 parser.add_argument("--i_embed", type=int, default=0, help='set 0 for default positional encoding, -1 for none')

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected