Skip to content

Commit

Permalink
Merge pull request #106 from BlinkID/feature/v2.12.0
Browse files Browse the repository at this point in the history
Feature/v2.12.0
  • Loading branch information
Cerovec authored Sep 12, 2017
2 parents e04c873 + 3828e3a commit 6804cc8
Show file tree
Hide file tree
Showing 83 changed files with 1,473 additions and 392 deletions.
34 changes: 34 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,37 @@
## 2.12.0

- Updates and additions
- Added Australian Driver Licence Recognizer `PPAustraliaDLFrontRecognizerResult` and `PPAustraliaDLFrontRecognizerSettings` for state Victoria
- Added Swiss ID Back Recognizer `PPSwissIDBackRecognizerResult` and `PPSwissIDBackRecognizerSettings`
- Added Swiss ID Front Recognizer `PPSwissIDFrontRecognizerResult` and `PPSwissIDFrontRecognizerSettings`
- Added reading of mirrored QR codes
- Added `PPMrzFilter` protocol and delegate `mrzFilter` on `PPMrtdRecognizerSettings`
- Determines whether document should be processed or it is filtered out, based on its MRZ (Machine Readable Zone)
- Introduced `GlareDetector` which is by default used in all recognizers whose settings implement `GlareDetectorOptions`:
- When glare is detected, OCR will not be performed on the affected document position to prevent errors in the extracted data
- If the glare detector is used and obtaining of glare metadata is enabled in `MetadataSettings`
- Glare detector can be disabled by using `detectGlare` property on the recognizer settings
- Added `PPQuadDetectorResultWithSize` which inherits existing `PPQuadDetectorResult`
- It's subclasses are `PPDocumentDetectorResult` and `PPMrtdDetectorResult`
- Returns information about physical size (height) in inches of the detected location when physical size is known

- Minor API changes
- `PPBlinkOcrRecognizerResult` and `PPBlinkOcrRecognizerSettings` are now deprecated. Use `PPDetectorRecognizerResult` and `PPDetectorRecognizerSettings` for templating or `PPBlinkInputRecognizerResult` and `PPBlinkInputRecognizerSettings` for segment scan
- removed option to scan 1D Code39 and Code128 barcodes on US Driver's licenses that contain those barcodes alongside PDF417 barcode

- Bugfixes:
- Fixed crash which sometimes happened while scanning MRTD documents
- Fixed returning valid data for MRZ based recognizers when not all fields outside MRZ have been scanned
- Fixed crash in QR code which happened periodically in all recognizers
- Fixed autorotation of overlay view controller
- Fixed scanning return result type of `PPDetectorRecognizerSettings` when initialized with `PPMrtdDetectorSettings` - returning `PPMrtdDetectorResult`

- Improvements in ID scanning performance:
- Date parsing improvements
- Better extraction of fields on back side of the Croatian ID card
- Improved reading of issuing authority on Croatian ID back side
- Improved USDLRecognizer - added support for new USDL standard

## 2.11.0

- Updates and additions
Expand Down
Binary file modified MicroBlink.bundle/Info.plist
Binary file not shown.
Binary file modified MicroBlink.bundle/cro_authority_dictionary.zzip
Binary file not shown.
7 changes: 7 additions & 0 deletions MicroBlink.framework/Headers/PPAusIDBackRecognizerSettings.h
Original file line number Diff line number Diff line change
Expand Up @@ -31,4 +31,11 @@ PP_CLASS_AVAILABLE_IOS(6.0)
*/
@property (nonatomic) BOOL displayFullDocumentImage;

/**
* Defines if glare detection should be turned on/off for front side of Austrian ID
*
* Default: YES
*/
@property (nonatomic, assign) BOOL detectGlare;

@end
12 changes: 10 additions & 2 deletions MicroBlink.framework/Headers/PPAusIDCombinedRecognizerSettings.h
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,9 @@
NS_ASSUME_NONNULL_BEGIN

