BlinkID / blinkid-android

Everything you need to add AI-driven ID scanning into your native Android app.
https://microblink.com/identity/identity-document-scanning/
441 stars 153 forks source link

Get image from EUDL_COUNTRY_UK #108

Closed BilalMH closed 5 years ago

BilalMH commented 6 years ago

Before opening an issue, check that you are using the latest version of the BlinkID SDK.

Also, make sure your issue isn't on the list of common problems.


Description

Hi there, trying to get the image from the UK drivers licence. I've added the ImageListener and the ImageMetaDataSettings, but how can I apply this to the EUDLRecognizerSettings or how can I get it from those settings?

Thanks

Environment Details

BlinkID version: 3.14.0@aar

Device model:

Device Android version:

Device ABI (processor architecture, e.g. ARMv7):

culoi commented 6 years ago

Hello @BilalMH

You have to set receiving of the full document image for the EUDLRecognizer:

EUDLRecognizerSettings eudlSett = new EUDLRecognizerSettings();
eudlSett.setShowFullDocument(true); 

then in ImageMetadataSettings set return of the dewarped image.

MetadataSettings.ImageMetadataSettings ims = new MetadataSettings.ImageMetadataSettings();
        // enable obtaining of dewarped(cropped) images
        ims.setDewarpedImageEnabled(true);

Here is the sample for the MRTDRecognizer, you just have to switch MRTDRecognizer with EUDL.

https://github.com/BlinkID/blinkid-android/blob/master/BlinkIDSample/BlinkIDImageListenerSample/src/main/java/com/microblink/blinkid/MainActivity.java#L61-L93

Please let me know if you require any additional assistance.

Regards

BilalMH commented 6 years ago

Hi @culoi

Do I need to do anything with ims OnActivityResult?

Thanks

culoi commented 6 years ago

@BilalMH

I'm not quite sure what do you want to do with that, but the answer is no, you don't have to anything with ims in the OnActivityResult callback.

What are you trying to achieve?

Regards

BilalMH commented 6 years ago

@culoi

I'm trying to get the image as well as the licence details. I'm a bit confused as to how I get the image OnActivityResult callback. Could you point me to the right direction? I was confused with the sample apps.

Thanks

BilalMH commented 6 years ago

@culoi I'm getting a

java.lang.ClassCastException: com.microblink.recognizers.blinkid.eudl.EUDLRecognizerSettings cannot be cast to com.microblink.recognizers.settings.RecognitionSettings

But not sure what's going on as I'm following the documentation but with EUDL instead of MRTD

Any suggestions as to what's going on? Here is what I'm doing

`public void startMicroblink() { Intent intent = new Intent(getActivity(), ScanCard.class); intent.putExtra(ScanCard.EXTRAS_LICENSE_KEY, AppController.BLINKID_KEY); EUDLRecognizerSettings settings = new EUDLRecognizerSettings(EUDLCountry.EUDL_COUNTRY_UK);

    settings.setShowFullDocument(true);

    MetadataSettings.ImageMetadataSettings ims = new MetadataSettings.ImageMetadataSettings();
    ims.setDewarpedImageEnabled(true);

    intent.putExtra(ScanCard.EXTRAS_RECOGNITION_SETTINGS, settings);
    intent.putExtra(ScanCard.EXTRAS_IMAGE_LISTENER, new BlinkIdImageListener());
    intent.putExtra(ScanCard.EXTRAS_IMAGE_METADATA_SETTINGS, ims);
    startActivityForResult(intent, 1);
}`

It won't let me do setRecognizerArrays with this so not sure what to do?

Thanks

KavyaHarisha commented 6 years ago

Anybody help me, my requirement was I want to scan the UK driving license with helpful neat code fully. I tried with EUDLRecognizerSettings eudlSett = new EUDLRecognizerSettings(); I cannot import the EDULRecognizerSetting class. Could you please help me here. Advance thanks. I imported the SDK like below in the app gradle. implementation('com.microblink:blinkid:4.0.0@aar') { transitive = true }

DoDoENT commented 6 years ago

Hi @KavyaHarisha,

BlinkID v4.0.0 no longer has EUDLRecognizerSettings class. The 4.0.0 version now has completely new API, as described in release notes and in documentation.

For scanning UK driving license, you will now need EudlRecognizer. See a sample how it is used. Also, check a minimal sample app to get acquainted with the new API.

KavyaHarisha commented 6 years ago

Thanks a lot, really understandable now.

On Mon, Jun 25, 2018 at 4:29 PM DoDo notifications@github.com wrote:

Hi @KavyaHarisha https://github.com/KavyaHarisha,

BlinkID v4.0.0 no longer has EUDLRecognizerSettings class. The 4.0.0 version now has completely new API, as described in release notes https://github.com/BlinkID/blinkid-android/releases/tag/v4.0.0 and in documentation https://github.com/BlinkID/blinkid-android/blob/master/README.md.

For scanning UK driving license, you will now need EudlRecognizer https://github.com/blinkid/blinkid-android#eudlRecognizer. See a sample how it is used https://github.com/BlinkID/blinkid-android/blob/master/BlinkIDSample/BlinkID_AllRecognizersSample/src/main/java/com/microblink/blinkid/MenuActivity.java#L629. Also, check a minimal sample app https://github.com/BlinkID/blinkid-android/tree/master/BlinkIDSample/BlinkID-aMinimalSample to get acquainted with the new API.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/BlinkID/blinkid-android/issues/108#issuecomment-399913368, or mute the thread https://github.com/notifications/unsubscribe-auth/Aahk0Mrnx4Nzy_hqtVm2MIcKmlpuBDyVks5uAMKtgaJpZM4Ut-22 .

culoi commented 5 years ago

Closing the issue, please reopen if you have additional questions or contact us directly at support@microblink.com