Comment mettre en œuvre la reconnaissance de carte bancaire avec HUAWEI ML Kit

informations générales



Dans les articles précédents, nous avons expliqué comment utiliser le kit HUAWEI ML pour créer une fonction de détection de sourire et une applet pour les photos de documents. Dans cet article, je vais vous montrer comment implémenter la fonction de reconnaissance de carte bancaire afin que les utilisateurs puissent lier une carte bancaire avec un investissement minimal de temps.







Objet de la fonction de reconnaissance des cartes bancaires



Avant de commencer le développement, voyons à quoi sert la fonction de reconnaissance de carte bancaire. Il est particulièrement pertinent pour les applications avec des fonctions de paiement telles que les applications bancaires et les achats en ligne. Ces applications ont souvent un certain nombre d'exigences communes:



  • Lier une carte bancaire


Les utilisateurs peuvent lier leurs cartes bancaires pour effectuer des paiements en ligne rapides.



  • Virements bancaires


Les utilisateurs peuvent transférer de l'argent entre les comptes de la même banque ou entre différentes banques.



  • Authentification du nom réel et vérification d'identité


Les utilisateurs peuvent s'authentifier rapidement avec leur vrai nom et vérifier leur identité en fonction des informations de leur carte bancaire.



Pour utiliser chacune de ces options, l'utilisateur doit saisir les coordonnées de sa carte bancaire, y compris le numéro de carte et la date d'expiration. Vous savez certainement qu'il est facile de faire des erreurs et de perdre beaucoup de temps lors de la saisie manuelle des données. Mais grâce au service de reconnaissance de carte bancaire HUAWEI ML Kit, les utilisateurs pourront saisir leurs données rapidement et sans erreur.



Application du service de reconnaissance de carte bancaire



Le service de reconnaissance de carte bancaire permet à l'appareil photo de reconnaître les cartes bancaires et de lire des données clés telles que le numéro de carte et la date d'expiration. Pris en charge par le service de reconnaissance d'identité, il offre un certain nombre de fonctionnalités populaires telles que la vérification d'identité et la saisie du numéro de carte de crédit.







Nous proposons un plugin de reconnaissance de carte bancaire que vous pouvez intégrer pour rendre ce service disponible dans votre application. Le plugin gérera les données de la caméra pour vous.



Début du développement



1. Préparation



Ajouter 1.1 le référentiel Maven de Huawei à un fichier au niveau du projet build.gradle

Ouvrez le fichier build.gradle dans le dossier racine de votre projet Android Studio et ajoutez l'adresse du référentiel Maven.



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


1.2 Ajouter des dépendances SDK au fichier au niveau de l'application build.gradle



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 Activer la mise à jour automatique de l'application vers le dernier modèle



Pour que votre application mette à jour automatiquement le modèle d'apprentissage automatique après le téléchargement depuis HUAWEI AppGallery, ajoutez les données suivantes au fichier 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 Demander les droits d'accès à la caméra et à la mémoire dans le fichier AndroidManifest.xml



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


2. Développement de code



2.1 Créer des fonctions de rappel qui sont appelées après avoir reçu le résultat de la reconnaissance



Remplacer les fonctions onSuccess, onCanceled, onFailure et onDenied :



  • onSuccess : appelé une fois la reconnaissance terminée. MLBcrCaptureResult affiche le résultat de la reconnaissance.


  • onCanceled : appelé si l'utilisateur a annulé la reconnaissance.


  • onFailure : appelé lorsque la reconnaissance échoue.


  • onDenied : Appelé si la demande de reconnaissance a été refusée pour une raison quelconque (par exemple, si la caméra n'est pas 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 Définir les paramètres de reconnaissance pour l'appel API captureFrame du module de reconnaissance Les

données de reconnaissance sont renvoyées par la fonction de rappel créée 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 Appel de la méthode spécifiée dans la clause 2.2 avec le rappel du bouton de reconnaissance



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


Essayez vous-même



Jetons un œil au fonctionnement de la fonction de reconnaissance des cartes bancaires.







La source



Nous avons téléchargé la source sur GitHub, alors n'hésitez pas à apporter des modifications.

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

Plus de détails que vous pouvez visiter



Voir l'exemple de code pour reconnaître les cartes bancaires dans MLKit-Sample \ module-text \ src \ main \ java \ com \ mlkit \ sample \ activity \ BankCardRecognitionActivity.java.

Veuillez visiter notre site officiel pour plus de détails.



Nouveaux exemples



Nous partagerons avec vous d'autres fonctionnalités utiles du kit HUAWEI ML. Restez à l'écoute!



All Articles