Spaces:
Sleeping
Sleeping
translate
Browse files
app.py
CHANGED
|
@@ -62,8 +62,10 @@ transforms_val = transforms.Compose([
|
|
| 62 |
transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])
|
| 63 |
])
|
| 64 |
|
| 65 |
-
|
|
|
|
| 66 |
def predict(image):
|
|
|
|
| 67 |
if image is None:
|
| 68 |
return None
|
| 69 |
pil_image = Image.fromarray(image.astype('uint8'), 'RGB')
|
|
@@ -73,7 +75,23 @@ def predict(image):
|
|
| 73 |
probabilities = torch.nn.functional.softmax(output[0], dim=0)
|
| 74 |
|
| 75 |
top5_prob, top5_catid = torch.topk(probabilities, 5)
|
| 76 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 77 |
return confidences
|
| 78 |
|
| 79 |
# --- 4. Crear la Interfaz de Gradio ---
|
|
|
|
| 62 |
transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])
|
| 63 |
])
|
| 64 |
|
| 65 |
+
|
| 66 |
+
# --- 3. Función de Predicción (CON LA TRADUCCIÓN A NOMBRES) ---
|
| 67 |
def predict(image):
|
| 68 |
+
# La primera parte de la función no cambia
|
| 69 |
if image is None:
|
| 70 |
return None
|
| 71 |
pil_image = Image.fromarray(image.astype('uint8'), 'RGB')
|
|
|
|
| 75 |
probabilities = torch.nn.functional.softmax(output[0], dim=0)
|
| 76 |
|
| 77 |
top5_prob, top5_catid = torch.topk(probabilities, 5)
|
| 78 |
+
|
| 79 |
+
# --- ¡AQUÍ ESTÁ LA ÚNICA CORRECCIÓN QUE NECESITAS! ---
|
| 80 |
+
confidences = {}
|
| 81 |
+
for i in range(top5_prob.size(0)):
|
| 82 |
+
# Obtenemos el ID numérico predicho
|
| 83 |
+
species_id = top5_catid[i].item()
|
| 84 |
+
# Obtenemos la probabilidad
|
| 85 |
+
prob = top5_prob[i].item()
|
| 86 |
+
|
| 87 |
+
# Usamos el mapa de etiquetas para "traducir" el ID a un nombre.
|
| 88 |
+
# Lo convertimos a string (str(species_id)) para que coincida con las claves del JSON.
|
| 89 |
+
species_name = labels_map.get(str(species_id), f"Desconocido (ID: {species_id})")
|
| 90 |
+
|
| 91 |
+
# Añadimos al diccionario el NOMBRE como clave y la probabilidad como valor.
|
| 92 |
+
confidences[species_name] = prob
|
| 93 |
+
# --------------------------------------------------------
|
| 94 |
+
|
| 95 |
return confidences
|
| 96 |
|
| 97 |
# --- 4. Crear la Interfaz de Gradio ---
|