Vincentqyw
update: features and matchers
a80d6bb
raw history blame
No virus
3.52 kB
import argparse
arg_lists = []
parser = argparse.ArgumentParser(description='LANet')
def str2bool(v):
return v.lower() in ('true', '1')
def add_argument_group(name):
arg = parser.add_argument_group(name)
arg_lists.append(arg)
return arg
# train data params
traindata_arg = add_argument_group('Traindata Params')
traindata_arg.add_argument('--train_txt', type=str, default='',
help='Train set.')
traindata_arg.add_argument('--train_root', type=str, default='',
help='Where the train images are.')
traindata_arg.add_argument('--batch_size', type=int, default=8,
help='# of images in each batch of data')
traindata_arg.add_argument('--num_workers', type=int, default=4,
help='# of subprocesses to use for data loading')
traindata_arg.add_argument('--pin_memory', type=str2bool, default=True,
help='# of subprocesses to use for data loading')
traindata_arg.add_argument('--shuffle', type=str2bool, default=True,
help='Whether to shuffle the train and valid indices')
traindata_arg.add_argument('--image_shape', type=tuple, default=(240, 320),
help='')
traindata_arg.add_argument('--jittering', type=tuple, default=(0.5, 0.5, 0.2, 0.05),
help='')
# data storage
storage_arg = add_argument_group('Storage')
storage_arg.add_argument('--ckpt_name', type=str, default='PointModel',
help='')
# training params
train_arg = add_argument_group('Training Params')
train_arg.add_argument('--start_epoch', type=int, default=0,
help='')
train_arg.add_argument('--max_epoch', type=int, default=12,
help='')
train_arg.add_argument('--init_lr', type=float, default=3e-4,
help='Initial learning rate value.')
train_arg.add_argument('--lr_factor', type=float, default=0.5,
help='Reduce learning rate value.')
train_arg.add_argument('--momentum', type=float, default=0.9,
help='Nesterov momentum value.')
train_arg.add_argument('--display', type=int, default=50,
help='')
# loss function params
loss_arg = add_argument_group('Loss function Params')
loss_arg.add_argument('--score_weight', type=float, default=1.,
help='')
loss_arg.add_argument('--loc_weight', type=float, default=1.,
help='')
loss_arg.add_argument('--desc_weight', type=float, default=4.,
help='')
loss_arg.add_argument('--corres_weight', type=float, default=.5,
help='')
loss_arg.add_argument('--corres_threshold', type=int, default=4.,
help='')
# other params
misc_arg = add_argument_group('Misc.')
misc_arg.add_argument('--use_gpu', type=str2bool, default=True,
help="Whether to run on the GPU.")
misc_arg.add_argument('--gpu', type=int, default=0,
help="Which GPU to run on.")
misc_arg.add_argument('--seed', type=int, default=1001,
help='Seed to ensure reproducibility.')
misc_arg.add_argument('--ckpt_dir', type=str, default='./checkpoints',
help='Directory in which to save model checkpoints.')
def get_config():
config, unparsed = parser.parse_known_args()
return config, unparsed