> 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/function-blocks/blocks-reference/detections-shapes/roi-processing/rectangles-in-rectangle.md).

# Rectangles in Rectangle

Esta función comprueba si uno o varios rectángulos detectados se encuentran dentro de un rectángulo de referencia (región de interés) en una imagen. Proporciona un resultado visual con rectángulos coloreados y etiquetas, un booleano que indica presencia, un recuento de coincidencias y una lista de los rectángulos que están dentro del área de referencia.

## 📥 Entradas <a href="#inputs" id="inputs"></a>

`Image Any` Imagen principal usada para visualización y comprobaciones. El rectángulo de referencia y los rectángulos candidatos se dibujan en esta imagen para retroalimentación.

`Rectangle` Rectángulo de referencia definido por dos puntos esquineros (superior izquierdo e inferior derecho). Si se deja vacío, se usa toda el área de la imagen.

`Rectangles` Uno o varios rectángulos candidatos que se comprobarán frente al rectángulo de referencia. Acepta una lista de pares de coordenadas.

## 📤 Salidas <a href="#outputs" id="outputs"></a>

`Result` Imagen anotada que muestra el rectángulo de referencia y todos los rectángulos candidatos. Los rectángulos dentro del área de referencia se dibujan en verde y se etiquetan como `OK`; los que están fuera se dibujan en rojo y se etiquetan como `NOK`.

`Not Empty` Booleano que es True cuando al menos un rectángulo candidato está dentro del rectángulo de referencia.

`Count` Número de rectángulos candidatos que se encontraron dentro del rectángulo de referencia.

`Rectangles` Lista de coordenadas de los rectángulos que se determinaron como dentro del rectángulo de referencia.

## 🕹️ Controles <a href="#controls" id="controls"></a>

`No Controls` Este bloque no requiere widgets de UI adicionales; su comportamiento se controla completamente a través de sus entradas (rectángulo de referencia y rectángulos candidatos). Use otros bloques o herramientas de UI para crear o editar las entradas de rectángulo.

## 🎨 Características <a href="#features" id="features"></a>

* Confirmación visual: la imagen de salida muestra claramente el área de referencia y dibuja cada rectángulo candidato con estado codificado por color y etiquetas de texto.
* Referencia flexible: puede proporcionar un rectángulo de referencia explícito o dejarlo vacío para usar toda la imagen como referencia.
* Soporte para múltiples rectángulos: acepta un único rectángulo o una lista de rectángulos en una sola ejecución.
* Manejo seguro: comprueba y informa cuando las entradas son inválidas o están fuera de los límites de la imagen.

## 📝 Instrucciones de uso <a href="#usage" id="usage"></a>

1. Proporcione una imagen en la entrada `Image Any`.
2. Defina el área de referencia mediante la entrada `Rectangle` (dos coordenadas). Déjelo vacío para usar toda la imagen.
3. Alimente el/los rectángulo(s) candidato(s) a la entrada `Rectangles` (rectángulo único o lista).
4. Ejecute el escenario. Inspeccione la imagen en `Result` para ver qué rectángulos están dentro del área de referencia y use las salidas `Not Empty`, `Count` y `Rectangles` para lógica o registro.

## 📊 Evaluación <a href="#evaluation" id="evaluation"></a>

Al evaluarse, el bloque calcula si el centro de cada rectángulo candidato está dentro del rectángulo de referencia y si el rectángulo candidato cabe (en tamaño) dentro de la referencia. Devuelve una imagen anotada, una bandera booleana de presencia, el número de coincidencias y una lista de rectángulos coincidentes.

## 💡 Consejos y trucos <a href="#tips-and-tricks" id="tips-and-tricks"></a>

* Use `Find Object` (template matching) u otros bloques de detección para generar rectángulos candidatos automáticamente y luego alimentarlos a este bloque para filtrado por área.
* Si necesita una forma interactiva rápida para crear el área de referencia, combine con `Image ROI Select` o `Image ROI` para recortar o seleccionar el área visualmente antes de pasarla a este bloque.
* Para regiones poligonales, considere usar `Image ROI Polygon` o `Check Area (Polygon)` en combinación con este bloque. Use bloques basados en polígonos para definiciones de región más precisas y luego convierta o proporcione coordenadas rectangulares cuando sea necesario.
* Para visualizar o inspeccionar resultados en pantalla, conecte este bloque a `Show Image` para abrir un visor más grande.
* Para registrar o archivar resultados, envíe la salida `Result` a `Image Logger` o `Image Write` para guardar imágenes anotadas cuando ocurran coincidencias.
* Si la detección devuelve rectángulos inesperados, preprocese la imagen con `Blur`, `Image Threshold` o `HSV Filter` para mejorar la calidad de la detección aguas arriba.

## 🛠️ Solución de problemas <a href="#troubleshooting" id="troubleshooting"></a>

* Si no se detectan rectángulos como dentro a pesar de una superposición visual, asegúrese de que el rectángulo de referencia y los rectángulos candidatos estén en el formato de coordenadas esperado (dos puntos esquineros cada uno) y que las coordenadas estén dentro de las dimensiones de la imagen.
* Si los rectángulos candidatos aparecen etiquetados incorrectamente, confirme que la entrada de la lista de rectángulos sigue la anidación correcta (una lista de pares de coordenadas) y pruebe usar `Get ROI` o `Image ROI Select` para producir coordenadas de rectángulo bien formadas.
* Si la imagen de salida no muestra cambios, verifique que la entrada de imagen contenga el contenido esperado y que las coordenadas de los rectángulos candidatos no estén vacías o sean None.
* Use `Debug Input` o bloques de registro para inspeccionar listas intermedias de rectángulos si los resultados son inesperados.
