jeysshon commited on
Commit
782d47c
·
verified ·
1 Parent(s): 298c51c

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +15 -6
app.py CHANGED
@@ -7,7 +7,7 @@ import tensorflow as tf
7
  from tensorflow import keras
8
 
9
  # Cargar el modelo entrenado
10
- model1 = load_model('./isatron_v3.h5')
11
 
12
  # Función para encontrar la última capa convolucional
13
  def find_last_conv_layer(model):
@@ -89,15 +89,24 @@ def image_classifier1(img):
89
  img_array = load_and_preprocess_image1(img)
90
  # Realizar predicción usando model1
91
  preds = model1.predict(img_array)
92
- prediction = preds[0][0] # Suponiendo que el modelo devuelve una probabilidad
93
- # Determinar el índice de la clase predicha
94
- pred_index = int(prediction > 0.5)
 
 
 
 
 
 
 
 
 
95
  # Generar mapa de calor
96
- heatmap = make_gradcam_heatmap(img_array, model1, last_conv_layer_name, pred_index=pred_index)
97
  # Superponer mapa de calor en la imagen original
98
  overlayed_img = overlay_heatmap(heatmap, orig_img)
 
99
  # Retornar la imagen superpuesta y los porcentajes de predicción
100
- prediction_percentage = {'PNEUMONIA': float(prediction), 'NORMAL': float(1 - prediction)}
101
  return overlayed_img, prediction_percentage
102
 
103
  # Crear interfaz Gradio con estilo predeterminado y pie de página
 
7
  from tensorflow import keras
8
 
9
  # Cargar el modelo entrenado
10
+ model1 = load_model('./modelo_isatron_jeysshonl.h5')
11
 
12
  # Función para encontrar la última capa convolucional
13
  def find_last_conv_layer(model):
 
89
  img_array = load_and_preprocess_image1(img)
90
  # Realizar predicción usando model1
91
  preds = model1.predict(img_array)
92
+
93
+ # Asumimos que el modelo devuelve una probabilidad entre 0 y 1 para PNEUMONIA
94
+ prediction = preds[0][0] # Suponiendo que el modelo devuelve la probabilidad de neumonía
95
+
96
+ # Si la predicción es mayor a 0.5, consideramos que es neumonía
97
+ if prediction > 0.5:
98
+ pred_label = "PNEUMONIA"
99
+ prediction_percentage = {'PNEUMONIA': float(prediction * 100), 'NORMAL': float((1 - prediction) * 100)}
100
+ else:
101
+ pred_label = "NORMAL"
102
+ prediction_percentage = {'NORMAL': float((1 - prediction) * 100), 'PNEUMONIA': float(prediction * 100)}
103
+
104
  # Generar mapa de calor
105
+ heatmap = make_gradcam_heatmap(img_array, model1, last_conv_layer_name, pred_index=int(prediction > 0.5))
106
  # Superponer mapa de calor en la imagen original
107
  overlayed_img = overlay_heatmap(heatmap, orig_img)
108
+
109
  # Retornar la imagen superpuesta y los porcentajes de predicción
 
110
  return overlayed_img, prediction_percentage
111
 
112
  # Crear interfaz Gradio con estilo predeterminado y pie de página