def __init__(self): args = args_setter() imdb = get_imdb(args.imdb_name) print 'Loaded dataset `{:s}` for training'.format(imdb.name) roidb = get_training_roidb(imdb) data_layer = GtDataLayer(roidb, imdb.num_classes)
if args.cfg_file is not None: cfg_from_file(args.cfg_file) print('Using config:') pprint.pprint(cfg) if not args.randomize: # fix the random seeds (numpy and caffe) for reproducibility np.random.seed(cfg.RNG_SEED) imdb = get_imdb(args.imdb_name) print 'Loaded dataset `{:s}` for training'.format(imdb.name) print 'symmetry' print imdb._symmetry roidb = get_training_roidb(imdb) output_dir = get_output_dir(imdb, None) print 'Output will be saved to `{:s}`'.format(output_dir) device_name = '/gpu:{:d}'.format(args.gpu_id) cfg.GPU_ID = args.gpu_id print device_name if cfg.NETWORK == 'FCN8VGG': path = osp.abspath(osp.join(cfg.ROOT_DIR, args.pretrained_model)) cfg.TRAIN.MODEL_PATH = path pretrained_model = None else: pretrained_model = args.pretrained_model
print('Called with args:') print(args) if args.cfg_file is not None: cfg_from_file(args.cfg_file) print('Using config:') pprint.pprint(cfg) if not args.randomize: # fix the random seeds (numpy and caffe) for reproducibility np.random.seed(cfg.RNG_SEED) imdb = get_imdb(args.imdb_name) print 'Loaded dataset `{:s}` for training'.format(imdb.name) roidb = get_training_roidb(imdb) output_dir = get_output_dir(imdb, None) print 'Output will be saved to `{:s}`'.format(output_dir) device_name = '/gpu:{:d}'.format(args.gpu_id) cfg.GPU_ID = args.gpu_id print device_name network = get_network(args.network_name, args.pretrained_model) print 'Use network `{:s}` in training'.format(args.network_name) train_net(network, imdb, roidb, output_dir, pretrained_model=args.pretrained_model, max_iters=args.max_iters)