/**
* Settings class for configuring German ID Combined Recognizer.
* Settings class for configuring Austrian ID Combined Recognizer.
*
* German Combined ID recognizer is used for scanning both front and back side of german IDs.
* Austrian Combined ID recognizer is used for scanning both front and back side of Austrian IDs.
*/
PP_CLASS_AVAILABLE_IOS(6.0)

Expand Down Expand Up @@ -91,6 +91,14 @@ PP_CLASS_AVAILABLE_IOS(6.0)
* Default: NO
*/
@property (nonatomic, assign) BOOL encodeFullDocumentPhoto;

/**
* Defines if glare detection should be turned on/off for both front and back side of Austrian IDs.
*
* Default: YES
*/
@property (nonatomic, assign) BOOL detectGlare;

@end

NS_ASSUME_NONNULL_END
4 changes: 2 additions & 2 deletions MicroBlink.framework/Headers/PPAusIDFrontRecognizerResult.h
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@
// Copyright © 2016 MicroBlink Ltd. All rights reserved.
//

#import "PPBlinkOcrRecognizerResult.h"
#import "PPDetectorRecognizerResult.h"

/**
* Class representing values obtained when scanning front side of Austrian ID
*/
PP_CLASS_AVAILABLE_IOS(6.0)
@interface PPAusIDFrontRecognizerResult : PPBlinkOcrRecognizerResult
@interface PPAusIDFrontRecognizerResult : PPDetectorRecognizerResult

/**
* The first name of the Austrian ID owner.
Expand Down
7 changes: 7 additions & 0 deletions MicroBlink.framework/Headers/PPAusIDFrontRecognizerSettings.h
Original file line number Diff line number Diff line change
Expand Up @@ -61,4 +61,11 @@ PP_CLASS_AVAILABLE_IOS(6.0)
*/
@property (nonatomic) BOOL displayFullDocumentImage;

/**
* Defines if glare detection should be turned on/off for front side of Austrian ID
*
* Default: YES
*/
@property (nonatomic, assign) BOOL detectGlare;

@end
4 changes: 2 additions & 2 deletions MicroBlink.framework/Headers/PPAusPassportRecognizerResult.h
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@
//
//

#import "PPBlinkOcrRecognizerResult.h"
#import "PPDetectorRecognizerResult.h"

/**
* Class representing values obtained when scanning of Austrian Passport
*/
PP_CLASS_AVAILABLE_IOS(6.0)
@interface PPAusPassportRecognizerResult : PPBlinkOcrRecognizerResult
@interface PPAusPassportRecognizerResult : PPDetectorRecognizerResult

/**
* The surname of the Austrian Passport owner.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -140,6 +140,13 @@ PP_CLASS_AVAILABLE_IOS(6.0)
*/
@property (nonatomic, assign) BOOL returnFullDocumentPhoto;

/**
* Defines if glare detection should be turned on/off for Austrian Passport
*
* Default: YES
*/
@property (nonatomic, assign) BOOL detectGlare;

@end

NS_ASSUME_NONNULL_END
Expand Down
57 changes: 57 additions & 0 deletions MicroBlink.framework/Headers/PPAustraliaDLFrontRecognizerResult.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
//
// PPAustraliaDLFrontRecognizerResult.h
// MicroBlinkDev
//
// Created by Jura Skrlec on 06/09/2017.
//
//

#import "PPDetectorRecognizerResult.h"

/**
* Class representing values obtained when scanning front side of Australian DL
*/
PP_CLASS_AVAILABLE_IOS(6.0)
@interface PPAustraliaDLFrontRecognizerResult : PPDetectorRecognizerResult

/**
* The first name of the Australian DL owner.
*/
@property (nonatomic, readonly, nullable) NSString *name;

/**
* The licence type of Australian DL.
*/
@property (nonatomic, readonly, nullable) NSString *licenceType;

/**
* The licence number of the Australian DL owner.
*/
@property (nonatomic, readonly, nullable) NSString *licenceNumber;

/**
* The address of the Australian DL owner.
*/
@property (nonatomic, readonly, nullable) NSString *address;

