Skip to content

ID document recognition Flutter to read ID card, passport and driver license, which is most powerful ID scanner and ID document reader

Notifications You must be signed in to change notification settings

kby-ai/IDCardRecognition-Flutter

Repository files navigation

🤗 Hugging Face - Here

📚 Product & Resources - Here

🛟 Help Center - Here

💼 KYC Verification Demo - Here

🙋‍♀️ Docker Hub - Here

IDCardRecognition-Flutter

We implemented ID card recognition SDK on Flutter framework for both Android and iOS.
This repository demonstrates ID document recognition, ID card recognition, ID card scanner and reader ID document scanner and reader, ID Card OCR, passport reader and passport recognition technology developed by KBY-AI.

In this repository, we integrated KBY-AI's ID document OCR solution into both Android and iOS platform with Flutter.

Try the APK

Google Play

Performance Video

You can visit our YouTube video here to see how well our demo app works.

ID Card Recognition Android

Screenshots

◾ID Card Recognition SDK Main Functionalities

Surpported ID Type Functionalities Release Type
ID Card Extracting Information(OCR) Android(Kotlin & Java)
Passport Scanning Barcode iOS(Swift & Objectiv-C)
Driver License Parsing MRZ Flutter(Dart)
Auto Capturing Web Front-end(Javascript)
Scanning QR code Server-Windows(Python)
Supporting 200+ Countries' ID Documents Server-Linux(Python)
Supporting 130+ Languages
ID Document Detection

◾ID Card Recognition Product List

No. Repository Release Type
1 ID Card Recognition - Android Android
2 ID Card Recognition - iOS iOS
➡️ ID Card Recognition - Flutter Flutter
4 ID Auto Capture - React Web Front-end
5 ID Card Recognition - Windows Server-Windows
6 ID Card Recognition - Linux Server-Linux

SDK License

  • The code line below shows how to update SDK with the license key:
    try {
    if (Platform.isAndroid) {
    await _IDsdkPlugin.setActivation(
    "Wibcbf+6ykFwGOkou7TRZFw2h/xsZMrBQ0Xn6lTPA3mu5AtuzkdCNiXrBVqYnPFrgCYlbCkfQQEH"
    "7n3vNuyrAtCMFBcDM9z0K/gdUiw4DnTFdBEe68OjvnFkIz0XkzNY2FEOM9geaXRU1zJMAUXeczdX"
    "9hVIYDzQQ5zoDt1LdEmvSkduE9/U+dtlnZ4dt1SbQjUg7iNj/wGv+k3skPASI74HA3OGwiGIEvwz"
    "fbbXTF8W5+eTW/O0U2v3xUkp96+qeOo3RhEZ4oOYVRiaF/+ZmoX4Ds013DNHLYE6Bhkvgp5DGCCj"
    "UJnqEJQq1Zd+NX4Xi0VHRsBZtVVGsg7Yp2k2JA==")
    .then((value) => facepluginState = value ?? -1);
    } else {
    await _IDsdkPlugin.setActivation(
    "nWsdDhTp12Ay5yAm4cHGqx2rfEv0U+Wyq/tDPopH2yz6RqyKmRU+eovPeDcAp3T3IJJYm2LbPSEz"
    "+e+YlQ4hz+1n8BNlh2gHo+UTVll40OEWkZ0VyxkhszsKN+3UIdNXGaQ6QL0lQunTwfamWuDNx7Ss"
    "efK/3IojqJAF0Bv7spdll3sfhE1IO/m7OyDcrbl5hkT9pFhFA/iCGARcCuCLk4A6r3mLkK57be4r"
    "T52DKtyutnu0PDTzPeaOVZRJdF0eifYXNvhE41CLGiAWwfjqOQOHfKdunXMDqF17s+LFLWwkeNAD"
    "PKMT+F/kRCjnTcC8WPX3bgNzyUBGsFw9fcneKA==")
    .then((value) => facepluginState = value ?? -1);
    }
  • To request license key, please contact us:
    🧙Email: contact@kby-ai.com
    🧙Telegram: @kbyai
    🧙WhatsApp: +19092802609
    🧙Skype: live:.cid.66e2522354b1049b
    🧙Facebook: https://www.facebook.com/KBYAI

How To Run

1. Flutter Setup

Make sure you have Flutter installed.
This repo has been tested on Flutter version 3.22.3.
If you don't get Flutter installed, please follow the instructions provided in the official Flutter documentation here.

2. Placing Library File

Download the SDK library file for Android(idsdk.aar) from here and put it on the suitable SDK folder(folder android/libidsdk).
If you are trying to build this repo on Xcode for iOS, you need to get SDK Library file for iOS(facesdk.framework) from KBY-AI by contacting us on the address(WhatsApp, Email, Telegram or Skype).

3. Running the App

Try to build this repo to make sure that SDK works fine by linking real Android phone, not simulator. Once it works fine, you are ready to integrate our SDK to your project.
Run the following commands:

flutter pub upgrade
flutter run

If you plan to run the iOS app, please refer to the following link for detailed instructions.

About SDK

1. Set up

1.1 Setting Up SDK

Android

  • Download the SDK library file for Android(idsdk.aar) from here and put it on the suitable SDK folder(folder android/libidsdk).
    And then copy the SDK(folder libidsdk) to the folder android in your project.
  • Add SDK to the project in settings.gradle.
include ':libidsdk'

1.2 Setting Up SDK Plugin

  • Copy the folder idsdk_plugin to the root folder of your project.
  • Add the dependency in your pubspec.yaml file.
  idsdk_plugin:
    path: ./idsdk_plugin
  • Import the idsdk_plugin package.
  import 'package:idsdk_plugin/idsdk_plugin.dart';

2 API Usages

2.1 IDsdk Plugin

  • Activate the IDsdkPlugin by calling the setActivation method:
  final _IDsdkPlugin = IDsdkPlugin();
  ...
   await _IDsdkPlugin
          .setActivation(
              ...
          .then((value) => facepluginState = value ?? -1);
  • Initialize the IDsdkPlugin:
await _IDsdkPlugin
          .init()
          .then((value) => alprpluginState = value ?? -1)
  • Extract texts using the idcardRecognition method:
final results = await _IDsdkPlugin.idcardRecognition(image.path)