> 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/ai-blocks/social-distance-detector.md).

# Social Distance Detector

Esta función analiza un flujo de imágenes para detectar personas y verificar el distanciamiento físico según un umbral de distancia. Visualiza las personas detectadas y resalta los pares que violan la distancia especificada.

## 📥 Entradas

`Image Any`\
Proporcione la imagen o el fotograma de vídeo a analizar.

`Perspective Matrix`\
Matriz de transformación opcional para convertir coordenadas de imagen a un plano del mundo real y obtener mediciones de distancia más precisas.

`Distance Threshold`\
La distancia mínima permitida entre personas (las unidades dependen de la calibración de la perspectiva).

## 📤 Salidas

`Image Any`\
Imagen anotada con las personas detectadas, líneas de conexión y resaltado de violaciones.

`Person Count`\
Número de personas detectadas en el fotograma.

`Violation Count`\
Número de pares que violan el umbral (pares más cercanos que la distancia permitida).

`Is Violated ?`\
Valor booleano que indica si existe al menos una violación.

## 🕹️ Controles

`Confidence Ratio`\
Deslizador que ajusta la sensibilidad de confianza de la detección. Valores más altos requieren mayor confianza para contar como persona.

## 🎨 Características

* Detección y visualización de personas en tiempo real sobre las imágenes entrantes.
* Medición de distancia par a par entre las personas detectadas.
* Corrección de perspectiva opcional usando la `Perspective Matrix` para comprobaciones de distancia en el mundo real.
* Salidas claras para monitorización y procesamiento posterior: imagen, conteos y bandera de violación.

## 📊 Mecanismo de funcionamiento

Cuando está activo, el bloque recibe la entrada de imagen, detecta las posiciones de las personas en el fotograma, opcionalmente mapea esas posiciones usando la `Perspective Matrix`, calcula distancias par a par y las compara con el `Distance Threshold`. El bloque devuelve una imagen anotada y salidas numéricas/booleanas que describen el estado de detección y de violación.

## 📝 Cómo usar

1. Proporcione una fuente de imagen a `Image Any` (flujo de cámara o imagen cargada).
2. Si necesita distancias en el mundo real, suministre una `Perspective Matrix` calibrada. Sin ella, las comprobaciones de distancia usan unidades del plano de imagen (píxeles).
3. Ajuste el `Distance Threshold` según su calibración o una distancia aproximada en píxeles.
4. Sintonice `Confidence Ratio` para equilibrar detecciones perdidas vs. falsos positivos.
5. Lea las salidas para activar alertas, registros o procesamientos adicionales cuando ocurran violaciones.

## 💡 Consejos y trucos

* Para entrada de cámara, combine este bloque con una fuente de imagen como `Camera USB`, `Camera IP (ONVIF)`, `Stream Reader` o `Load Image`.
* Para previsualizar resultados en mayor tamaño, añada `Show Image` después de este bloque.
* Si la detección es ruidosa, pruebe redimensionar o eliminar ruido con `Image Resizer` o `Denoising` para mejorar la estabilidad.
* Para detección de personas más robusta o clases personalizadas, considere combinar con `Object Detection` o `Object Detection - Custom` aguas arriba y pasar los centros detectados a este bloque para la comprobación de distancias.
* Use `Perspective Transform` para generar una `Perspective Matrix` fiable cuando necesite distancias en el mundo real.
* Use `Image ROI` o `Image ROI Select` para limitar el área de análisis (reduce detecciones falsas y acelera el procesamiento).
* Si necesita seguimiento entre fotogramas, utilice `Object_Detection_Tracker` aguas abajo para obtener IDs persistentes y análisis mejorados.

## 🛠️ Solución de problemas

* No se detectan personas: aumente ligeramente `Confidence Ratio` o proporcione entrada de mayor resolución. Asegúrese de que la iluminación de la escena permita contornos claros de las personas.
* Muchos falsos positivos: intente aumentar `Confidence Ratio`, aplique preprocesado como `Blur` o `Image Threshold`, o restrinja el área con `Image ROI`.
* Mediciones de distancia incorrectas: verifique la calibración y proporcione una `Perspective Matrix` correcta usando `Perspective Transform`. Sin corrección de perspectiva, las distancias están en píxeles de imagen y pueden no reflejar valores del mundo real.
* Alta carga CPU/GPU: reduzca la resolución de entrada con `Image Resizer` o ejecute la detección con menor frecuencia.
