Cómo simplificar una verificación facial con las técnicas de aprendizaje automático de Huawei
Published: 2021-03-26 18:37:46

![Alt text of image](https://cdn-images-1.medium.com/max/1200/1*GjY5hSxXYjdXDWz5p_5nkw.png)
A continuación, se explica cómo implementar rápidamente el reconocimiento facial en sus soluciones. En los que se comparan las caras de captura con los registros existentes para generar valores de similitud, los siguientes casos de uso muestran algunos de nuestros logros e implementaciones recientes en varias industrias.
Comparar las placas de matrícula con el reconocimiento facial del conductor puede mejorar la autenticación e incluso documentar incidentes como robos de carritos o accidentes.
Acceda a los sistemas para rastrear la entrada y salida de los empleados y monitorear su asistencia.
Administrar y controlar el acceso a áreas restringidas y autorizar la operación de equipos y sistemas de control.
Proceso de desarrollo
Antes del desarrollo de la API, debe realizar los preparativos de desarrollo necesarios. Asegúrese de que la dirección del repositorio de Maven del HMS Core SDK se haya configurado en su proyecto y que el SDK de este servicio se haya integrado.
1.-Crear una instancia de analizador de verificación facial
```
MLFaceVerificationAnalyzer analyzer = 
MLFaceVerificationAnalyzerFactory.getInstance().getFaceVerificationAnalyzer();
```
2.-Cree un objeto MLFrame con android.graphics.Bitmap. El objeto se utilizará para configurar la imagen de la plantilla. Se admiten imágenes JPG, JPEG, PNG y BMP.

```
// Create MLFrame using the bitmap.
MLFrame templateFrame = MLFrame.fromBitmap(bitmap);
```
3.- Configura la imagen de la plantilla de verificación facial. Si la plantilla no contiene ningún rostro, la configuración de la plantilla falla. El servicio utiliza la plantilla establecida la última vez.
```
List<MLFaceTemplateResult> results = analyzer.setTemplateFace(templateFrame);
for (int i = 0; i < results .size(); i++) {
    // Process the detection result of the template image.
 }
```
4.- Cree un objeto MLFrame con android.graphics.Bitmap. El objeto se utilizará para configurar la imagen que se comparará. Se admiten imágenes JPG, JPEG, PNG y BMP.
```
// Create MLFrame using the bitmap.
MLFrame compareFrame = MLFrame.fromBitmap(bitmap);
```
5.- Llame al método sincrónico o asincrónico para realizar la verificación facial. El resultado de la detección contiene la información del rostro obtenida de la imagen comparada y la confianza que indica que los rostros en la imagen comparada y la imagen de la plantilla pertenecen a la misma persona.
· Código de muestra para llamar al método asincrónico:
```
Task<List<MLFaceVerificationResult>> task = 
analyzer.asyncAnalyseFrame(compareFrame);
task.addOnSuccessListener(new OnSuccessListener<List<MLFaceVerificationResult>>() 
{
    @Overrided.      
    public void onSuccess(List<MLFaceVerificationResult> results) {
        // Detection success.
     }
 }).addOnFailureListener(new OnFailureListener() {
     @Override
     public void onFailure(Exception e) {
         // Detection failure.
      }
 });
```
Código de muestra para llamar al método síncrono:
```
SparseArray<MLFaceVerificationResult> results = 
analyzer.analyseFrame(compareFrame);
for (int i = 0; i < results.size(); i++) {
    // Process the detection result.
}
```
Una vez completada la detección, detenga el analizador para liberar los recursos de detección.
```
if (analyzer != null) {
    analyzer.stop();
}
```
Como conclusión
Este servicio se utiliza ampliamente en muchos campos de la vida diaria. Por ejemplo, el servicio puede comparar rostros en la galería móvil y clasificarlos según su similitud. Esto ayuda a los usuarios a administrar la galería móvil y encontrar imágenes en ella. La verificación facial también es útil para el sector de servicios financieros. Cuando un usuario intenta abrir una cuenta de forma remota usando su aplicación, su aplicación puede usar este servicio para realizar la autenticación de identidad, haciendo que el proceso de apertura sea rápido y seguro con factores de riesgo controlables. Si su aplicación es para divertirse, puede aprovechar la similitud facial que brinda este servicio para desarrollar funciones interesantes. Por ejemplo, su aplicación puede decir cuánto se parecen su usuario y otra persona a una pareja de acuerdo con las imágenes que carga. Además, este servicio también se puede utilizar para el reloj de entrada / salida inteligente y la autenticación facial de puertas inteligentes en campus inteligentes.

https://forums.developer.huawei.com/forumPortal/en/topic/0202466211983200067