/**
* The date of birth of Australian DL owner in DD.MM.yyyy format.
*/
@property (nonatomic, readonly, nullable) NSString *rawDateOfBirth;

/**
* The date of birth of Australian DL owner
*/
@property (nonatomic, readonly, nullable) NSDate *dateOfBirth;

/**
* The document date of expiry of the Australian DL in DD.MM.yyyy format.
*/
@property (nonatomic, readonly, nullable) NSString *rawDocumentDateOfExpiry;

/**
* The document date of expiry of the Australian DL
*/
@property (nonatomic, readonly, nullable) NSDate *documentDateOfExpiry;

@end
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
//
// PPAustraliaDLFrontRecognizerSettings.h
// MicroBlinkDev
//
// Created by Jura Skrlec on 06/09/2017.
//
//

#import "PPRecognizerSettings.h"


NS_ASSUME_NONNULL_BEGIN

/**
* Settings class for configuring Asutralian Front DL Recognizer.
*
* Australian Front ID recognizer is used for scanning front side of Australian DL. It always extracts
* identity card number, first and last name of ID holder while extracting other elements is optional.
*/
PP_CLASS_AVAILABLE_IOS(6.0)
@interface PPAustraliaDLFrontRecognizerSettings : PPRecognizerSettings

/**
* Name of the image sent to didOutputMetadata method of scanDelegate object that contains face.
* This image will be sent to scan delegate during recognition process if displaying of face image
* is enabled via displayFaceImage property and receiving of dewarpedImage in MetadataSettings is enabled.
*/
+ (NSString *)ID_FACE;

/**
* Name of the image sent to didOutputMetadata method of scanDelegate object that contains signature.
* This image will be sent to scan delegate during recognition process if displaying of face image
* is enabled via displaySignatureImage property and receiving of dewarpedImage in MetadataSettings is enabled.
*/
+ (NSString *)ID_SIGNATURE;

/**
* Name of the image sent to didOutputMetadata method of scanDelegate object that contains full document.
* This image will be sent to scan delegate during recognition process if displaying of full document image
* is enabled via displayFullDocumentImage property and receiving of dewarpedImage in MetadataSettings is enabled.
*/
+ (NSString *)FULL_DOCUMENT_IMAGE;

/**
* Defines if sex of Australian DL owner should be extracted
*
* Default: YES
*/
@property (nonatomic, assign) BOOL extractAddress;

/**
* Defines if citizenship of Australian DL owner should be extracted
*
* Default: YES
*/
@property (nonatomic, assign) BOOL extractLicenceNumber;

/**
* Defines if date of birth of Australian DL owner should be extracted
*
* Default: YES
*/
@property (nonatomic, assign) BOOL extractDateOfBirth;

/**
* Defines if date of expiry should be extracted from Australian DL
*
* Default: YES
*/
@property (nonatomic, assign) BOOL extractDateOfExpiry;

/**
* Sets whether face image from ID card should be sent to didOutputMetadata method of scanDelegate object.
* If you want to recieve this image, be sure to enable dewarpedImage in MetadataSettings.
*
* Default: NO
*/
@property (nonatomic, assign) BOOL displayFaceImage;

/**
* Sets whether signature image from ID card should be sent to didOutputMetadata method of scanDelegate object.
* If you want to recieve this image, be sure to enable dewarpedImage in MetadataSettings.
*
* Default: NO
*/
@property (nonatomic, assign) BOOL displaySignatureImage;

/**
* Sets whether full document image of ID card should be sent to didOutputMetadata method of scanDelegate object.
* If you want to recieve this image, be sure to enable dewarpedImage in MetadataSettings.
*
* Default: NO
*/
@property (nonatomic, assign) BOOL displayFullDocumentImage;

@end

NS_ASSUME_NONNULL_END
9 changes: 9 additions & 0 deletions MicroBlink.framework/Headers/PPBlinkIDRecognizers.h
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,10 @@
#import "PPAusIDCombinedRecognizerSettings.h"
#import "PPAusIDCombinedRecognizerResult.h"

