A partir de sgcBiometrics 2.0 se admite reconocimiento facial usando una cámara compatible con Windows Hello, lo que permite monitorizar si hay una persona delante de la cámara (puedes saber si hay alguien, identificar, detectar llegadas, salidas y más). También se admite el reconocimiento e identificación faciales.
El reconocimiento facial sólo está soportado por el system sensor pool, así que primero debes registrar a un usuario usando Windows Hello (WBF no permite enrolar caras, sólo huellas dactilares). Puedes registrar más de una cara en tu Windows; basta con que crees una nueva cuenta de Windows y asocies la nueva cara a esa cuenta.
Requisitos
- Una cámara compatible con Windows Hello.
- Windows 10+ (sólo aplicaciones de escritorio)
- Windows Server 2016+ (sólo aplicaciones de escritorio).
Iniciar sesión en Windows 10 con tu cara
Cómo iniciar sesión en Windows 10 con tu cara
- Ve a Configuración > Cuentas > Opciones de inicio de sesión.
- Configura una contraseña de cuenta y un PIN.
- Haz clic en el botón "Set up" para Face dentro de Windows Hello.
- Haz clic en el botón "Get started", introduce tu PIN y siéntate frente a la cámara mientras Windows tarda unos segundos en escanear tu cara.
- Haz clic en "Close" y ya está listo.
Uso básico
1. Coloca un TsgcWinBioFacial en cualquier formulario o datamodule.
2. Comprueba si hay una sesión abierta y, si no, llama al método InitializeSensors para empezar a usar el sensor. El componente de reconocimiento facial usa modo asíncrono, así que define un Timeout para inicializar los sensores (en milisegundos).
if not TsgcWinBioFacial1.SessionIsOpen then
TsgcWinBioFacial1.InitializeSensors(10000);
a. Si la inicialización es correcta, se llamará al evento OnEnumBiometricUnit.
b. Si se produce algún error, se dispara el evento OnError.
3. Llama a FacialRecognize para intentar reconocer la cara; si devuelve true, significa que la cara se ha reconocido.
if TsgcWinBioFacial1.FacialRecognize then
ShowMessage('Face Recognized')
else
ShowMessage('Unknown Face');
4. Puedes obtener el Face Identification Id llamando al método FacialIdentify; si tiene éxito devuelve el AccountSid como string.
ShowMessage(TsgcWinBioFacial1.FacialIdentify);
