Ejemplo n.º 1
0
data_dir = "../data"
batch_size = 32
image_size = (512, 1024, 3)
phase = "test" 
image_URL = "../data/valid/handwritten/00002.png"

class_dict = {0: "handwritten",
              1: "printed"}

model = Classifier()

if phase == "train":

    model.compile(
        loss="binary_crossentropy",
        optimizer="adam",
        metrics=["accuracy"]
    )

    model.build((None,) + image_size)
    model.summary()


    train_loader, val_loader = get_loaders(data_dir, "train", image_size[:2], batch_size)

    model.fit(
        train_loader,
        steps_per_epoch=train_loader.samples // batch_size,
        epochs=5,
        validation_data=val_loader,
        validation_steps=val_loader.samples // batch_size
Ejemplo n.º 2
0
from model import Classifier
from dataset import preprocess_images
from tensorflow_addons.image import rotate
import numpy as np
import tensorflow as tf

(train_set, train_labels), (test_dataset,
                            test_labels) = tf.keras.datasets.mnist.load_data()
train_images = preprocess_images(train_set)
test_images = preprocess_images(test_dataset)
classifier = Classifier(shape=(28, 28, 1))
classifier_path = checkpoint_path = "./checkpoints/cls_nor"
cls = tf.train.Checkpoint(classifier=classifier)
cls_manager = tf.train.CheckpointManager(cls, classifier_path, max_to_keep=5)
if cls_manager.latest_checkpoint:
    cls.restore(cls_manager.latest_checkpoint)
    print('classifier checkpoint restored!!')
c_t = train_images
c_l = train_labels
classifier.compile(
    optimizer='adam',
    loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),
    metrics=['accuracy'])
classifier.fit(c_t, c_l, epochs=30, verbose=2)
test_loss, test_acc = classifier.evaluate(test_images, test_labels, verbose=2)
print('\nTest accuracy:', test_acc)
filePath = "./cls_nor"
checkpoint_path = "./checkpoints/" + filePath
ckpt_save_path = cls_manager.save()
print('Saving checkpoint for epoch {} at {}'.format(1, ckpt_save_path))