mood_detector / handler.py
ravi86's picture
Create handler.py
5331715 verified
raw
history blame contribute delete
560 Bytes
from tensorflow.keras.models import load_model
from PIL import Image
import numpy as np
model = load_model("my_model.h5")
emotions = ["Angry", "Disgust", "Fear", "Happy", "Sad", "Surprise", "Neutral"]
def preprocess(image):
image = image.convert("L").resize((48, 48))
arr = np.array(image) / 255.0
arr = np.expand_dims(arr, axis=(0, -1)) # (1, 48, 48, 1)
return arr
def predict(image):
img = preprocess(image)
pred = model.predict(img)
label = emotions[np.argmax(pred)]
return {"label": label, "score": float(np.max(pred))}