> 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/shape-analysis/minimum-circle.md).

# Minimum Circle

Esta función encuentra y dibuja el círculo mínimo que encierra una forma dada (contorno) y devuelve el centro y el radio del círculo junto con una imagen de resultado visual. Es útil para estimar el tamaño o la posición de un objeto, o para mediciones simples basadas en la forma.

## 📥 Entradas

`Image Any`\
La imagen que se usará como superficie de dibujo y referencia visual para el resultado. Se devolverá una copia de esta imagen con el círculo detectado superpuesto.

`Contour`\
Una forma (contorno) que define el objeto a encerrar. Normalmente proviene de un bloque de detección de contornos o extracción de formas.

## 📤 Salidas

`Image`\
Una copia de la imagen de entrada con el círculo mínimo dibujado.

`Center`\
La posición del centro del círculo envolvente (x, y). Úsalo para alineación, mediciones o operaciones geométricas posteriores.

`Radius`\
El radio del círculo envolvente. Útil para estimar tamaño, establecer umbrales o activar lógica a continuación.

## 🕹️ Controles

Este bloque no tiene controles interactivos—solo conecta las entradas requeridas y generará las salidas cuando se ejecute.

## ⚙️ Mecanismo de ejecución

Al ejecutarse, el bloque recibe un contorno y una imagen. Calcula el círculo más pequeño que encierra completamente el contorno, dibuja ese círculo sobre una copia de la imagen proporcionada y devuelve la imagen anotada junto con el `Center` y el `Radius`. El bloque espera una entrada de contorno válida; si no se proporciona contorno, el resultado estará vacío o sin cambios.

## 🎯 Características

* Produce una imagen de resultado con el círculo envolvente dibujado para verificación visual.
* Devuelve salidas geométricas numéricas (`Center`, `Radius`) que pueden usarse en bloques posteriores para medición o lógica.
* Ligero y rápido—apto para pipelines en tiempo real cuando hay contornos disponibles.
* Funciona con cualquier bloque que produzca contornos; no requiere parámetros adicionales.

## 📝 Uso

1. Proporciona un contorno a la entrada `Contour` — normalmente el resultado de un `Find Contour` o un extractor de formas.
2. Proporciona una imagen a la entrada `Image Any` para visualización.
3. Ejecuta el escenario; el bloque devolverá la imagen anotada y las propiedades del círculo.

## 💡 Consejos y trucos

* Para obtener contornos, usa `Find Contour` o `Find Object` antes de este bloque.
* Si el contorno es irregular o demasiado detallado, utiliza `Approximate Contour` para simplificar la forma antes de alimentar este bloque; esto puede producir un círculo envolvente más significativo para contornos ruidosos.
* Recorta a una región de interés con `Image ROI Select` o `Image ROI` para acelerar el procesamiento y evitar contornos no relacionados.
* Preprocesa la imagen con `Blur` o `Image Threshold` para mejorar la calidad de la detección de contornos corriente arriba.
* Visualiza o anota los resultados finales usando `Draw Rectangle`, `Draw Result On Image`, o envía el resultado a `Show Image` para una vista más grande.
* Usa las salidas numéricas (`Center`, `Radius`) con bloques de medición o lógica (por ejemplo, para comparar tamaños, activar alertas o almacenar valores).

## 🛠️ Resolución de problemas

* No aparece ningún círculo: asegúrate de proporcionar un contorno válido. Usa un bloque productor de contornos como `Find Contour` y verifica que el contorno no esté vacío.
* El círculo parece demasiado grande o pequeño: intenta simplificar el contorno con `Approximate Contour` o refina la detección de contornos ajustando el preprocesado upstream (por ejemplo con `Image Threshold`, `Blur`).
* Resultados inesperados en imágenes con ruido: recorta el área de interés con `Image ROI Select` y filtra el ruido antes de detectar contornos.
