| 5 | import neptune |
| 6 | |
| 7 | def setup_logger(name, cfg, args, is_train): |
| 8 | logger = logging.getLogger(name) |
| 9 | logger.setLevel(logging.DEBUG) |
| 10 | |
| 11 | now = datetime.now() |
| 12 | dt_string = now.strftime("%d-%m-%Y-%H-%M-%S") |
| 13 | if is_train: |
| 14 | Output_dir = os.path.join(cfg.OUTPUT.DIR, "{}-{}-{}".format(cfg.MODEL.NAME, cfg.DATA.DATASET_NAME, dt_string)) |
| 15 | else: |
| 16 | Output_dir = os.path.join(cfg.OUTPUT.DIR, "Inference-{}-{}-{}".format(cfg.MODEL.NAME, cfg.DATA.DATASET_NAME, dt_string)) |
| 17 | |
| 18 | formatter = logging.Formatter("%(asctime)s %(name)s %(levelname)s: %(message)s") |
| 19 | |
| 20 | if not os.path.exists(Output_dir): |
| 21 | os.makedirs(Output_dir) |
| 22 | os.makedirs("{}/img".format(Output_dir)) |
| 23 | os.makedirs("{}/pth".format(Output_dir)) |
| 24 | |
| 25 | fh = logging.FileHandler(os.path.join(Output_dir, "log.txt")) |
| 26 | fh.setLevel(logging.DEBUG) |
| 27 | fh.setFormatter(formatter) |
| 28 | logger.addHandler(fh) |
| 29 | |
| 30 | logger.info(args) |
| 31 | |
| 32 | logger.info("Loaded network configuration file {}".format(args.config_network)) |
| 33 | logger.info("Loaded dataset configuration file {}".format(args.config_dataset)) |
| 34 | |
| 35 | os.system('cp {} {}/MODEL.yaml'.format(args.config_network, Output_dir)) |
| 36 | os.system('cp {} {}/DATA.yaml'.format(args.config_dataset, Output_dir)) |
| 37 | |
| 38 | cfg.OUTPUT.DIR = Output_dir |
| 39 | |
| 40 | # neptune_run = neptune.init_run(project=cfg.PROJECT_NAME, |
| 41 | # api_token=cfg.API_TOKEN) |
| 42 | # params = {"Learning_rate": cfg.TRAINING.OPTIMIZER.INIT_LEARNING_RATE, |
| 43 | # "Optimizer": cfg.TRAINING.OPTIMIZER.NAME, |
| 44 | # "Scheduler": cfg.TRAINING.SCHEDULER.NAME, |
| 45 | # "Positive_Dis": cfg.DATA.POSITIVES_RADIUS, |
| 46 | # "Negtive_Dis": cfg.DATA.NEGATIVES_RADIUS, |
| 47 | # "Loss": cfg.LOSS.NAME, |
| 48 | # "Loss_Margin0": cfg.LOSS.MARGIN0, |
| 49 | # "Loss_Margin1": cfg.LOSS.MARGIN1, |
| 50 | # "Batch_Size": cfg.TRAINING.BATCH.BATCH_SIZE} |
| 51 | # neptune_run["parameters"] = params |
| 52 | neptune_run = None |
| 53 | |
| 54 | return logger, neptune_run, cfg |