Reconocimiento facial
El reconocimiento facial identifica a personas conocidas comparando los rostros detectados con datos faciales previamente aprendidos. Cuando se reconoce a una persona conocida, su nombre se añade como sub_label. Esta información se incluye en la interfaz, filtros y notificaciones.
Requisitos del modelo
Detección de rostros
Al ejecutar un modelo SecureVu+ (o cualquier modelo personalizado que detecte rostros de forma nativa), asegúrate de que face esté añadido a la lista de objetos a rastrear de forma global o para una cámara específica. Esto permitirá que la detección de rostros se ejecute al mismo tiempo que la detección de objetos y sea más eficiente.
Al ejecutar un modelo COCO predeterminado u otro modelo que no incluya face como etiqueta detectable, la detección de rostros se ejecutará mediante CV2 usando un modelo DNN ligero que se ejecuta en la CPU. En este caso, no debes definir face en tu lista de objetos a rastrear.
SecureVu necesita primero detectar una person antes de poder detectar y reconocer un rostro.
Reconocimiento facial
SecureVu soporta dos tipos de modelos de reconocimiento facial:
- small: SecureVu ejecutará un modelo de embeddings FaceNet para reconocer rostros, que se ejecuta localmente en la CPU. Este modelo está optimizado para eficiencia y es menos preciso.
- large: SecureVu ejecutará un modelo de embeddings ArcFace grande optimizado para precisión. Solo se recomienda cuando hay una GPU / NPU integrada o dedicada disponible.
En ambos casos, también se usa un modelo ligero de detección de puntos de referencia faciales para alinear los rostros antes del reconocimiento.
Todas estas funciones se ejecutan localmente en tu sistema.
Requisitos mínimos del sistema
Se requiere una CPU con instrucciones AVX + AVX2 para ejecutar el reconocimiento facial.
El modelo small está optimizado para eficiencia y se ejecuta en la CPU; la mayoría de CPUs deberían ejecutarlo eficientemente.
El modelo large está optimizado para precisión; se requiere una GPU / NPU integrada o discreta. Consulta la documentación de Aceleración de Hardware para Enriquecimientos.
Configuración
El reconocimiento facial está deshabilitado por defecto; debe habilitarse en la interfaz o en tu archivo de configuración antes de poder usarse. Es una configuración global.
face_recognition:
enabled: true
Configuración avanzada
Ajusta el reconocimiento facial con estos parámetros opcionales a nivel global de tu configuración. Los únicos parámetros opcionales que pueden establecerse a nivel de cámara son enabled y min_area.
Detección
detection_threshold: Puntuación de confianza de detección de rostros requerida antes de ejecutar el reconocimiento.- Predeterminado:
0.7
- Predeterminado:
min_area: Define el tamaño mínimo (en píxeles) que debe tener un rostro antes de ejecutar el reconocimiento.- Predeterminado:
500píxeles.
- Predeterminado:
Reconocimiento
model_size: Qué tamaño de modelo usar; las opciones sonsmallolargeunknown_score: Puntuación mínima para marcar a una persona como posible coincidencia; las coincidencias por debajo se marcarán como desconocidas.- Predeterminado:
0.8.
- Predeterminado:
recognition_threshold: Puntuación de confianza de reconocimiento requerida para añadir el rostro al objeto como sub label.- Predeterminado:
0.9.
- Predeterminado:
min_faces: Mínimo de reconocimientos faciales para que el sub label se aplique al objeto persona.- Predeterminado:
1
- Predeterminado:
save_attempts: Número de imágenes de rostros reconocidos a guardar para entrenamiento.- Predeterminado:
200.
- Predeterminado:
blur_confidence_filter: Habilita un filtro que calcula el desenfoque del rostro y ajusta la confianza en consecuencia.- Predeterminado:
True.
- Predeterminado:
device: Apunta a un dispositivo específico para ejecutar el modelo de reconocimiento facial (instalación multi-GPU).- Predeterminado:
None.
- Predeterminado:
Uso
Sigue estos pasos para comenzar:
- Habilita el reconocimiento facial en tu archivo de configuración y reinicia SecureVu.
- Sube un rostro usando el asistente del botón Añadir Rostro en la sección Biblioteca de Rostros de la interfaz de SecureVu.
- Cuando SecureVu detecte e intente reconocer un rostro, aparecerá en la pestaña Entrenar de la Biblioteca de Rostros junto con su confianza de reconocimiento.
- Desde la pestaña Entrenar, puedes asignar el rostro a una persona nueva o existente para mejorar la precisión del reconocimiento en el futuro.
Creación de un conjunto de entrenamiento robusto
El número de imágenes necesarias varía según varios factores:
- Diversidad del conjunto de datos
- Precisión deseada
Guías generales:
- Mínimo: 5-10 imágenes por persona para reconocimiento básico.
- Recomendado: 20-30 imágenes por persona.
- Ideal: 50-100 imágenes por persona para condiciones desafiantes.
Al elegir imágenes para el conjunto de entrenamiento, sigue estas recomendaciones:
- Si es difícil distinguir los detalles del rostro, no será útil para el entrenamiento.
- Evita imágenes con exposición excesiva o insuficiente.
- Evita imágenes borrosas o pixeladas.
- Evita entrenar con imágenes infrarrojas (escala de grises).
- Las imágenes de personas con sombreros o gafas de sol pueden confundir al modelo.
- No subas demasiadas imágenes similares a la vez; se recomienda no más de 4-6 imágenes similares por persona para evitar el sobreajuste.
Preguntas frecuentes
¿Cómo depuro problemas de reconocimiento facial?
-
Asegúrate de que
personestá siendo detectado. Cualquier rostro detectado aparecerá en la pestaña Reconocimientos Recientes en la Biblioteca de Rostros de SecureVu. -
Cualquier rostro detectado será reconocido.
- Asegúrate de haber entrenado al menos un rostro según las recomendaciones anteriores.
- Ajusta los parámetros
recognition_thresholdsegún las sugerencias anteriores.
¿Por qué personas desconocidas puntúan de manera similar a personas conocidas?
Esto suele ser un indicador de que el conjunto de entrenamiento necesita mejorarse, a menudo relacionado con el sobreajuste. Revisa tus colecciones de rostros, elimina las imágenes poco claras o de baja calidad y usa el botón Reprocesar para evaluar cómo afectan los cambios a las puntuaciones.
¿SecureVu identificó incorrectamente un rostro? ¿Puedo indicarle que un rostro "no" es una persona específica?
No, el reconocimiento facial no soporta entrenamiento negativo. El mejor enfoque es mejorar los datos de entrenamiento usando un conjunto más diverso y representativo de imágenes.