Ariel013 commited on
Commit
61c0af3
·
verified ·
1 Parent(s): 8713743

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +30 -13
app.py CHANGED
@@ -8,11 +8,13 @@ import os
8
  os.environ['TF_ENABLE_ONEDNN_OPTS'] = '0'
9
  os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'
10
 
11
- # Etiquetas de las clases (Solo 5 categorías)
12
- cifar10_labels = ['avión', 'automóvil', 'pájaro', 'gato', 'venado']
 
 
 
13
 
14
- # Cargar el modelo correctamente desde un archivo .h5
15
- model = tf.keras.models.load_model('modelo_completo.h5')
16
 
17
  def preprocess_image(image):
18
  """Preprocesado de imagen para el modelo"""
@@ -26,17 +28,20 @@ def predict(image):
26
 
27
  processed_img = preprocess_image(image)
28
  preds = model.predict(np.expand_dims(processed_img, axis=0))[0]
29
-
30
- # Solo devolver predicciones para las 5 clases que hemos seleccionado
31
  return {label: float(preds[i]) for i, label in enumerate(cifar10_labels)}
32
 
33
- # Configurar ejemplos (Solo para 5 clases)
34
  examples = [
35
  ["ejemplos/avion.jpg"],
36
  ["ejemplos/automovil.jpg"],
37
  ["ejemplos/pajaro.jpg"],
38
  ["ejemplos/gato.jpg"],
39
- ["ejemplos/venado.jpg"]
 
 
 
 
 
40
  ]
41
 
42
  # Construir interfaz
@@ -45,8 +50,8 @@ with gr.Blocks(theme=gr.themes.Soft(), css="""
45
  .examples-row {display: flex !important; gap: 1rem; justify-content: center}
46
  """) as app:
47
 
48
- gr.Markdown("# 📷 Clasificador CIFAR-10 (5 Clases)")
49
-
50
  with gr.Row():
51
  with gr.Column():
52
  input_image = gr.Image(
@@ -65,12 +70,24 @@ with gr.Blocks(theme=gr.themes.Soft(), css="""
65
  num_top_classes=3,
66
  show_label=True
67
  )
68
-
69
  # Sección de ejemplos con interacción
70
  gr.Markdown("## Ejemplos de categorías")
71
  with gr.Column(elem_classes=["examples-grid"]):
 
 
 
 
 
 
 
 
 
 
 
 
72
  with gr.Row(elem_classes=["examples-row"]):
73
- for example, label in zip(examples, cifar10_labels):
74
  gr.Examples(
75
  examples=example,
76
  inputs=[input_image],
@@ -95,4 +112,4 @@ with gr.Blocks(theme=gr.themes.Soft(), css="""
95
  )
96
 
97
  if __name__ == "__main__":
98
- app.launch()
 
8
  os.environ['TF_ENABLE_ONEDNN_OPTS'] = '0'
9
  os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'
10
 
11
+ # Configuración inicial
12
+ cifar10_labels = [
13
+ 'avión', 'automóvil', 'pájaro', 'gato', 'venado',
14
+ 'perro', 'rana', 'caballo', 'barco', 'camión'
15
+ ]
16
 
17
+ model = tf.keras.models.load_model('my_model.keras')
 
18
 
19
  def preprocess_image(image):
20
  """Preprocesado de imagen para el modelo"""
 
28
 
29
  processed_img = preprocess_image(image)
30
  preds = model.predict(np.expand_dims(processed_img, axis=0))[0]
 
 
31
  return {label: float(preds[i]) for i, label in enumerate(cifar10_labels)}
32
 
33
+ # Configurar ejemplos
34
  examples = [
35
  ["ejemplos/avion.jpg"],
36
  ["ejemplos/automovil.jpg"],
37
  ["ejemplos/pajaro.jpg"],
38
  ["ejemplos/gato.jpg"],
39
+ ["ejemplos/venado.jpg"],
40
+ ["ejemplos/perro.jpg"],
41
+ ["ejemplos/rana.jpg"],
42
+ ["ejemplos/caballo.jpg"],
43
+ ["ejemplos/barco.jpg"],
44
+ ["ejemplos/camion.jpg"]
45
  ]
46
 
47
  # Construir interfaz
 
50
  .examples-row {display: flex !important; gap: 1rem; justify-content: center}
51
  """) as app:
52
 
53
+ gr.Markdown("# 📷 Clasificador CIFAR-10 by Aryy :3")
54
+
55
  with gr.Row():
56
  with gr.Column():
57
  input_image = gr.Image(
 
70
  num_top_classes=3,
71
  show_label=True
72
  )
73
+
74
  # Sección de ejemplos con interacción
75
  gr.Markdown("## Ejemplos de categorías")
76
  with gr.Column(elem_classes=["examples-grid"]):
77
+ # Primera fila
78
+ with gr.Row(elem_classes=["examples-row"]):
79
+ for example, label in zip(examples[:5], cifar10_labels[:5]):
80
+ gr.Examples(
81
+ examples=example,
82
+ inputs=[input_image],
83
+ label=label.capitalize(),
84
+ examples_per_page=1,
85
+ fn=predict,
86
+ outputs=[output_label],
87
+ )
88
+ # Segunda fila
89
  with gr.Row(elem_classes=["examples-row"]):
90
+ for example, label in zip(examples[5:], cifar10_labels[5:]):
91
  gr.Examples(
92
  examples=example,
93
  inputs=[input_image],
 
112
  )
113
 
114
  if __name__ == "__main__":
115
+ app.launch()