Ejemplo n.º 1
0
    for k, v in vars(args).items():
        print(type(v), v)
        if v is not None and hasattr(conf, k):
            setattr(conf, k, v)

    conf.reset_attributes()

    conf.display()

    with open(os.path.join(conf.test_dir, 'filenames.txt'), 'r') as reader:
        test_files = reader.readlines()
        test_files = [f.strip() for f in test_files]

    test_gen = utils.BinaryData(conf.test_dir,
                                test_files,
                                conf.batch_size,
                                False,
                                dim=conf.dim)

    reset_tf_session()

    model = segnet.segnetCustomized((conf.dim, conf.dim, conf.input_channels),
                                    1,
                                    kernel=3,
                                    pool_size=(2, 2),
                                    output_mode=conf.final_activation)

    h5_file = 'files/{}_{}_{}_{}.h5'.format(conf.specific_name,
                                            conf.model_type, conf.dim,
                                            conf.epochs)
    opt = keras.optimizers.Adam(0.001)
    conf.reset_attributes()

    conf.display()

    with open(os.path.join(train_dir, 'filenames.txt'), 'r') as reader:
        train_files = reader.readlines()
        train_files = [f.strip() for f in train_files]

    with open(os.path.join(valid_dir, 'filenames.txt'), 'r') as reader:
        valid_files = reader.readlines()
        valid_files = [f.strip() for f in valid_files]

    train_gen = utils.BinaryData(conf.train_dir,
                                 train_files,
                                 conf.batch_size,
                                 True,
                                 dim=conf.dim)
    valid_gen = utils.BinaryData(conf.valid_dir,
                                 valid_files,
                                 conf.batch_size,
                                 False,
                                 dim=conf.dim)

    reset_tf_session()

    model = segnet.segnetCustomized((conf.dim, conf.dim, conf.input_channels),
                                    1,
                                    kernel=3,
                                    pool_size=(2, 2),
                                    output_mode=conf.final_activation)
Ejemplo n.º 3
0
						help='crop labels to half or not',
						type=bool)

	args = parser.parse_args()
	for k,v in vars(args).items():
		print(type(v), v)
		if v is not None and hasattr(conf, k):
			setattr(conf, k, v)

	conf.reset_attributes()

	conf.display()

	with open(os.path.join(conf.test_dir, 'filenames.txt'), 'r') as reader:
		test_files = reader.readlines()
		test_files = [f.strip() for f in test_files]

	test_gen = utils.BinaryData(conf.test_dir, test_files, conf.batch_size, False, dim=conf.dim, return_filenames=True)

	keras.backend.clear_session()
	model = segnet.segnetCustomized((conf.dim, conf.dim, conf.input_channels), 1, kernel=3, pool_size=(2, 2), output_mode=conf.final_activation)
	h5_file = 'files/{}_{}_{}_{}.h5'.format(conf.specific_name, conf.model_type, conf.dim, conf.epochs)
	opt = keras.optimizers.Adam(0.001)
	metrics = ['acc', utils.f1_m, utils.precision_m, utils.recall_m]
	model.load_weights(h5_file)
	model.compile(loss='binary_crossentropy', optimizer=opt, metrics=metrics)

	output_shp_file = 'files/{}'.format(conf.output_shp_file)
	utils.make_predictions_and_vectorize_binary(model, test_gen, output_shp_file, conf.test_dir)
	# utils.make_predictions_and_vectorize(model, test_gen, output_shp_file)