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"""

Resultado da Classificação

Classe Predita: {predicted_label}

Data e Hora: {current_time}

""" # 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="""

Este é um classificador de imagens de tumores da tireoide.

Para usá-lo:

  1. Clique no botão 'Escolher Arquivo' para fazer o upload de uma imagem da tireoide.
  2. Aguarde a classificação automática.
  3. O resultado mostrará a classe predita e a data e hora da classificação.

Este classificador é baseado em um modelo pré-treinado e pode ajudar a identificar a presença de tumores da tireoide em imagens médicas.

""", ) # Inicie a interface Gradio iface.launch()