def main(args): env_info = get_sys_env() place = 'gpu' if env_info['Paddle compiled with cuda'] and env_info[ 'GPUs used'] else 'cpu' paddle.set_device(place) if not args.cfg: raise RuntimeError('No configuration file specified.') cfg = Config(args.cfg) val_dataset = cfg.val_dataset if not val_dataset: raise RuntimeError( 'The verification dataset is not specified in the configuration file.' ) msg = '\n---------------Config Information---------------\n' msg += str(cfg) msg += '------------------------------------------------' logger.info(msg) model = cfg.model transforms = val_dataset.transforms image_list, image_dir = get_image_list(args.image_path) logger.info('Number of predict images = {}'.format(len(image_list))) predict( model, model_path=args.model_path, transforms=transforms, image_list=image_list, image_dir=image_dir, save_dir=args.save_dir, aug_pred=args.aug_pred, scales=args.scales, flip_horizontal=args.flip_horizontal, flip_vertical=args.flip_vertical, is_slide=args.is_slide, crop_size=args.crop_size, stride=args.stride, )
def main(args): env_info = get_sys_env() place = 'gpu' if env_info['Paddle compiled with cuda'] and env_info[ 'GPUs used'] else 'cpu' paddle.set_device(place) if not args.cfg: raise RuntimeError('No configuration file specified.') cfg = Config(args.cfg) val_dataset = cfg.val_dataset if val_dataset is None: raise RuntimeError( 'The verification dataset is not specified in the configuration file.' ) elif len(val_dataset) == 0: raise ValueError( 'The length of val_dataset is 0. Please check if your dataset is valid' ) msg = '\n---------------Config Information---------------\n' msg += str(cfg) msg += '------------------------------------------------' logger.info(msg) model = cfg.model if args.model_path: paddleseg.utils.utils.load_entire_model(model, args.model_path) logger.info('Loaded trained params of model successfully') config_check(cfg, val_dataset=val_dataset) evaluate( model, val_dataset, threshold=args.threshold, nms_kernel=args.nms_kernel, top_k=args.top_k, num_workers=args.num_workers, )
def main(args): env_info = get_sys_env() place = 'gpu' if env_info['Paddle compiled with cuda'] and env_info[ 'GPUs used'] else 'cpu' paddle.set_device(place) if not args.cfg: raise RuntimeError('No configuration file specified.') cfg = Config(args.cfg) val_dataset = cfg.val_dataset if not val_dataset: raise RuntimeError( 'The verification dataset is not specified in the configuration file.' ) msg = '\n---------------Config Information---------------\n' msg += str(cfg) msg += '------------------------------------------------' logger.info(msg) model = cfg.model if args.model_path: para_state_dict = paddle.load(args.model_path) model.set_dict(para_state_dict) logger.info('Loaded trained params of model successfully') evaluate( model, val_dataset, aug_eval=args.aug_eval, scales=args.scales, flip_horizontal=args.flip_horizontal, flip_vertical=args.flip_vertical, is_slide=args.is_slide, crop_size=args.crop_size, stride=args.stride, num_workers=args.num_workers, )
def main(args): env_info = get_sys_env() place = 'gpu' if env_info['Paddle compiled with cuda'] and env_info[ 'GPUs used'] else 'cpu' paddle.set_device(place) if not args.cfg: raise RuntimeError('No configuration file specified.') cfg = Config(args.cfg) val_dataset = cfg.val_dataset if not val_dataset: raise RuntimeError( 'The verification dataset is not specified in the configuration file.' ) msg = '\n---------------Config Information---------------\n' msg += str(cfg) msg += '------------------------------------------------' logger.info(msg) model = cfg.model transforms = val_dataset.transforms image_list, image_dir = get_image_list(args.image_path) logger.info('Number of predict images = {}'.format(len(image_list))) test_config = get_test_config(cfg, args) config_check(cfg, val_dataset=val_dataset) predict( model, model_path=args.model_path, transforms=transforms, image_list=image_list, image_dir=image_dir, save_dir=args.save_dir, **test_config)
def main(args): if args.seed is not None: paddle.seed(args.seed) np.random.seed(args.seed) random.seed(args.seed) env_info = get_sys_env() info = ['{}: {}'.format(k, v) for k, v in env_info.items()] info = '\n'.join(['', format('Environment Information', '-^48s')] + info + ['-' * 48]) logger.info(info) place = 'gpu' if env_info['Paddle compiled with cuda'] and env_info[ 'GPUs used'] else 'cpu' paddle.set_device(place) if not args.cfg: raise RuntimeError('No configuration file specified.') cfg = Config(args.cfg, learning_rate=args.learning_rate, iters=args.iters, batch_size=args.batch_size) # Only support for the DeepLabv3+ model if args.data_format == 'NHWC': if cfg.dic['model']['type'] != 'DeepLabV3P': raise ValueError( 'The "NHWC" data format only support the DeepLabV3P model!') cfg.dic['model']['data_format'] = args.data_format cfg.dic['model']['backbone']['data_format'] = args.data_format loss_len = len(cfg.dic['loss']['types']) for i in range(loss_len): cfg.dic['loss']['types'][i]['data_format'] = args.data_format train_dataset = cfg.train_dataset if train_dataset is None: raise RuntimeError( 'The training dataset is not specified in the configuration file.') elif len(train_dataset) == 0: raise ValueError( 'The length of train_dataset is 0. Please check if your dataset is valid' ) val_dataset = cfg.val_dataset if args.do_eval else None losses = cfg.loss msg = '\n---------------Config Information---------------\n' msg += str(cfg) msg += '------------------------------------------------' logger.info(msg) config_check(cfg, train_dataset=train_dataset, val_dataset=val_dataset) train(cfg.model, train_dataset, val_dataset=val_dataset, optimizer=cfg.optimizer, save_dir=args.save_dir, iters=cfg.iters, batch_size=cfg.batch_size, resume_model=args.resume_model, save_interval=args.save_interval, log_iters=args.log_iters, num_workers=args.num_workers, use_vdl=args.use_vdl, losses=losses, keep_checkpoint_max=args.keep_checkpoint_max, test_config=cfg.test_config, fp16=args.fp16, profiler_options=args.profiler_options)
def main(args): if args.seed is not None: paddle.seed(args.seed) np.random.seed(args.seed) random.seed(args.seed) env_info = get_sys_env() info = ['{}: {}'.format(k, v) for k, v in env_info.items()] info = '\n'.join(['', format('Environment Information', '-^48s')] + info + ['-' * 48]) logger.info(info) place = 'gpu' if env_info['Paddle compiled with cuda'] and env_info[ 'GPUs used'] else 'cpu' paddle.set_device(place) if not args.cfg: raise RuntimeError('No configuration file specified.') cfg = Config( args.cfg, learning_rate=args.learning_rate, iters=args.iters, batch_size=args.batch_size) train_dataset = cfg.train_dataset if train_dataset is None: raise RuntimeError( 'The training dataset is not specified in the configuration file.') elif len(train_dataset) == 0: raise ValueError( 'The length of train_dataset is 0. Please check if your dataset is valid' ) val_dataset = cfg.val_dataset if args.do_eval else None losses = cfg.loss msg = '\n---------------Config Information---------------\n' msg += str(cfg) msg += '------------------------------------------------' logger.info(msg) config_check(cfg, train_dataset=train_dataset, val_dataset=val_dataset) model = cfg.model if args.model_path: utils.load_entire_model(model, args.model_path) logger.info('Loaded trained params of model successfully') skip_quant(model) quantizer = QAT(config=quant_config) quant_model = quantizer.quantize(model) logger.info('Quantize the model successfully') train( quant_model, train_dataset, val_dataset=val_dataset, optimizer=cfg.optimizer, save_dir=args.save_dir, iters=cfg.iters, batch_size=cfg.batch_size, resume_model=None, save_interval=args.save_interval, log_iters=args.log_iters, num_workers=args.num_workers, use_vdl=args.use_vdl, losses=losses, keep_checkpoint_max=args.keep_checkpoint_max)