// Australia
#import "PPAustraliaDLFrontRecognizerSettings.h"
#import "PPAustraliaDLFrontRecognizerResult.h"

// Croatia
#import "PPCroIDBackRecognizerSettings.h"
#import "PPCroIDBackRecognizerResult.h"
Expand Down Expand Up @@ -68,6 +72,7 @@
#import "PPMrtdRecognizerResult.h"
#import "PPMrtdCombinedRecognizerSettings.h"
#import "PPMrtdCombinedRecognizerResult.h"
#import "PPMrzFilter.h"

// Romania
#import "PPRomanianIDFrontRecognizerSettings.h"
Expand Down Expand Up @@ -110,6 +115,10 @@
#import "PPSlovenianIDCombinedRecognizerResult.h"

// Switzerland
#import "PPSwissIDBackRecognizerSettings.h"
#import "PPSwissIDBackRecognizerResult.h"
#import "PPSwissIDFrontRecognizerSettings.h"
#import "PPSwissIDFrontRecognizerResult.h"
#import "PPSwissPassportRecognizerSettings.h"
#import "PPSwissPassportRecognizerResult.h"

Expand Down
20 changes: 20 additions & 0 deletions MicroBlink.framework/Headers/PPBlinkInputRecognizerResult.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
//
// PPBlinkInputRecognizerResult.h
// MicroBlinkDev
//
// Created by Jura Skrlec on 03/08/2017.
//
//

#import "PPSegmentRecognizerResult.h"
#import "PPOcrLayout.h"

/**
* Result of scanning with Blink Input Recognizer
*
* For each parser group, the result contains one Ocr Layout, and one or more parsed results.
*/
PP_CLASS_AVAILABLE_IOS(6.0)
@interface PPBlinkInputRecognizerResult : PPSegmentRecognizerResult

@end
34 changes: 34 additions & 0 deletions MicroBlink.framework/Headers/PPBlinkInputRecognizerSettings.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
//
// PPBlinkInputRecognizerSettings.h
// MicroBlinkDev
//
// Created by Jura Skrlec on 03/08/2017.
//
//

#import "PPSegmentRecognizerSettings.h"

#import "PPOcrParserFactory.h"

// Parser for raw text
#import "PPRawOcrParserFactory.h"

// Regex parser
#import "PPRegexOcrParserFactory.h"

// Generic Parsers
#import "PPDateOcrParserFactory.h"
#import "PPEmailOcrParserFactory.h"
#import "PPIbanOcrParserFactory.h"
#import "PPPriceOcrParserFactory.h"
#import "PPLicensePlatesParserFactory.h"
#import "PPVinOcrParserFactory.h"
#import "PPTopUpOcrParserFactory.h"

/**
* Base class for BlinkInput API and general OCR recognition.
*/
PP_CLASS_AVAILABLE_IOS(6.0)
@interface PPBlinkInputRecognizerSettings : PPSegmentRecognizerSettings

@end
4 changes: 4 additions & 0 deletions MicroBlink.framework/Headers/PPBlinkInputRecognizers.h
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,10 @@
#import "PPDetectorRecognizerSettings.h"
#import "PPDetectorRecognizerResult.h"

/** BlinkInput */
#import "PPBlinkInputRecognizerSettings.h"
#import "PPBlinkInputRecognizerResult.h"

// Vin
#import "PPVinRecognizerSettings.h"
#import "PPVinRecognizerResult.h"
Expand Down
2 changes: 1 addition & 1 deletion MicroBlink.framework/Headers/PPBlinkOcrRecognizerResult.h
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
*
* For each parser group, the result contains one Ocr Layout, and one or more parsed results.
*/
PP_CLASS_AVAILABLE_IOS(6.0)
PP_CLASS_DEPRECATED_IOS(1_0, 5_10_0, "Use PPDetectorRecognizerResult for templating or PPBlinkInputRecognizerResult segment scan")
@interface PPBlinkOcrRecognizerResult : PPTemplatingRecognizerResult

@end
Loading

0 comments on commit 6804cc8

Please sign in to comment.