> 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/image-roi-center.md).

# Image ROI Center

Esta función recorta una imagen alrededor de un punto central especificado usando un ancho y alto deseados. Si no se proporciona centro o tamaños, usa por defecto el centro de la imagen y las dimensiones completas. Devuelve la imagen recortada y las coordenadas del rectángulo usado para el recorte.

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

`Image Any`\
La imagen fuente a recortar.

`Center`\
Coordenada central para el recorte. Si no se proporciona se usa el centro de la imagen. Formato: (x, y) o (col, row) según tu flujo de trabajo.

`Width`\
Ancho deseado del recorte en píxeles. Si no se proporciona se usa el ancho de la imagen.

`Height`\
Alto deseado del recorte en píxeles. Si no se proporciona se usa el alto de la imagen.

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

`Image Any`\
La imagen recortada (región de interés) devuelta como datos de imagen.

`Rectangle`\
El rectángulo usado para el recorte, expresado como coordenadas que puedes reutilizar con otros bloques.

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

Este bloque no tiene controles interactivos adicionales en su área de widget. Todo el comportamiento se controla a través de los sockets de entrada.

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

* Recorte sencillo centrado para extraer rápidamente una ROI.
* Acepta entradas opcionales de `Width`, `Height` y `Center` para cambiar la ROI dinámicamente en tiempo de ejecución.
* Devuelve el recorte y las coordenadas del rectángulo para que los bloques posteriores puedan visualizar o reutilizar la ROI.

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

1. Conecta tu fuente de imagen a la entrada `Image Any`.
2. Opcionalmente proporciona una coordenada `Center` para cambiar el centro del recorte.
3. Opcionalmente proporciona `Width` y/o `Height` para definir el tamaño del recorte.
4. Usa la salida `Image Any` como la imagen recortada y la salida `Rectangle` para dibujar o guardar la ROI.

## ⚙️ Mecanismo de ejecución <a href="#running-mechanism" id="running-mechanism"></a>

Cuando el bloque se ejecuta, determina el centro, el ancho y el alto a partir de las entradas (o usa valores predeterminados razonables), calcula el rectángulo dentro de los límites de la imagen y retorna la imagen recortada junto con las coordenadas del rectángulo.

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

* Combínalo con `Show Image` para previsualizar el resultado recortado rápidamente.
* Usa `Image ROI Select` o `Image ROI Polygon` antes en el flujo para definir o refinar el centro de forma interactiva antes de alimentarlo a este bloque.
* Envía la salida recortada a `Find Object`, `Object Detection` o `Mask Detection` para centrar la detección en un área más pequeña y acelerar el procesamiento.
* Añade `Image Resize` después de este bloque para normalizar el tamaño del recorte para algoritmos que esperan dimensiones fijas.
* Envía la imagen recortada a `Image Logger` o `Image Write` para guardar muestras de la región de interés para inspección o entrenamiento.

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

* Si el recorte está vacío o se ve incorrecto, revisa las entradas `Center`, `Width` y `Height` para asegurarte de que estén dentro de los límites de la imagen.
* Si tu bloque posterior espera un orden de canales o un tamaño específico, añade `Image Resize` o conversiones de color antes de ese bloque.
* Si ves coordenadas inesperadas, usa `Show Image` o `Draw Rectangle` para visualizar la salida `Rectangle` y verificar la ubicación de la ROI.
