示例#1
0
def main():
    # Define Data for training
    dataX = glob(
        os.path.join("./data", FLAGS.datasetX, FLAGS.input_fname_pattern))
    dataY = glob(
        os.path.join("./data", FLAGS.datasetY, FLAGS.input_fname_pattern))

    with tf.Session(config=tf.ConfigProto(log_device_placement=True)) as sess:
        dcgan = DCGAN(sess,
                      output_width=FLAGS.output_width,
                      output_height=FLAGS.output_height,
                      batch_size=FLAGS.batch_size,
                      sample_num=FLAGS.batch_size,
                      z_dim=FLAGS.generate_test_images,
                      c_dim=FLAGS.c_dim,
                      checkpoint_dir=FLAGS.checkpoint_dir)

        if FLAGS.train:
            dcgan.train(FLAGS, dataX, dataY)
        else:  # INFERENCE
            if not dcgan.load(FLAGS.checkpoint_dir)[0]:
                raise Exception("[!] Train a model first, then run test mode")
            # Render samples to "samples" folder
            # Option 1 render manifold of samples with dim = n*n = number_of_samples
            # Option 2 render imagens one by one
            dcgan.get_samples(sample_dir=FLAGS.sample_dir, option=1)

        print("====DONE=====")