UTP Lab
LemonIA UTP AI
Proyecto de Investigación • Visión Artificial
UTP LemonIA • Arquitectura & Tecnologías

Manual Técnico y Arquitectura del Sistema

Documentación exhaustiva de los componentes, funciones, ventajas comparativas y pipeline de visión artificial y Deep Learning para la inspección de calidad en limones peruanos (*Limón Sutil* y *Limón Tahití*).

1

Stack Tecnológico & Justificación Técnica

Cada tecnología fue seleccionada rigurosamente para garantizar alta velocidad de inferencia, precisión matemática, robustez transaccional y escalabilidad en entornos agroindustriales y académicos.

Ultralytics YOLO11

Deep Learning • Object Detection Head
Núcleo de IA

Función: Red neuronal convolucional profunda responsable de la detección multi-objeto en tiempo real, propuesta precisa de Bounding Boxes y clasificación de calidad (Clase 0: *healthy_lemon*, Clase 1: *defect_lemon*).

Ventajas Técnicas: Incorpora la arquitectura *C3k2* y módulos *SPPF* con cabezales de detección *Anchor-Free*, logrando una latencia ultrabaja (<50ms) con alta precisión (mAP@50 superior al 92%) sin requerir GPUs masivas en inferencia.

Versión: YOLO11n / YOLO11s Inferencia: <50 ms

OpenCV 4.x

Computer Vision & Digital Image Processing
Visión Espectral

Función: Preprocesamiento espectral y cromático en espacios **LAB y HSV**, realce de contraste adaptativo **CLAHE**, Transformada de Distancia (*Distance Transform*) para separar frutos en contacto y renderizado de overlays forenses con esquinas acentuadas.

Ventajas Técnicas: Implementación nativa en C++ ultra eficiente con vectorización SIMD/AVX2. Permite eliminar la interferencia de fondos complejos (mesas de madera, sombras, sillas) y evaluar la cáscara del fruto sin falsos positivos.

Espacios: LAB, HSV, YCrCb Procesamiento: En Memoria

FastAPI & Python 3.12

High-Performance Asynchronous Web Framework
Backend ASGI

Función: Servidor de API REST asíncrono para streaming de video en vivo (Webcam/móviles), procesamiento de imágenes multipart/form-data y base64, autenticación RBAC con JWT y orquestación de tareas.

Ventajas Técnicas: Basado en Starlette y Pydantic con rendimiento comparable a Node.js y Go. Autogenera contratos OpenAPI/Swagger y ReDoc sin dependencias externas.

Python: 3.12 Asyncio Contratos: OpenAPI 3.1

PostgreSQL 16 & SQLAlchemy 2.0

ACID Relational Storage & ORM
Persistencia

Función: Persistencia transaccional de usuarios con roles (admin, annotator, viewer), datasets, muestras catalogadas, coordenadas normalizadas de Bounding Boxes, jobs de entrenamiento y registros de auditoría forense.

Ventajas Técnicas: Cumplimiento total ACID, consultas indexadas B-Tree de alta velocidad, integridad referencial con eliminación en cascada y soporte JSON nativo para metadatos de inferencia.

Motor: PostgreSQL 16 Pool: SQLAlchemy Engine

PyTorch 2.x

Tensor Computation & Autograd Engine
Cálculo Tensorial

Función: Plataforma de cálculo tensorial subyacente para el entrenamiento de redes neuronales, cálculo automático de gradientes (*Autograd*) y optimización de pesos sinápticos.

Ventajas Técnicas: Soporte nativo para aceleración por hardware (CUDA, MPS en Apple Silicon y multi-hilo CPU), permitiendo transferencia de aprendizaje (*Transfer Learning*) sobre datasets peruanos.

Optim: AdamW / SGD Autograd: Habilitado

Nginx & Gunicorn (Systemd)

Production Edge Server & Process Manager
Infraestructura

