Spaces:
Sleeping
Sleeping
File size: 2,083 Bytes
e75a639 ccbe493 7c0489b 3546d12 e75a639 7c0489b 3546d12 610ec6d 3546d12 610ec6d 3546d12 e3046c9 610ec6d e3046c9 7aa593e 7c0489b ccbe493 7c0489b ccbe493 7c0489b 7aa593e 7c0489b 7aa593e ccbe493 7aa593e ccbe493 7c0489b ccbe493 c751eaa ccbe493 7c0489b ccbe493 7057abd 7c0489b 57f0050 ccbe493 57f0050 610ec6d 57f0050 610ec6d 57f0050 7a171b3 610ec6d | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 | import streamlit as st
import tensorflow as tf
import numpy as np
from skimage import exposure
from skimage.io import imread
from skimage.transform import resize
from skimage.filters import sobel
# Funci贸n para cargar y preprocesar la imagen
def load_and_preprocess_image(image):
# Descargar datos de imagen
img = imread(image)
# Aseg煤rate de que el tama帽o de la imagen coincida con el modelo
img = resize(img, (224, 224))
# Mejora de contraste
img_contrast_enhanced = exposure.equalize_adapthist(img)
# Detecci贸n de bordes
#img_edges = sobel(img_contrast_enhanced)
img_final = np.expand_dims(img_contrast_enhanced, axis=0)
return img_final
# Funci贸n para procesar la imagen con el modelo
def process_image(image):
# Carga del modelo
model = tf.keras.models.load_model('model.h5') # modelo entrenado respaldado, archivo .h5
# Preprocesamiento de la imagen
processed_image = load_and_preprocess_image(image)
# Predicci贸n
result = model.predict(processed_image)[0][0]
predicted_class = 'Maligno' if result >= 0.5 else 'Benigno'
return predicted_class
# Configuraci贸n de la barra lateral
st.sidebar.title('Clasificador de C谩ncer de Piel') # t铆tulo de la barra
st.sidebar.image('logo.png', width=50) # icono de la barra
st.sidebar.markdown('[Github](https://github.com/lalovaltierra/MIA)') # link
# Configuraci贸n del cuerpo principal
st.title('Selecciona una im谩gen') # t铆tulo del cuerpo principal
uploaded_image = st.file_uploader('',type=['jpg', 'jpeg', 'png']) # input para imagen
# Mostrar la imagen cargada y el resultado del procesamiento
col1, col2 = st.columns(2) # se generan dos columnas
col2.subheader("Resultado de la clasificaci贸n") #t铆tulo de la columna 2
if uploaded_image is not None: # si hay imagen
with col1:
# Mostrar la imagen
st.image(uploaded_image, caption='Imagen cargada', width=200)
with col2:
# Procesar la imagen
result = process_image(uploaded_image)
st.text(f'{result}') |