Example #1
0
    assert os.path.isfile(
        params_path), "params.json does not exits at {}".format(params_path)
    params = Params(params_path)
    params.load(params.update)

    #TODO: check and load if there's the best weights so far
    #     model_dir_has_best_weights = os.path.isdir(os.path.join(args.model_dir, "best_weights"))

    #set logger
    set_logger(os.path.join(args.model_dir, 'train.log'))

    #train/test split
    train_fpaths, test_fpaths, train_targets, test_targets = \
        get_train_test_split(args.json_path, args.data_dir, train_size=args.train_size)

    params.train_size = len(train_fpaths)
    params.test_size = len(test_fpaths)

    logging.info("Creating the dataset...")
    train_inputs = input_fn(True, train_fpaths, train_targets, params)
    test_inputs = input_fn(False, test_fpaths, test_targets, params)

    logging.info("Creating the model...")
    train_model_spec = model_fn(True, train_inputs, params)
    test_model_spec = model_fn(False, test_inputs, params, reuse=True)

    logging.info("train set predict...")
    predict(train_model_spec, args.model_save_dir, params, args.restore_from)

    logging.info("test set predict...")
    predict(test_model_spec, args.model_save_dir, params, args.restore_from)
Example #2
0
        os.path.join(train_data_dir, f) for f in os.listdir(train_data_dir)
    ]
    eval_filenames = [
        os.path.join(eval_data_dir, f) for f in os.listdir(eval_data_dir)
    ]

    # Get the aligned images list
    aligned_images_list_train = glob.glob(train_filenames[1] + '/*.jpg')
    aligned_images_list_eval = glob.glob(eval_filenames[1] + '/*.jpg')

    # Get the raw images list
    raw_images_list_train = glob.glob(train_filenames[0] + '/*.jpg')
    raw_images_list_eval = glob.glob(eval_filenames[0] + '/*.jpg')

    # Specify the sizes of the dataset we train on and evaluate on
    params.train_size = len(aligned_images_list_train)
    params.eval_size = len(aligned_images_list_eval)

    # Create the two iterators over the two datasets
    print('=================================================')
    print(
        '[INFO] Dataset is built by {0} training images and {1} eval images '.
        format(len(aligned_images_list_train), len(aligned_images_list_eval)))

    tf.debugging.set_log_device_placement(args.v)
    train_dataset = input_fn(True,
                             raw_images_list_train,
                             aligned_images_list_train,
                             params=params)
    eval_dataset = input_fn(False,
                            raw_images_list_eval,