T3 / app.py
Junior16's picture
Upload 3 files
22d4b16 verified
raw
history blame contribute delete
700 Bytes
import cv2
from fastapi import FastAPI, File, UploadFile
import numpy as np
from PIL import Image
import io
app = FastAPI()
@app.post("/detect_disease/")
async def detect_disease(file: UploadFile = File(...)):
# Leer imagen cargada
image_bytes = await file.read()
image = Image.open(io.BytesIO(image_bytes))
img_np = np.array(image)
# Convertir a escala de grises y aplicar análisis de bordes
gray = cv2.cvtColor(img_np, cv2.COLOR_RGB2GRAY)
edges = cv2.Canny(gray, 100, 200)
# Analizar características básicas (esto es un ejemplo)
disease_detected = "Enfermedad detectada" if np.mean(edges) > 50 else "Saludable"
return {"diagnosis": disease_detected}