allgemeine Informationen
In früheren Artikeln haben wir darüber gesprochen, wie mit dem HUAWEI ML Kit eine Funktion zur Erkennung von Lächeln und ein Applet für Dokumentfotos erstellt werden können. In diesem Artikel werde ich Ihnen zeigen, wie Sie die Funktion zur Erkennung von Bankkarten implementieren, damit Benutzer eine Bankkarte mit minimalem Zeitaufwand verknüpfen können.
Zweck der Funktion der Erkennung von Bankkarten
Bevor wir mit der Entwicklung beginnen, schauen wir uns an, wozu die Bankkartenerkennungsfunktion dient. Es ist am relevantesten für Anwendungen mit Zahlungsfunktionen wie Bankanwendungen und Online-Shopping. Diese Anwendungen haben häufig eine Reihe gemeinsamer Anforderungen:
- Verknüpfen einer Bankkarte
Benutzer können ihre Bankkarten verknüpfen, um schnelle Online-Zahlungen zu tätigen.
- Banküberweisungen
Benutzer können Geld zwischen Konten bei derselben Bank oder zwischen verschiedenen Banken überweisen.
- Authentifizierung mit echtem Namen und Überprüfung der Identität
Benutzer können sich schnell mit ihrem richtigen Namen authentifizieren und ihre Identität anhand ihrer Bankkarteninformationen überprüfen.
Um jede dieser Optionen nutzen zu können, muss der Benutzer seine Bankkartendaten eingeben, einschließlich der Kartennummer und des Ablaufdatums. Sie wissen sicherlich, dass es leicht ist, Fehler zu machen und viel Zeit zu verschwenden, wenn Sie Daten manuell eingeben. Dank des Bankkartenerkennungsdienstes HUAWEI ML Kit können Benutzer ihre Daten jedoch schnell und fehlerfrei eingeben.
Anwendung des Bankkartenerkennungsdienstes
Mit dem Bankkartenerkennungsdienst kann die Kamera Bankkarten erkennen und Schlüsseldaten wie Kartennummer und Ablaufdatum lesen. Unterstützt von einem ID-Erkennungsdienst bietet es eine Reihe beliebter Funktionen wie Identitätsprüfung und Eingabe der Kreditkartennummer.
Wir bieten ein Plugin zur Erkennung von Bankkarten an, das Sie integrieren können, um diesen Service in Ihrer Anwendung verfügbar zu machen. Das Plugin übernimmt die Kameradaten für Sie.
Entwicklungsstart
1. Vorbereitung
Hinzufügen von 1.1 Huaweis Maven-Repository zu einer Datei auf Projektebene build.gradle
Öffnen Sie die Datei build.gradle im Stammordner Ihres Android Studio-Projekts und fügen Sie die Adresse des Maven-Repositorys hinzu.
buildscript {
repositories {
maven {url 'http://developer.huawei.com/repo/'}
} }allprojects {
repositories {
maven { url 'http://developer.huawei.com/repo/'}
}}
1.2 Hinzufügen von SDK-Abhängigkeiten zur Datei build.gradle auf App-Ebene
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 Automatische App-Aktualisierung auf das neueste Modell
aktivieren Damit Ihre App das Modell für maschinelles Lernen nach dem Herunterladen von der HUAWEI AppGallery automatisch aktualisiert, fügen Sie der Datei AndroidManifest.xml die folgenden Daten hinzu:
<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 Fordern Sie Zugriffsrechte auf Kamera und Speicher in der Datei AndroidManifest.xml an
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
2. Codeentwicklung
2.1 Erstellen Callback - Funktionen , die nach dem Empfang des Erkennungsergebnis genannt werden
außer Kraft setzen onSuccess, onCanceled, onFailure und onDenied Funktionen :
- onSuccess : Wird nach Abschluss der Erkennung aufgerufen. MLBcrCaptureResult zeigt das Erkennungsergebnis an.
- onCancelled : Wird aufgerufen, wenn der Benutzer die Erkennung abgebrochen hat.
- onFailure : Wird aufgerufen, wenn die Erkennung fehlschlägt.
- onDenied : Wird aufgerufen, wenn die Erkennungsanforderung aus irgendeinem Grund abgelehnt wurde (z. B. wenn die Kamera nicht verfügbar ist).
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 Festlegen der Erkennungsparameter für den CaptureFrame-API-Aufruf des Erkenners Erkennungsdaten
werden von der in 2.1 erstellten Rückruffunktion zurückgegeben.
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 Rufen Sie die in Abschnitt 2.2 angegebene Methode mit dem Rückruf der Erkennungsschaltfläche auf
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.detect:
startCaptureActivity(callback);
break;
default:
break;
} }
Versuch es selber
Lassen Sie uns einen Blick darauf werfen, wie die Funktion zur Erkennung von Bankkarten funktioniert.
Quelle
Wir haben die Quelle auf GitHub hochgeladen. Nehmen Sie also Änderungen vor.
github.com/HMS-Core/hms-ml-demo
Weitere Informationen finden Sie unter
Beispielcode zum Erkennen von Bankkarten in MLKit-Sample \ Modultext \ src \ main \ java \ com \ mlkit \ sample \ activity \ BankCardRecognitionActivity.java.
Bitte besuchen Sie unsere offizielle Website für Details.
Neue Beispiele
Wir werden Ihnen weitere nützliche Funktionen des HUAWEI ML Kits vorstellen. Bleib dran!