2024-05-19 22:06:27 +00:00
|
|
|
import numpy as np
|
|
|
|
|
import tensorflow as tf
|
|
|
|
|
import os
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#Import Data
|
|
|
|
|
PATH = os.path.join(os.getcwd(), "crop-data")
|
|
|
|
|
|
|
|
|
|
test_data = os.path.join(PATH, "test")
|
|
|
|
|
test_data_32 = tf.keras.utils.image_dataset_from_directory(test_data,
|
|
|
|
|
shuffle=True,
|
|
|
|
|
batch_size=32,
|
|
|
|
|
image_size=(160,160))
|
|
|
|
|
|
|
|
|
|
test_data_64 = tf.keras.utils.image_dataset_from_directory(test_data,
|
|
|
|
|
shuffle=True,
|
|
|
|
|
batch_size=64,
|
|
|
|
|
image_size=(160,160))
|
|
|
|
|
|
|
|
|
|
AUTOTUNE = tf.data.AUTOTUNE
|
|
|
|
|
test_data_32 = test_data_32.prefetch(buffer_size=AUTOTUNE)
|
|
|
|
|
test_data_64 = test_data_64.prefetch(buffer_size=AUTOTUNE)
|
|
|
|
|
|
|
|
|
|
test_data_32 = test_data_32.map(lambda x,y: (x, tf.one_hot(y,38)))
|
|
|
|
|
test_data_64 = test_data_64.map(lambda x,y: (x, tf.one_hot(y,38)))
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
model1 = tf.keras.models.load_model("crop-classifier.keras")
|
|
|
|
|
model2 = tf.keras.models.load_model("crop-classifier-64-batch.keras")
|
|
|
|
|
model3 = tf.keras.models.load_model("crop-classifier-callbacks.keras")
|
|
|
|
|
|
|
|
|
|
result = model1.evaluate(test_data_32)
|
|
|
|
|
print(f"Test Loss: {result[0]}")
|
|
|
|
|
print(f"Test Accuracy: {result[1]}")
|
|
|
|
|
|
|
|
|
|
result = model2.evaluate(test_data_64)
|
|
|
|
|
print(f"Test Loss: {result[0]}")
|
|
|
|
|
print(f"Test Accuracy: {result[1]}")
|
|
|
|
|
|
|
|
|
|
result = model3.evaluate(test_data_64)
|
|
|
|
|
print(f"Test Loss: {result[0]}")
|
|
|
|
|
print(f"Test Accuracy: {result[1]}")
|