emociones / app.py
Jeysshon
Upload 10 files
55316a9
raw
history blame
No virus
1.68 kB
import os
from fastai.vision.all import *
import gradio as gr
# Cargar los modelos
learn_emotion = load_learner('/content/drive/MyDrive/carpeta de PIB/emotions_javier_almeida.pkl')
learn_emotion_labels = learn_emotion.dls.vocab
learn_sentiment = load_learner('/content/drive/MyDrive/carpeta de PIB/sentiment_javier_almeida.pkl')
learn_sentiment_labels = learn_sentiment.dls.vocab
# Funci贸n de predicci贸n
def predict(img_path):
img = PILImage.create(img_path)
pred_emotion, pred_emotion_idx, probs_emotion = learn_emotion.predict(img)
pred_sentiment, pred_sentiment_idx, probs_sentiment = learn_sentiment.predict(img)
emotions = {label: float(prob) for label, prob in zip(learn_emotion_labels, probs_emotion)}
sentiments = {label: float(prob) for label, prob in zip(learn_sentiment_labels, probs_sentiment)}
return emotions, sentiments
# Interfaz de Gradio
title = "Detector de emociones y sentimientos faciales para parciales finales de PIB"
description = (
"Esta interfaz utiliza redes neuronales para detectar emociones y sentimientos a partir de im谩genes faciales."
)
article = "Esta herramienta proporciona una forma r谩pida de analizar emociones y sentimientos en im谩genes."
examples = [
'/content/drive/MyDrive/carpeta de PIB/angry1.png',
'/content/drive/MyDrive/carpeta de PIB/neutral1.jpg'
]
iface = gr.Interface(
fn=predict,
inputs=gr.Image(shape=(48, 48), image_mode='L'),
outputs=[gr.Label(label='Emotion'), gr.Label(label='Sentiment')],
title=title,
examples=examples,
description=description,
article=article,
allow_flagging='never'
)
iface.launch(enable_queue=True)