> For the complete documentation index, see [llms.txt](https://docs.augelab.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.augelab.com/spanish/caracteristicas-clave/annotate-data-for-object-detection/auto-annoation.md).

# Auto Annotation

Magic annotation te ayuda a generar bounding boxes automáticamente usando modelos de IA, de modo que puedas etiquetar datasets mucho más rápido.

Está diseñado para un flujo de trabajo práctico:

1. Configura el modelo y los prompts una sola vez
2. Auto-etiqueta una imagen para verificar la calidad
3. Auto-etiqueta por lotes todo el dataset
4. Revisa y corrige lo que esté mal

***

## Requisitos

{% hint style="info" %}
Magic annotation funciona más rápido con una GPU NVIDIA.

* Necesitarás un equipo con una [GPU NVIDIA](/spanish/introduccion/system-requirements.md)
* Si hay una GPU NVIDIA disponible, descarga torch GPU desde Module Downloader para acelerar la auto-annotación.
* Descarga los módulos de IA requeridos desde la ventana Module Downloader
  {% endhint %}

***

## Primera mirada

![Magic annotation entry point in the Classes panel](/files/z8R9BAY64iLxPOIeO3NG)

(Abre Magic annotation con el botón ✨ (o presionando `T`).)

Puedes abrir Magic annotation de dos maneras:

* Presiona la tecla `T` para auto-anotar la imagen actual (usa tus ajustes guardados)
* Haz clic en el botón ✨ en el panel **Classes** para abrir el diálogo de ajustes de **Magic annotation**

{% hint style="info" %}
La primera vez que uses Magic annotation, AugeLab Studio te pedirá que configures tus ajustes. Estos ajustes se recuerdan y puedes cambiarlos en cualquier momento haciendo clic en el botón ✨.
{% endhint %}

***

## Antes de empezar (recomendado)

Magic annotation necesita un dataset y una lista de clases.

1. Carga la carpeta de tu dataset en la Image Annotation Window
2. Carga (o crea) tu archivo `classes.names`

Si no has usado antes la Annotation Window, sigue primero la guía principal de etiquetado.

***

## Abrir el diálogo de Magic annotation

1. Abre **AI Tools** → **Image Annotation**
2. Carga tu dataset y el archivo de clases
3. En el panel **Classes**, haz clic en el botón ✨

Se abrirá el diálogo de **Magic annotation Settings**.

![Magic annotation settings dialog](/files/ZNOHeIOY8wX3xCMGbNsY)

***

## Paso 1 — Elegir un modelo

En **Model Selection**, elige uno de los detectores soportados.

### Modelos text-prompt (recomendados para clases personalizadas)

Estos modelos detectan objetos usando descripciones de tus clases (text prompts):

* **Grounding DINO Tiny**: buen valor por defecto, más rápido
* **Grounding DINO Base**: más preciso, más pesado (se recomienda GPU)
* **OWLv2 Base Ensemble**: buen modelo general
* **OWLv2 Large Ensemble**: más preciso, más pesado (se recomienda GPU)

Usa estos cuando tus clases no sean las clases estándar de COCO o cuando quieras describir el objeto en lenguaje natural.

### Modelos YOLO (rápidos, pero importa la coincidencia de clases)

Los modelos YOLO aparecen cuando la funcionalidad YOLO/OpenCV DNN está disponible:

* **YOLOv4 (COCO)**
* **YOLOv4 Tiny (COCO)**

Estos NO usan descripciones de texto. Usan los nombres de clase de COCO.

{% hint style="warning" %}
Para los modelos YOLO (COCO), los nombres de clase de COCO deben coincidir con los nombres de clase de tu dataset **exactamente**.\
Ejemplo: si tu clase es `person`, debe ser exactamente `person` (no `human`).
{% endhint %}

### Modelo YOLOv4 personalizado

Si tienes tu propio modelo YOLOv4, selecciona **Custom YOLOv4 Model** y proporciona:

* Archivo de pesos (`.weights`)
* Archivo de configuración (`.cfg`)
* Archivo de nombres (`.names`)

***

## Paso 2 — Ajustar umbrales

### Confidence Threshold

Controla cuánta confianza debe tener una detección para convertirse en una etiqueta.

* Valores más altos → menos cajas, pero normalmente más limpias
* Valores más bajos → más cajas, pero más falsos positivos

Un buen punto de partida es **30%**.

### Grounding DINO: Box Threshold y Text Threshold

Aparecen solo para modelos Grounding DINO:

* **Box Threshold**: qué tan estricta debe ser la confianza del box
* **Text Threshold**: qué tan estricta debe ser la coincidencia texto-objeto

Guía rápida:

* Si aparecen demasiadas cajas incorrectas → aumenta primero **Text Threshold**
* Si las cajas son imprecisas o demasiado anchas → aumenta **Box Threshold**
* Si no obtienes detecciones → baja los umbrales gradualmente

***

## Paso 3 — Escribir mejores descripciones de clase (Modelos text-prompt)

Si seleccionaste un modelo text-prompt, verás una tabla **Class Descriptions**.

![Class descriptions table](/files/0SG3zagNp6msN49fyiaQ)

(La tabla Class Descriptions se usa como prompts.)

Por qué importa: la descripción es el prompt que el modelo usa para encontrar tus objetos.

Buenas descripciones son:

* Visuales y específicas (color, forma, material)
* Basadas en tus imágenes reales (fondo, iluminación, orientación)

Ejemplos:

* En lugar de `bolt` → `silver bolt on a black conveyor belt`
* En lugar de `cup` → `white paper cup, top view`
* En lugar de `label` → `rectangular sticker label on a cardboard box`

También puedes usar:

* **Use Class Names** para restablecer los prompts a los nombres de clase
* **Clear All** para empezar desde cero

{% hint style="info" %}
Consejo: si dos clases se parecen, haz la descripción enfatizando lo que las diferencia.\
Ejemplo: `scratch on metal surface` vs `oil stain on metal surface`.
{% endhint %}

***

## Paso 4 — Elegir el modo de anotación (Importante)

Magic annotation soporta tres modos para manejar imágenes que ya tienen anotaciones:

* **Override**: reemplaza los archivos de anotación existentes
* **Add**: añade nuevas detecciones a las anotaciones existentes
* **Skip**: no procesa imágenes que ya tienen anotaciones

Uso recomendado:

* Elige **Override** cuando empiezas desde cero o quieres re-etiquetar todo
* Elige **Add** cuando quieras complementar tus etiquetas existentes
* Elige **Skip** cuando estés puliendo un dataset parcialmente etiquetado y no quieras sobreescribir trabajo

***

## Ejecutar Magic annotation

### Annotate Current (una imagen)

Usa **Annotate Current** primero.

Esta es la forma más segura de validar que:

* tus prompts son buenos
* los umbrales son razonables
* las cajas se ven correctas

Si los resultados no son buenos, ajusta prompts/umbrales y prueba otra vez.

### Batch Annotate All (todo el dataset)

Cuando la imagen actual se vea bien, haz clic en **Batch Annotate All**.

Un diálogo de progreso mostrará:

* estado actual (cargando modelo / procesando)
* barra de progreso
* tiempo estimado restante (ETA)

Puedes cancelar en cualquier momento.

![Batch Magic annotation progress dialog](/files/dgV31ouvQEbGd1eDXXPK)

(Progreso de Batch Magic annotation con ETA.)

***

## Revisar y corregir resultados

Magic annotation está pensado para acelerar el etiquetado, no para sustituir la revisión.

Después de auto-etiquetar:

1. Recorre rápidamente las imágenes para detectar fallos evidentes
2. Corrige cajas incorrectas (clase errónea, tamaño erróneo)
3. Elimina falsos positivos
4. Añade manualmente objetos que faltaron donde sea necesario

Si ves errores repetidos, detén el proceso, ajusta prompts/umbrales y vuelve a ejecutar.

***

Si tus modelos de IA no se comportan como esperas, usa estos ajustes rápidos para afinar el rendimiento.

<details>

<summary>🚫 "It annotates nothing" (Zero Detections)</summary>

Cuando la IA es demasiado "tímida" y no etiqueta nada, normalmente es un problema de umbral o de descripción.

* **Baja la Confidence:** Reduce ligeramente el **Confidence Threshold** (por ejemplo, disminuye algunos puntos).
* **Sensibilidad de texto:** Para Grounding DINO, baja el **Text Threshold** para ser menos estricto con la coincidencia de palabras.
* **Sé específico:** En lugar de "part", prueba con "silver metal bolt" o "red plastic cap". Las descripciones deben ser visuales.
* **Verifica listas:** Asegúrate de que tu lista de clases está realmente cargada en los ajustes del nodo y que no está vacía.

</details>

<details>

<summary>📦 "Too many wrong boxes" (Ghost Detections)</summary>

Si la pantalla se llena de falsos positivos, necesitas ser más estricto con el modelo.

* **Aumenta la Confidence:** Incrementa el **Confidence Threshold** para filtrar conjeturas de baja certeza.
* **Rigidez de texto:** Aumenta el **Text Threshold** para forzar una coincidencia más cercana entre la imagen y tu prompt.
* **Elimina ambigüedad:** Evita prompts generales como "object" o "item". Si la IA etiqueta sombras como "parts", describe específicamente los colores o texturas únicas de la pieza.

</details>

<details>

<summary>❓ "YOLO model doesn't detect my class"</summary>

Los modelos YOLO estándar están pre-entrenados en datasets específicos.

* **COCO estándar:** Los modelos YOLO básicos solo reconocen las 80 categorías de COCO. Tus etiquetas deben coincidir exactamente (p. ej., `person`, `cell phone`, `chair`, `bottle`).
* **Necesidades personalizadas:** Si necesitas detectar algo específico (como un "scratched circuit board"), cambia a un modelo **Text-Prompt** (por ejemplo Grounding DINO) o entrena un **Custom YOLO**.

</details>

<details>

<summary>🐌 "Processing is slow or laggy"</summary>

Los modelos de visión consumen muchos recursos.

* **Retraso en la primera ejecución:** Es normal que la primera ejecución sea lenta mientras los modelos se descargan e inicializan en memoria.
* **Tamaño del modelo:** Grounding DINO Base y OWLv2 Large son de alta precisión pero "pesados". Prueba una variante "Tiny" o "Small" para más velocidad.
* **Hardware:** Asegúrate de que AugeLab está utilizando tu **GPU**. Ejecutar modelos grandes en CPU resultará en mucha latencia.

</details>

***

### 💡 ¿Aún atascado?

Prueba el **AI Assistant** en AugeLab Studio. Describe tu vista de cámara específica y cómo se ven actualmente las cajas; a menudo puede sugerir el valor decimal exacto para tus umbrales.

¿Quieres que cree una tabla "Threshold Cheat Sheet" que explique exactamente qué hacen Confidence vs. Text thresholds?

***

## Notas

* Los ajustes de Magic annotation se guardan y se reutilizan cuando presionas `T`.
* Si tu plan/licencia tiene límites para Magic annotation offline, la herramienta impedirá el procesamiento por lotes una vez alcanzado el límite.
