roidb = merge_roidb(roidbs) roidb = filter_roidb(roidb, config) bbox_means, bbox_stds = add_bbox_regression_targets(roidb, config) print('Creating Iterator with {} Images'.format(len(roidb))) #horovod DataIter #train_iter=[] #for i in range(num_workers): worker_roidb = random.sample(roidb, len(roidb) // num_workers) train_iter = MNIteratorE2E(roidb=worker_roidb, config=config, batch_size=batch_size, nGPUs=nGPUs, threads=config.TRAIN.NUM_THREAD, pad_rois_to=400) # train_iter.append(worker_train_iter) print('The Iterator has {} samples!'.format(len(train_iter))) # Creating the Logger if rank == 0: logger, output_path = create_logger(config.output_path, args.cfg, config.dataset.image_set) # get list of fixed parameters print('Initializing the model...') sym_inst = eval('{}.{}'.format(config.symbol,
image_sets = [iset for iset in config.dataset.image_set.split('+')] roidbs = [load_proposal_roidb(config.dataset.dataset, image_set, config.dataset.root_path, config.dataset.dataset_path, proposal=config.dataset.proposal, append_gt=True, flip=config.TRAIN.FLIP, result_path=config.output_path, proposal_path=config.proposal_path, load_mask=config.TRAIN.WITH_MASK, only_gt=not config.TRAIN.USE_NEG_CHIPS) for image_set in image_sets] roidb = merge_roidb(roidbs) roidb = filter_roidb(roidb, config) bbox_means, bbox_stds = add_bbox_regression_targets(roidb, config) print('Creating Iterator with {} Images'.format(len(roidb))) train_iter = MNIteratorE2E(roidb=roidb, config=config, batch_size=batch_size, nGPUs=nGPUs, threads=config.TRAIN.NUM_THREAD, pad_rois_to=400) #, crop_size=(config.TRAIN.SCALES[-1],config.TRAIN.SCALES[-1])) print('The Iterator has {} samples!'.format(len(train_iter))) # Creating the Logger logger, output_path = create_logger(config.output_path, args.cfg, config.dataset.image_set) # get list of fixed parameters print('Initializing the model...') sym_inst = eval('{}.{}'.format(config.symbol, config.symbol))(n_proposals=400, momentum=args.momentum) sym = sym_inst.get_symbol_rcnn(config) fixed_param_names = get_fixed_param_names(config.network.FIXED_PARAMS, sym) # Creating the module mod = mx.mod.Module(symbol=sym, context=context,
result_path=config.output_path, proposal_path=config.proposal_path, load_mask=config.TRAIN.WITH_MASK, only_gt=not config.TRAIN.USE_NEG_CHIPS) for image_set in image_sets ] roidb = merge_roidb(roidbs) roidb = filter_roidb(roidb, config) bbox_means, bbox_stds = add_bbox_regression_targets(roidb, config) print('Creating Iterator with {} Images'.format(len(roidb))) train_iter = MNIteratorE2E(roidb=roidb, config=config, batch_size=batch_size, nGPUs=nGPUs, threads=config.TRAIN.NUM_THREAD, pad_rois_to=400, crop_size=(216, 216)) print('The Iterator has {} samples!'.format(len(train_iter))) # Creating the Logger logger, output_path = create_logger(config.output_path, args.cfg, config.dataset.image_set) # get list of fixed parameters print('Initializing the model...') sym_inst = eval('{}.{}'.format(config.symbol, config.symbol))(n_proposals=400, momentum=args.momentum) sym = sym_inst.get_symbol_rpn_ugly(config)