ngt-ai-platform / modules /image_classification.py
Gaetano Parente
fix
82f7563
import cv2
import numpy as np
import keras.models as models
IMAGE_SIZE = (224, 224)
class_names = ['Tubercolosi', 'No_Tubercolosi', 'Pneumonia', 'No_Pneumonia']
BASE_PATH = './data/'
MODEL = BASE_PATH + 'model/'
def image_predict(numpy_image, model_path):
image = cv2.resize(numpy_image, IMAGE_SIZE)
images = []
images.append(image)
images = np.array(images, dtype='float32')
model = models.load_model(model_path, compile=False)
predictions = model.predict(images) # Vector of probabilities
#pred_labels = np.argmax(predictions, axis= 1)
return predictions#, pred_labels
def image_classification(numpy_image):
model = MODEL + 'medical-image-classification.h5'
labels = image_predict(numpy_image, model)
response = {}
for i, label in enumerate(labels[0]):
response[class_names[i]] = "%.4f" % float(label)
return response