Función: Servidor web perimetral con proxy inverso hacia Gunicorn/Uvicorn, terminación SSL/TLS segura (Let's Encrypt), compresión gzip y gestión continua mediante servicio Systemd (*limones-app.service*).

Ventajas Técnicas: Protocolo HTTP/2 de alta velocidad, aislamiento de workers para evitar fugas de memoria y reinicio automático garantizado ante caídas.

Protocolo: HTTP/2 SSL Workers: 4 Uvicorn Workers

HTML5 Canvas & Web Media API

Interactive Studio & Camera Controller
Frontend UI

Función: Motor del Editor Canvas interactivo para dibujo y ajuste de Bounding Boxes, y controlador de cámara en vivo para iOS Safari y Android con conmutación instantánea entre cámara frontal y trasera.

Ventajas Técnicas: Sin dependencias de frameworks externos pesados; renderizado nativo a 60 FPS con bajo consumo de batería en smartphones de campo.

Canvas: 2D Accelerated Soporte: iOS / Android / PC

Design System UTP

Institutional Academic UI Tokens
Identidad Visual

Función: Identidad visual seria, clara y formal basada en los lineamientos de la Universidad Tecnológica del Perú (UTP), con paleta Slate-50, blanco puro, sombras suaves y acentos en Rojo Carmesí UTP (#C8102E).

Ventajas Técnicas: Tipografías modernas (Inter y Outfit), excelente legibilidad en pantallas táctiles y cumplimiento de estándares de accesibilidad WCAG AA.

Color Primario: #C8102E Fondo: #F8FAFC
2

Arquitectura de Inferencia y Visión Computacional

Diagrama del flujo secuencial que sigue cada fotograma desde el sensor de la cámara hasta la generación del dictamen de calidad y el registro forense en base de datos.

PIPELINE DE PROCESAMIENTO EN TIEMPO REAL Latencia Total: < 50ms
Paso 1 • Captura

Adquisición del Frame

Captura de video WebRTC / upload con selector de lente iOS Safari / Android.

Paso 2 • Preprocesamiento

Filtrado Espectral LAB/HSV

Aislamiento de clorofila y xantofila; supresión estricta de madera y fondos.

Paso 3 • Deep Learning

Inferencia YOLO11

Predicción de Bounding Boxes, % de confianza y clasificación (Sano vs Defecto).

Paso 4 • Auditoría

Logging Forense

Almacenamiento de coordenadas [X,Y,W,H] en PostgreSQL y renderizado de overlay.

3

Ciclo MLOps y Transfer Learning para Limones Peruanos

El sistema está diseñado para evolucionar continuamente incorporando nuevas variedades de cosechas locales y condiciones de luz mediante transferencia de aprendizaje:

1

1. Ingestión & Auto-Anotación

Subida masiva de muestras fotográficas desde el campo. El algoritmo OpenCV genera automáticamente propuestas de cajas delimitadoras para reducir en 80% el tiempo de etiquetado manual.

2

2. Partición & Fine-Tuning

División automática estratificada en Train (70%), Val (15%) y Test (15%). El worker asíncrono detached ejecuta el entrenamiento de YOLO11 registrando el avance por época y lote en tiempo real.

3

3. Activación Zero-Downtime

Comparación de métricas mAP@50 y matriz de confusión en el Model Registry. La activación del mejor modelo en producción se realiza con 1 solo clic y recarga en caliente sin reiniciar el servidor.

4

Estructura de Módulos del Sistema Web

Módulo de Inspección en Vivo /

Interfaz para operarios de planta y agricultores con soporte completo de cámara móvil, conmutador de lentes, carga por arrastre, inspección por lotes y dictamen HUD en tiempo real.

Ir a Inspección
Panel de Control & Métricas /dashboard

Cuadro de mando analítico con distribución porcentual de calidad, tiempos promedio de inferencia y accesos rápidos a operaciones MLOps.

Ir a Dashboard
Gestor de Datasets & Muestras /admin/datasets

Catálogo de colecciones de datos, importador de carpetas locales, visor de miniaturas y exportador automático al formato estándar de YOLO (*data.yaml*).

Ir a Datasets
Labeling Studio (Editor Canvas) /admin/annotate

Estudio gráfico interactivo en HTML5 Canvas para crear, mover, redimensionar y reclasificar Bounding Boxes de limones sanos o defectuosos.

Ir a Anotador
Motor de Entrenamiento YOLO11 /admin/training

Configuración de hiperparámetros (épocas, batch size, learning rate), worker asíncrono y monitor de progreso en vivo con registro de métricas.

Ir a Entrenamiento
Model Registry & Versiones /admin/models

Catálogo de pesos registrados, comparador de mAP@50 / mAP@50-95 y activación en producción con 1 clic.

Ir a Modelos
Historial & Auditoría Forense /admin/audit

Registro histórico auditable de cada predicción, modal forense con desglose de coordenadas [X,Y,W,H], exportación a CSV/JSON y purga con eliminación física de archivos en disco.

Ir a Auditoría
5

Glosario Académico de Métricas de Evaluación

mAP@50 (Mean Average Precision al 50% IoU)

Métrica estándar en detección de objetos que evalúa la precisión media cuando el área de intersección sobre unión (IoU) entre la caja predicha y la real es de al menos 50%.

mAP@50-95 (Precisión Media Integral)

Promedio del mAP evaluado en 10 umbrales de IoU crecientes (0.50 a 0.95 con saltos de 0.05). Mide la exactitud milimétrica de los Bounding Boxes.

Precision (Precisión de Clase)

Proporción de limones clasificados como sanos o defectuosos que realmente correspondían a esa clase: TP / (TP + FP).

Recall (Sensibilidad o Cobertura)

Capacidad de la red para detectar todos los limones presentes en la imagen sin omitir frutos: TP / (TP + FN).

6

Ejemplos de Integración API REST

// 1. Inferencia de Imagen Individual (cURL)
curl -X POST "https://limones.luisgonzaganeiraayala.com/api/v1/inspect/image" \
-F "file=@mi_limon.jpg" \
-F "confidence=0.35"
# 2. Inferencia en Python con Requests
import requests
url = "https://limones.luisgonzaganeiraayala.com/api/v1/inspect/image"
with open("limon.jpg", "rb") as f:
response = requests.post(url, files={"file": f}, data={"confidence": 0.35})
data = response.json()
print(f"Total: {data['total_lemons']} | Calidad: {data['quality_percentage']}% [{data['overall_quality']}]")