# -*- coding: utf-8 -*- """787antitheft.195 Automatically generated by Colab. Original file is located at https://colab.research.google.com/drive/1RuQfAM5faBjQTkTWdhahfka6eF7S0MGu """ import os import cv2 import numpy as np import matplotlib.pyplot as plt import tensorflow as tf mnist = tf.keras.datasets.mnist (x_train, y_train), (x_test, y_test) = mnist.load_data() x_train = tf.keras.utils.normalize(x_train, axis=1) x_test = tf.keras.utils.normalize(x_test, axis=1) model = tf.keras.models.Sequential() model.add(tf.keras.layers.Flatten(input_shape=(28,28))) model.add(tf.keras.layers.Dense(128, activation='relu')) model.add(tf.keras.layers.Dense(128, activation='relu')) model.add(tf.keras.layers.Dense(10, activation='softmax')) model.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics=['accuracy']) model.fit(x_train, y_train, epochs=3) model.save('handwritten.model') model = tf.keras.models.load_model('handwritten.model') loss, accimaguracy = model.evaluate(x_test, y_test) image_number = 1 while os.path.isfile(f"digits/digit{image_number}.png"): try: img = cv2.imread(f"digit/digits{image_number}.png")[:,:,0] img = np.invert(np.array([img])) prediction = model.predict(img) print(f"This digit is probably a {np.argmax(prediction)}") plt.imshow(img[0], cmap=plt.cm.binary) plt.show() except: print("Error!") finally: image_number += 1