Spaces:
Runtime error
Runtime error
| """ | |
| Archivo: detection.py | |
| Fecha de modificación: 03/06/2026 | |
| Autor: Equipo AgroVisión | |
| Descripción: | |
| Define el tipo de dominio `Detection` y las constantes de clases del modelo de | |
| conteo. Es un módulo puro (sin dependencias pesadas) compartido por la inferencia | |
| y por el cálculo de métricas, evitando importaciones circulares. | |
| Acciones Principales: | |
| - Provee la estructura inmutable de una detección y el catálogo de clases. | |
| Estructura Interna: | |
| - `Detection`: dataclass con caja, confianza y clase de una detección. | |
| - Constantes `CLASS_*` y `CLASS_NAMES`: catálogo de clases del modelo. | |
| Entradas / Dependencias: | |
| - Solo librería estándar. | |
| Salidas / Efectos: | |
| - Ninguno; expone tipos y constantes. | |
| Ejemplo de Integración: | |
| from backend.core.detection import Detection, CLASS_PLANT | |
| deteccion = Detection(0, 0, 10, 10, 0.9, CLASS_PLANT) | |
| """ | |
| from __future__ import annotations | |
| from dataclasses import dataclass | |
| CLASS_PLANT: int = 0 | |
| CLASS_WEED: int = 1 | |
| CLASS_NAMES: dict[int, str] = {CLASS_PLANT: "planta", CLASS_WEED: "maleza"} | |
| class Detection: | |
| """Detección individual con caja delimitadora, confianza y clase.""" | |
| x1: float | |
| y1: float | |
| x2: float | |
| y2: float | |
| confidence: float | |
| class_id: int | |