Spaces:
Runtime error
Runtime error
File size: 2,414 Bytes
7a28fed 7c227c4 f9f0754 a16cc3e bcbace0 4498ea8 a16cc3e 215f6c9 a16cc3e bcbace0 7a64196 bcbace0 7a64196 91e6b5c 8336fee a16cc3e 7a64196 a16cc3e 9622945 8336fee 9622945 a16cc3e 2e839e2 a16cc3e |
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 66 67 |
import gradio as gr
from transformers import AutoFeatureExtractor, AutoModelForImageClassification
from PIL import Image
import torch
import datetime
# Carregue o extrator de recursos e o modelo
extractor = AutoFeatureExtractor.from_pretrained("SerdarHelli/ThyroidTumorClassificationModel")
model = AutoModelForImageClassification.from_pretrained("SerdarHelli/ThyroidTumorClassificationModel")
# Função para classificar a imagem
def classify_image(image):
# Pré-processa a imagem usando o extrator
inputs = extractor(images=image, return_tensors="pt")
# Passa a imagem pelo modelo
outputs = model(**inputs)
# Obtém as probabilidades das classes
logits = outputs.logits
# Calcula as probabilidades finais usando o softmax
probabilities = torch.softmax(logits, dim=1)
# Obtém a classe com a maior probabilidade
predicted_class = torch.argmax(probabilities, dim=1).item()
# Rótulos de classe personalizados com base no seu modelo
class_labels = ["Sem Tumor", "Tumor"]
# Rótulo da classe prevista
predicted_label = class_labels[predicted_class]
# Obtém a data e hora atual
current_time = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
# Formate a saída em HTML com data e hora
result_html = f"""
<h2>Resultado da Classificação</h2>
<p><strong>Classe Predita:</strong> {predicted_label}</p>
<p><strong>Data e Hora:</strong> {current_time}</p>
"""
# Retorna o resultado formatado em HTML
return result_html
# Crie uma interface Gradio com detalhes sobre o Classificador de Tumor da Tireoide
iface = gr.Interface(
fn=classify_image,
inputs=gr.inputs.Image(),
outputs=gr.outputs.HTML(), # Saída formatada com HTML
title="Classificador de Tumor da Tireoide",
description="""
<p>Este é um classificador de imagens de tumores da tireoide.</p>
<p>Para usá-lo:</p>
<ol>
<li>Clique no botão 'Escolher Arquivo' para fazer o upload de uma imagem da tireoide.</li>
<li>Aguarde a classificação automática.</li>
<li>O resultado mostrará a classe predita e a data e hora da classificação.</li>
</ol>
<p>Este classificador é baseado em um modelo pré-treinado e pode ajudar a identificar a presença de tumores da tireoide em imagens médicas.</p>
""",
)
# Inicie a interface Gradio
iface.launch()
|