Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -1,39 +1,9 @@
|
|
1 |
-
|
2 |
import gradio as gr
|
3 |
import tensorflow as tf
|
4 |
-
import h5py
|
5 |
-
import json
|
6 |
|
7 |
path_to_model = "./modelo_jeysshon_iaderm.h5"
|
8 |
|
9 |
-
#
|
10 |
-
with h5py.File(path_to_model, 'r+') as f:
|
11 |
-
# Navega hasta la configuración del modelo
|
12 |
-
model_config = f['model_config']
|
13 |
-
model_config_str = model_config[()].decode('utf-8')
|
14 |
-
|
15 |
-
# Carga la configuración como un diccionario
|
16 |
-
config = json.loads(model_config_str)
|
17 |
-
|
18 |
-
# Función para eliminar el argumento 'groups' de la configuración
|
19 |
-
def remove_groups(config):
|
20 |
-
if isinstance(config, dict):
|
21 |
-
if 'class_name' in config and config['class_name'] == 'DepthwiseConv2D':
|
22 |
-
if 'config' in config and 'groups' in config['config']:
|
23 |
-
del config['config']['groups']
|
24 |
-
for key, value in config.items():
|
25 |
-
remove_groups(value)
|
26 |
-
elif isinstance(config, list):
|
27 |
-
for item in config:
|
28 |
-
remove_groups(item)
|
29 |
-
|
30 |
-
# Elimina el argumento 'groups' de la configuración del modelo
|
31 |
-
remove_groups(config)
|
32 |
-
|
33 |
-
# Guarda la configuración modificada de nuevo en el archivo HDF5
|
34 |
-
model_config[()] = json.dumps(config).encode('utf-8')
|
35 |
-
|
36 |
-
# Ahora intenta cargar el modelo nuevamente
|
37 |
model = tf.keras.models.load_model(path_to_model)
|
38 |
|
39 |
labels = [
|
@@ -51,13 +21,14 @@ labels = [
|
|
51 |
'Urticaria Ronchas', 'Tumores Vasculares', 'Vasculitis', 'Verrugas Molusco'
|
52 |
]
|
53 |
|
54 |
-
def classify_image(
|
55 |
-
|
56 |
-
|
|
|
57 |
confidences = {labels[i]: float(prediction[i]) for i in range(23)}
|
58 |
return confidences
|
59 |
|
60 |
-
title = "AI-DERM DETECTION
|
61 |
|
62 |
article = (
|
63 |
"Se propone un sistema automatizado para el diagnóstico de las 23 enfermedades comunes de la piel:\n\n"
|
@@ -116,4 +87,3 @@ gr.Interface(
|
|
116 |
outputs=gr.outputs.Label(num_top_classes=4),
|
117 |
examples=examples
|
118 |
).launch()
|
119 |
-
|
|
|
|
|
1 |
import gradio as gr
|
2 |
import tensorflow as tf
|
|
|
|
|
3 |
|
4 |
path_to_model = "./modelo_jeysshon_iaderm.h5"
|
5 |
|
6 |
+
# Cargar el modelo directamente
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7 |
model = tf.keras.models.load_model(path_to_model)
|
8 |
|
9 |
labels = [
|
|
|
21 |
'Urticaria Ronchas', 'Tumores Vasculares', 'Vasculitis', 'Verrugas Molusco'
|
22 |
]
|
23 |
|
24 |
+
def classify_image(image):
|
25 |
+
image = tf.image.resize(image, (224, 224))
|
26 |
+
image = tf.expand_dims(image, axis=0)
|
27 |
+
prediction = model.predict(image).flatten()
|
28 |
confidences = {labels[i]: float(prediction[i]) for i in range(23)}
|
29 |
return confidences
|
30 |
|
31 |
+
title = "AI-DERM DETECTION"
|
32 |
|
33 |
article = (
|
34 |
"Se propone un sistema automatizado para el diagnóstico de las 23 enfermedades comunes de la piel:\n\n"
|
|
|
87 |
outputs=gr.outputs.Label(num_top_classes=4),
|
88 |
examples=examples
|
89 |
).launch()
|
|