Cómo implementar el reconocimiento de tarjetas bancarias con el kit ML de HUAWEI

Información general



En artículos anteriores, hablamos sobre cómo usar el kit ML de HUAWEI para crear una función de detección de sonrisas y un subprograma para fotos de documentos. En este artículo, le mostraré cómo implementar la función de reconocimiento de tarjeta bancaria para que los usuarios puedan vincular una tarjeta bancaria con una mínima inversión de tiempo.







Objeto de la función de reconocimiento de tarjetas bancarias



Antes de comenzar a desarrollar, veamos para qué sirve la función de reconocimiento de tarjetas bancarias. Es más relevante para aplicaciones con funciones de pago como aplicaciones bancarias y compras en línea. Estas aplicaciones a menudo tienen una serie de requisitos comunes:



  • Vincular una tarjeta bancaria


Los usuarios pueden vincular sus tarjetas bancarias para realizar pagos en línea rápidos.



  • transferencias bancarias


Los usuarios pueden transferir dinero entre cuentas en el mismo banco o entre diferentes bancos.



  • Verificación de identidad y autenticación de nombre real


Los usuarios pueden autenticarse rápidamente con su nombre real y verificar su identidad según la información de su tarjeta bancaria.



Para utilizar cada una de estas opciones, el usuario debe ingresar los detalles de su tarjeta bancaria, incluido el número de tarjeta y la fecha de vencimiento. Ciertamente sabe que es fácil cometer errores y perder mucho tiempo al ingresar datos manualmente. Pero gracias al servicio de reconocimiento de tarjetas bancarias del HUAWEI ML Kit, los usuarios podrán ingresar sus datos rápidamente y sin errores.



Aplicación del servicio de reconocimiento de tarjetas bancarias



El servicio de reconocimiento de tarjetas bancarias permite que la cámara reconozca tarjetas bancarias y lea datos clave como el número de tarjeta y la fecha de vencimiento. Con el respaldo de un servicio de reconocimiento de identificación, ofrece una serie de funciones populares, como la verificación de identidad y la entrada del número de tarjeta de crédito.







Ofrecemos un complemento de reconocimiento de tarjetas bancarias que puede integrar para que este servicio esté disponible en su aplicación. El complemento manejará los datos de la cámara por usted.



Inicio de desarrollo



1. Preparación



Agregue el repositorio Maven 1.1 de Huawei a un archivo en el nivel del proyecto build.gradle

Abra el archivo build.gradle en la carpeta raíz de su proyecto de Android Studio y agregue la dirección del repositorio Maven.



buildscript {
    repositories {        
        maven {url 'http://developer.huawei.com/repo/'}
    }    }allprojects {
    repositories {       
        maven { url 'http://developer.huawei.com/repo/'}
    }}


1.2 Agregar dependencias de SDK al archivo build.gradle de nivel de aplicación



dependencies{  
  implementation 'com.huawei.hms:ml-computer-vision-bcr:1.0.3.303' 
  implementation 'com.huawei.hms:ml-computer-card-bcr-plugin:1.0.3.300' 
  implementation 'com.huawei.hms:ml-computer-card-bcr-model:1.0.3.300' }


1.3 Habilitar la actualización automática de la aplicación al último modelo



Para que su aplicación actualice automáticamente el modelo de aprendizaje automático después de descargarla desde HUAWEI AppGallery, agregue la siguiente información al archivo AndroidManifest.xml:



<manifest 
   ... 
   <meta-data              
       android:name="com.huawei.hms.ml.DEPENDENCY"   
       android:value= "bcr"/> 
       <!--If multiple models are required,set the parameter as follows:        
       android:value="object,ocr,face,label,icr,bcr,imgseg"-->  
   ... </manifest>


1.4 Solicitar derechos de acceso a la cámara y la memoria en el archivo AndroidManifest.xml



 <uses-permission android:name="android.permission.CAMERA" />
 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />


2. Desarrollo de código



2.1 Crear funciones de devolución de llamada que se invocan después de recibir el resultado del reconocimiento Anula



las funciones onSuccess, onCanceled, onFailure y onDenied :



  • onSuccess : se llama después de que se completa el reconocimiento. MLBcrCaptureResult muestra el resultado del reconocimiento.


  • onCanceled : se llama si el usuario canceló el reconocimiento.


  • onFailure : se llama cuando falla el reconocimiento.


  • onDenied : se llama si la solicitud de reconocimiento fue denegada por cualquier motivo (por ejemplo, si la cámara no está disponible).


private MLBcrCapture.Callback callback = new MLBcrCapture.Callback() { 
    @Override 
    public void onSuccess(MLBcrCaptureResult bankCardResult){ 
    }  
    @Override 
    public void onCanceled(){ 
    }   
    @Override 
    public void onFailure(int retCode, Bitmap bitmap){ 
    } 
    @Override 
    public void onDenied(){ 
    }   };


2.2 Establecer los parámetros de reconocimiento para la llamada a la API captureFrame del reconocedor Los

datos de reconocimiento son devueltos por la función de devolución de llamada creada en 2.1.



private void startCaptureActivity(MLBcrCapture.Callback callback) { 
    MLBcrCaptureConfig config = new MLBcrCaptureConfig.Factory()  
        .setOrientation(MLBcrCaptureConfig.ORIENTATION_AUTO) 
        .create(); 
    MLBcrCapture bankCapture = MLBcrCaptureFactory.getInstance().getBcrCapture(config); 
    bankCapture.captureFrame(this, callback); }


2.3 Llame al método especificado en la cláusula 2.2 con la devolución de llamada del botón de reconocimiento



@Override 
public void onClick(View v) { 
    switch (v.getId()) {  
        case R.id.detect: 
            startCaptureActivity(callback); 
            break; 
        default: 
            break; 
    } }


Inténtalo tú mismo



Echemos un vistazo a cómo funciona la función de reconocimiento de tarjetas bancarias.







Fuente



Hemos subido la fuente a GitHub, así que no dudes en realizar cambios.

github.com/HMS-Core/hms-ml-demo

Puede visitar más detalles



Consulte el código de muestra para reconocer tarjetas bancarias en MLKit-Sample \ module-text \ src \ main \ java \ com \ mlkit \ sample \ activity \ BankCardRecognitionActivity.java.

Visite nuestro sitio web oficial para obtener más detalles.



Nuevos ejemplos



Compartiremos contigo otras funciones útiles del HUAWEI ML Kit. ¡Manténganse al tanto!



All Articles