class MNISTServer: def __init__(self): self.lenet = LeNet() def predict(self, image): preprocessed_image = np.array(image, dtype='float32') pmf = self.lenet.predict(preprocessed_image) return [Prediction(digit=digit, probability=probability) for digit, probability in pmf]
class MNISTServer: def __init__(self): self.lenet = LeNet() def predict(self, image): preprocessed_image = np.array(image, dtype='float32') pmf = self.lenet.predict(preprocessed_image) return [ Prediction(digit=digit, probability=probability) for digit, probability in pmf ]
def aiTest(images, shape): model = LeNet() y_test = [] x_test = images generate_images = [] for image in x_test: confidence = model.predict(image)[0] predicted_class = np.argmax(confidence) y_test.append(predicted_class) attacker = PixelAttacker((x_test, y_test)) for i in range(len(x_test)): generate_images.append(attacker.attack(i, model, verbose=False)[10]) return generate_images
import os import cv2 import numpy as np from lenet import LeNet data_dir = "mnist/test" net = LeNet() net.load("lenet.npy") files = os.listdir(data_dir) images = [] labels = [] for f in files: img = cv2.imread(os.path.join(data_dir, f), cv2.IMREAD_GRAYSCALE) img = cv2.resize(img, (32, 32)) img = img.astype(np.float32).reshape(32, 32, 1) / 255.0 images.append(img) labels.append(int(f[0])) x = np.array(images) y = np.array(labels) predict = net.predict(x) tp = np.sum(predict == y) accuracy = float(tp) / len(files) print("accuracy=%f" % accuracy)