Detección de caras, atributos y datos de entrada
Precaución
El acceso al servicio Face está limitado en función de los criterios de idoneidad y uso para apoyar nuestros principios de inteligencia artificial responsable. El servicio Face solo está disponible para clientes y asociados administrados por Microsoft. Use el formulario de admisión de reconocimiento facial para solicitar acceso. Para obtener más información, consulte la página Acceso limitado de Face.
Importante
Los atributos de caras se pueden predecir mediante algoritmos estadísticos. No obstante, es posible que no sean siempre precisos. Tenga cuidado al tomar decisiones basadas en datos de atributos. Absténgase de utilizar estos atributos contra la suplantación de identidad. En su lugar, se recomienda usar la detección Face Liveness. Para más información, consulte Tutorial: Detección de vivacidad en caras.
En este artículo se explican conceptos acerca de los datos de atributos y de detección de caras. La detección de caras es el proceso de búsqueda de caras humanas en una imagen y, opcionalmente, la devolución de distintos tipos de datos relacionados con las caras.
Use la API Detectar para detectar caras en una imagen. Para empezar a usar la API REST o un SDK de cliente, siga uninicio rápido del servicio Face. O bien, para obtener una guía más detallada, consulte Llamada a la API de detección.
Rectángulo facial
Cada cara detectada corresponde a un campo faceRectangle en la respuesta. Este es un conjunto de coordenadas de píxeles para la parte izquierda, la superior, el ancho y el alto marca la cara detectada. Con estas coordenadas, puede obtener la ubicación y el tamaño de la cara. En la respuesta de la API, las caras se muestran en orden de tamaño de mayor a menor.
Pruebe las funcionalidades de detección de caras de forma rápida y sencilla mediante Azure AI Vision Studio.
Id. de cara
El identificador de cara es una cadena de identificador único para cada cara detectada en una imagen. Face ID requiere aprobación de acceso limitado, lo cual puede aplicar al rellenar el formulario de admisión. Para obtener más información, consulte la Página de acceso limitado de Face API. Puede solicitar un identificador de cara en la llamada API de Detectar.
Puntos de referencia de cara
Los puntos de referencia de cara son un conjunto de puntos fáciles de encontrar en una cara como, por ejemplo, las pupilas o la punta de la nariz. De forma predeterminada, existen 27 puntos de referencia predefinidos. La ilustración siguiente muestra los 27 puntos:
Las coordenadas de los puntos se devuelven en unidades de píxeles.
Actualmente, el modelo Detection_03 cuenta con la detección de punto de referencia más precisa. Los puntos de referencia de los ojos y las pupilas que devuelve son lo suficientemente precisos como para permitir el seguimiento de la mirada de la cara.
Atributos
Precaución
Microsoft ha retirado o limitado las funcionalidades de reconocimiento facial que se pueden usar para intentar deducir los estados emocionales y los atributos de identidad que, si se usan incorrectamente, pueden someter a personas a estereotipos, discriminación o denegación de servicios injustos. Las funcionalidades retiradas son emociones y géneros. Las funcionalidades limitadas son las de edad, sonrisa, cabello facial, cabello y maquillaje. Envíe un correo electrónico a Azure Face API si tiene un caso de uso responsable que se beneficiaría del uso de cualquiera de las funcionalidades limitadas. Aquí puede encontrar más información sobre esta decisión.
Los atributos son un conjunto de características que puede detectar opcionalmente la API de Detectar. Se pueden detectar los siguientes atributos:
Accesorios: Indica si la cara dada tiene accesorios. Este atributo devuelve posibles accesorios, como ropa de cabeza, gafas y máscara, con una puntuación de confianza entre cero y uno para cada accesorio.
Desenfoque: Indica la desenfoque de la cara de la imagen. Este atributo devuelve un valor entre cero y uno, así como una clasificación informal de bajo, medio o alto.
Exposición: Indica la exposición de la cara en la imagen. Este atributo devuelve un valor entre cero y uno y una clasificación informal de underExposure, goodExposure, o overExposure.
Gafas: Indica si la cara dada tiene gafas. Los valores posibles son NoGlasses, ReadingGlasses, Sunglasses, y Swimming Goggles.
Posición de la cabeza: Indica la orientación de la cara en el espacio 3D. Este atributo se describe mediante los ángulos de giro, desviación e inclinación en grados, que se definen según la regla de la derecha. El orden de tres ángulos es roll-yaw-pitch, y el intervalo de valores de cada ángulo es de -180 grados a +180 grados. La orientación tridimensional de la cara se calcula mediante los ángulos de giro, desviación e inclinación en orden. Consulte el siguiente diagrama de asignaciones de ángulos:
Para obtener más información sobre cómo usar estos valores, consulte Uso del atributo HeadPose.
Máscara: Indica si la cara está usando una máscara. Este atributo devuelve un posible tipo de mascarilla y un valor booleano para indicar si la nariz y la boca están cubiertas.
Ruido: Indica el ruido visual detectado en la imagen de la cara. Este atributo devuelve un valor entre cero y uno y una clasificación informal de baja, media o alta.
Oclusión: Indica si hay objetos que bloquean partes de la cara. Este atributo devuelve un valor booleano para eyeOccluded, foreheadOccluded, y mouthOccluded.
QualityForRecognition: Indica la calidad general de la imagen para determinar si la imagen que se usa en la detección es de calidad suficiente para intentar el reconocimiento facial. El valor es una clasificación informal de baja, media o alta. Solo se recomiendan imágenes de alta calidad para la inscripción de personas, y se recomienda la calidad en o mejor que media para escenarios de identificación.
Nota:
La disponibilidad de cada atributo depende del modelo de detección especificado. El atributo QualityForRecognition también depende del modelo de reconocimiento, ya que actualmente solo está disponible cuando se usa una combinación de modelos de detección detection_01 o detection_03, y el modelo de reconocimiento recognition_03 o recognition_04.
Requisitos de entrada
Utilice las siguientes sugerencias para asegurarse de que las imágenes de entrada proporcionan los resultados de detección más precisos:
- Los formatos de imagen de entrada admitidos son JPEG, PNG, GIF(el primer fotograma) y BMP.
- El tamaño del archivo de imagen no debe ser superior a 6 MB.
- El tamaño mínimo detectable de la cara es de 36 x 36 píxeles en una imagen no superior a 1920 x 1080 píxeles. Las imágenes de más de 1920 x 1080 píxeles tienen un tamaño mínimo detectable de la cara proporcionalmente mayor. Reducir el tamaño de la cara podría provocar que no se detecten algunas caras, aunque sean mayores que el tamaño mínimo detectable.
- El tamaño máximo de cara detectable es 4096 x 4096 píxeles.
- Las caras fuera del intervalo de tamaño de 36 x 36 a 4096 x 4096 píxeles no se detectarán.
Datos de entrada con información de orientación
Algunas imágenes de entrada con formato JPEG pueden contener información de orientación en metadatos de formato de archivo de imagen intercambiable (EXIF). Si la orientación EXIF está disponible, las imágenes se giran automáticamente a la orientación correcta antes de su envío para la detección de caras. El rectángulo facial, los puntos de referencia y la posición de la cabeza de todas las caras detectadas se calculan en función de la imagen girada.
Para mostrar correctamente tanto el rectángulo facial como los puntos de referencia es preciso asegurarse de que la imagen se gira correctamente. La mayoría de las herramientas de visualización de imágenes giran automáticamente la imagen según su orientación EXIF de forma predeterminada. Em el caso de otras herramientas, es posible que tenga que usar su propio código para aplicar la rotación. En los ejemplos siguientes se muestra un rectángulo facial en una imagen girada (izquierda) y una imagen no girada (derecha).
Entrada de vídeo
Si detecta caras de una fuente de vídeo, es posible que pueda mejorar el rendimiento ajustando ciertas configuraciones en la cámara de vídeo:
Suavizado: muchas cámaras de vídeo aplican un efecto de suavizado. Debe desactivar esta opción, si es posible, porque crea un desenfoque entre fotogramas y reduce la claridad.
Velocidad de obturación: Una velocidad de obturación más rápida reduce la cantidad de movimiento entre fotogramas y hace que cada fotograma sea más claro. Se recomienda utilizar velocidades de obturación de 1/60 de segundo o más rápidas.
Ángulo de obturación: Algunas cámaras especifican el ángulo de obturación en lugar de la velocidad de obturación. Debe usar un ángulo de obturación inferior, si es posible, lo que da como resultado fotogramas de vídeo más claros.
Nota:
Un sensor de cámara con un ángulo de obturación inferior recibe menos luz en cada fotograma, por lo que la imagen es más oscura. Debe determinar el nivel correcto que se va a usar.
Paso siguiente
Ahora que ya está familiarizado con conceptos de detección de caras, aprenda a escribir un script que detecte caras en una imagen determinada.