> 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/image-transformations/operations/polar-transform.md).

# Polar Transform

Esta función convierte un área rectangular (cartesiana) de una imagen en una representación polar lineal. Úsala para desenrollar características circulares o radiales (por ejemplo, anillos, ruedas o costuras circulares) para que sean más fáciles de analizar con herramientas lineales.

## 📥 Entradas

`Image Any`\
Imagen de entrada que se transformará. (socket: input)

`Center_X`\
Coordenada horizontal del centro de la transformación. Si se deja vacía, el bloque usará el centro de la imagen. (socket: input)

`Center_Y`\
Coordenada vertical del centro de la transformación. Si se deja vacía, el bloque usará el centro de la imagen. (socket: input)

`Max Radius`\
Radio máximo a usar para la transformación. Si se deja vacío, el bloque usará un radio que ajuste el área de la imagen. (socket: input)

## 📤 Salidas

`Image Any`\
Imagen resultante transformada a polar lineal. (socket: output)

## 🕹️ Controles

El bloque no tiene widgets de UI separados; las tres entradas numéricas actúan como parámetros que puedes alimentar desde otros bloques o entradas manuales:

`Center_X`\
Centro horizontal usado para el remapeo polar. Ajústalo para mover el centro de la transformada a la izquierda/derecha.

`Center_Y`\
Centro vertical usado para el remapeo polar. Ajústalo para mover el centro de la transformada arriba/abajo.

`Max Radius`\
Limita hasta qué distancia desde el centro llega la transformación. Valores más pequeños recortan la extensión radial; valores más grandes incluyen más de la imagen.

## ⚙️ Mecanismo de ejecución

Cuando se ejecuta, el bloque lee la imagen y las entradas numéricas proporcionadas, calcula un remapeo lineal-a-polar centrado en las coordenadas especificadas y produce la imagen desenrollada. Si no se proporcionan coordenadas de centro o radio, el bloque usa valores predeterminados sensatos para que la transformación aún se ejecute.

## 🎯 Features

* Desenrolla estructuras circulares o radiales en una vista rectangular para una inspección más sencilla.
* Acepta parámetros numéricos opcionales para fijar con precisión el centro y el radio.
* Funciona con cualquier bloque que genere datos de imagen.

## 📝 Usage Instructions

1. Proporciona una imagen al `Image Any` de entrada.
2. Opcionalmente alimenta números a `Center_X` y `Center_Y` para definir el centro de la transformación (o deja vacío para usar el centro de la imagen).
3. Opcionalmente alimenta un número a `Max Radius` para limitar la extensión radial.
4. Usa la salida transformada `Image Any` para análisis o visualización posteriores.

## 💡 Tips and Tricks

* Para centrar la transformada en un área específica, primero recorta con `Image ROI` o `Image ROI Select` y luego alimenta esa imagen a este bloque.
* Si la imagen es muy grande y quieres procesamiento más rápido, usa `Image Resize` antes de este bloque para reducir tamaño manteniendo el área de interés.
* Si la característica circular está rotada, alinéala primero con `Rotate Image Angle` o `Image AutoRotator` para que el resultado desenrollado sea más fácil de leer.
* Después de desenrollar, usa bloques de análisis como `Histogram On Line` para inspeccionar perfiles de intensidad a lo largo de la dirección radial o angular.
* Para inspección visual, conecta la salida a `Show Image` para una vista previa interactiva durante el desarrollo.
* Para búsquedas de objetos alrededor de un anillo, alimenta la imagen transformada a bloques de detección como `Find Object` para simplificar la localización de patrones repetidos.

(pista: combina los bloques anteriores para construir pipelines sólidos de inspección para piezas circulares, sellos o texturas en forma de anillo)

## 🛠️ Troubleshooting

* Si la imagen desenrollada se ve desplazada o deformada, verifica `Center_X` y `Center_Y` y ajústalos al verdadero centro de la característica circular.
* Si faltan partes del círculo, aumenta `Max Radius` o recorta la entrada de forma distinta usando `Image ROI` para que toda la característica esté dentro del radio de transformación.
* Si la salida se ve estirada o con poco detalle, intenta reducir el tamaño de entrada con `Image Resize` o mejora la resolución de captura antes de la transformación.
* Si no aparece salida, confirma que el socket `Image Any` de entrada esté recibiendo datos de imagen válidos (usa `Show Image` para verificar).
