Document Reader SDK 5.1 — June 30, 2021
Core SDK
- We have raised and unified version number for all platform APIs—5.1. In the future, we will follow this approach and releases for all platforms will be delivered under the same version number.
- This is the first release of fully cross-platform version of Core SDK. Now we officially support the following platforms:
- Windows (7+, Server 2008+)
- Linux (CentOS 7+, Ubuntu 16+, AstraLinux 1.6)
- Android (4.4+)
- iOS (9+)
- OS X (on demand)
- Huge amount of refactoring was performed to make all code cross platform runnable and to create monolith Core SDK library with same functionality for all platforms and architectures.
- Massive improvements in performance and quality across all modules.
Document detection and crop
- Added capability to locate and recognize double page spread of the document in one image. There are passports, that have meaningful data not only on the data page, but also on the second page of the spread. To get the data from both pages in one go we have implemented this “Double page spread” mode. Disabled by default.
- Added capability of smart detection of the document by its recognition. Document can be in any orientation, flat or with perspective distortion, hold in the hands like a book, etc. This greatly improves success rate on mobile and service use cases. Can be enabled/disabled in process parameters. By default, enabled for processing of static images and disabled for processing series of images from camera on mobile.
- Optimized ID2 Visa stickers cropping from passport page. • Document type recognition
- Improved performance of document type recognition by multiple algorithm optimizations.
- Improved quality of document type recognition. Now document images with corrupted proportions, not fully visible in image, with high perspective distortion are correctly recognized in most possible cases.
- Improved recognition of documents with non-standard proportions.
- Improved algorithm of image resolution determination by using data from templates (laminated documents).
OCR
- Added scenario “OcrFree” for arbitrary text OCR, based on provided parameters. You can define field definition template using mask and recognize any data, not only on documents.
- Added support for Armenian alphabet (lcid 1067).
- Added support for Malta language (lcid 1082).
- Added bank cards recognition in specific scenario.
- Added recognition of registration stamp (address) in Russian Federation domestic passports.
- Added recognition of CCC/CTC codes for China / Hong Kong documents.
- Improved recognition of text with multiple languages in one field.
- Improved recognition of special symbols, like @, ≤, ≥, *, _, etc.
- All alphabets recognition is now based on neural networks (including Greek, Georgian, Azeri/Turkish).
- All NN were re-trained on significantly larger datasets to ensure better recognition accuracy.
- Improved recognition time.
- Document templates were revisited for each field to assure correctness and high recognition accuracy based on statistics.
- Perforated numbers OCR now available on all platforms (Ukraine domestic passport). o Optimized serial OCR recognition mode from multiple frames, based on recognition probability and matching results between frames.
- Internal resource usage optimization that allowed to reduce memory impact and package size.
Text data parsing and validation
- Added content validation for Belarus personal number.
- Added parsing of Russian Federation registration address text into separate fields. o Added transliteration into Latin characters of all Cyrillic characters for Russian Federation domestic passports.
- Added generation of MRZ for Russian Federation domestic passports without MRZ by its data.
- Added generation of text name of issuing authority by its code for Russian Federation domestic passports.
- Added date validation for revision ft_First_Issue_Date, ft_Revision_Date & ft_Creation_Date.
- Added new country code XES (XC).
- Added new calculated fields ft_Age_at_Issue, ft_Years_Since_Issue based on date of issue of the document and date of birth for convenience.
- Fixed issue of conversion Albanian character ç into Latin c.
- Fixed issue with ft_DL_Under_18_Date, ft_DL_Under_19_Date, ft_DL_Under_21_Date fields validation.
- Fixed issues with date of expiry parsing for some documents, that do not expire (99-99-9999).
- ft_MRZ_Type field now present in text comparison results.
- Fixed issue with transliteration from Greek to Latin for specific exceptional cases.
Authenticity
- Added support for JURA LetterScreen automated check based on saved templates in the database for specific documents, that have this security feature applied (by request).
- Added new element validation in IR visibility – portrait contour check (available for specific documents only).
- Improved validation of Russian Federation domestic passports to reduce FRR and FAR based on real document cases.
- Fixed issue with barcode format check - it would fail if no barcode detected on the document where it should be present.
- Fixed issue with false luminescence in text fields not being detected in some cases.
- Optimization of image patterns check allowed to reduce processing time.
MRZ
- Added new parsers:
- Bolivia Crew Member Certificate,
- Canada Certificate Of Indian Status,
- Canada Manitoba Enhanced Driving License,
- Grenada Voter Card,
- Moldova Crew Member Certificate,
- Turkey ID Card,
- Turkey Seamen's Book.
- Updated parsers:
- Bulgaria Registration Certificate,
- Guatemala ID Card,
- Kuwait ID Card,
- Mexico Voting Card,
- Sweden ID Card,
- Sweden Residence Permit.
Barcode
- Added new parsers:
- Albania Driving License,
- Albania Qualification Driving License,
- Angola ID Card,
- Argentina Driving License,
- Brunei Darussalam Driving License,
- Czech Republic ID Card,
- Grenada Voter Card,
- Haiti ID Card,
- Jamaica Armed Forces ID Card,
- Kosovo ID Card,
- Latvia ID Card,
- Malawi Driving License,
- Malawi ID Card,
- Mexico Quintana Roo Driving License,
- Moldova Registration Certificate,
- Namibia Driving License,
- Netherlands Driving License,
- Nigeria Driving License,
- Nigeria ID Card,
- Norway Driving License,
- Panama Driving License,
- Panama Seaman's Book,
- Peru Visa,
- Philippines Firearm License,
- Russian Federation Driving License,
- South Sudan ID Card,
- Spain Seaman's book,
- Sri Lanka ID Card,
- Suriname Driving License,
- Swaziland ID Card,
- Turkey Work Permit.
- Improved barcode parsers:
- Bolivia Passport,
- Cuba Passport,
- Ecuador Passport,
- Georgia ID Сard,
- Grenada Passport,
- Nigeria Driving License,
- Philippines Professional ID Card,
- Uganda ID Card,
- United States Uniformed Services ID Card.
Image QA
- Improved and integrated glare detection NN that provides result with ROI of glare areas on the image.
- Improved image focus check NN.
Imaging
- Added GIF format support for loading/saving images. First Frame is taken as a base image.
- Fixed issues with opening specific images in .png, .tiff, .jp2 formats.
Other
- Added new eRPRM_Lights enum members RPRM_Light_OVD_Left and RPRM_Light_OVD_Right.
- Added new eRPRM_Capabilities enum member RPRM_Capabilities_LiveFaceComparison.
- Added new eRPRM_ResultType enum members:
- RPRM_ResultType_Status,
- RPRM_ResultType_Portrait_Comparison,
- RPRM_ResultType_ExtPortrait.
- Added new eVisualFieldType enum members:
- ft_PlaceOfExamination
- ft_ApplicationNumber
- ft_VoucherNumber
- ft_AuthorizationNumber
- ft_Faculty
- ft_FormOfEducation
- ft_DNINumber
- ft_RetirementNumber
- ft_ProfessionalIdNumber
- ft_Age_at_Issue
- ft_Years_Since_Issue
- ft_DLClassCode_BTP_From
- ft_DLClassCode_BTP_Notes
- ft_DLClassCode_BTP_To
- ft_DLClassCode_C3_From
- ft_DLClassCode_C3_Notes
- ft_DLClassCode_C3_To
- ft_DLClassCode_E_From
- ft_DLClassCode_E_Notes
- ft_DLClassCode_E_To
- ft_DLClassCode_F_From
- ft_DLClassCode_F_Notes
- ft_DLClassCode_F_To
- ft_DLClassCode_FA_From
- ft_DLClassCode_FA_Notes
- ft_DLClassCode_FA_To
- ft_DLClassCode_FA1_From
- ft_DLClassCode_FA1_Notes
- ft_DLClassCode_FA1_To
- ft_DLClassCode_FB_From
- ft_DLClassCode_FB_Notes
- ft_DLClassCode_FB_To
- ft_DLClassCode_G1_From
- ft_DLClassCode_G1_Notes
- ft_DLClassCode_G1_To
- ft_DLClassCode_H_From
- ft_DLClassCode_H_Notes
- ft_DLClassCode_H_To
- ft_DLClassCode_I_From
- ft_DLClassCode_I_Notes
- ft_DLClassCode_I_To
- ft_DLClassCode_K_From
- ft_DLClassCode_K_Notes
- ft_DLClassCode_K_To
- ft_DLClassCode_LK_From
- ft_DLClassCode_LK_Notes
- ft_DLClassCode_LK_To
- ft_DLClassCode_N_From
- ft_DLClassCode_N_Notes
- ft_DLClassCode_N_To
- ft_DLClassCode_S_From
- ft_DLClassCode_S_Notes
- ft_DLClassCode_S_To
- ft_DLClassCode_TB_From
- ft_DLClassCode_TB_Notes
- ft_DLClassCode_TB_To
- ft_DLClassCode_TM_From
- ft_DLClassCode_TM_Notes
- ft_DLClassCode_TM_To
- ft_DLClassCode_TR_From
- ft_DLClassCode_TR_Notes
- ft_DLClassCode_TR_To
- ft_DLClassCode_TV_From
- ft_DLClassCode_TV_Notes
- ft_DLClassCode_TV_To
- ft_DLClassCode_V_From
- ft_DLClassCode_V_Notes
- ft_DLClassCode_V_To
- ft_DLClassCode_W_From
- ft_DLClassCode_W_Notes
- ft_DLClassCode_W_To
- Added eBarcodeType enum member bct_CODE11.
- Added new eCheckDiagnose enum members:
- chd_PhotoWhiteIRDontMatch
- chd_NotAllBarcodesRead
- chd_PortraitComparison_PortraitsDiffer
- chd_PortraitComparison_NoServiceReply
- chd_PortraitComparison_ServiceError
- chd_PortraitComparison_NotEnoughImages
- chd_PortraitComparison_NoLivePhoto
- chd_PortraitComparison_NoServiceLicense
- chd_PortraitComparison_NoPortraitDetected
- Added new diDocType enum members:
- dtProfessionalCard
- dtRegistrationStamp
- dtDriverCard
- dtDriverTrainingCertificate
- dtQualificationDrivingLicense
- dtMembershipCard
- dtPublicVehicleDriverAuthorityCard
- dtMarineLicense
- dtTemporaryLearnerDrivingLicense
- dtTemporaryCommercialDrivingLicense
- dtInterimInstructionalPermit
- dtCertificateOfCompetency
- dtCertificateOfProficiency
- Added new eRPRM_Authenticity enum member RPRM_Authenticity_Letter_Screen.
- Added new eIR_Visibility_Flag enum member WhiteIRMatching.
- Added new eRPRM_SecurityFeatureType enum members:
- SecurityFeatureType_Portrait_Comparison_ExtvsVisual
- SecurityFeatureType_Portrait_Comparison_ExtvsRFID
- SecurityFeatureType_Portrait_Comparison_ExtvsLive
- Added new eRPRM_Commands enum member RPRM_Command_Get_DatabaseInfo.
- Struct TListVerifiedFields extended with eDateFormat member.
- Corrected / implemented serialization / deserialization of all results in JSON.
- Improved memory consumption for full page video detection.
- Fixed issue with cropping default portrait in case there is no face detected on the image.
- Fixed issue with RFID date validity in text comparison results if Visual OCR result was incorrect.
- Fixed issue with RFID text field Validity value serialization to JSON.
- Fixed issue with starting without database file presence that lead to limitation of functionality that does not depend on database.
- Multiple code improvements, memory leak fixes, internal optimizations, and tiny fixes.
- Documentation updated.
Core RFID SDK
- New RFID SDK version 3.6.
- Fully cross platform version available for most popular platforms (Windows, Linux, Android, iOS).
- Added functionality for extended in-memory certificate management. Now it is possible to add all kinds of certificates not only from folder, but in-memory by providing buffer with certificates/master lists/defect lists/etc. and specifying its content type. Supported for PA and TA PKD stores. On demand cleanup and rebuild of certificate stores also supported using RFID_Command_PKD_* commands on desktop and AddPKDCertificates/ClearPKDCertifiicates methods on mobile.
- RAM usage for in-memory certificate store greatly reduced to the minimum, allowing to load thousands of certificates without any impact on performance.
- Added correct parsing to all kinds of .ldif format variations.
- Added reading and parsing capability of Chinese national ID chip data (special crypto module required).
- New enum eRFID_PKD_Type introduced.
- New enum eRFID_PKD_ResourceType introduced.
- New enum eRFID_ExtraDataSupport introduced.
- New struct TRFID_PKD_ResourceData introduced.
- Enum eCV_Certificate_Type renamed into eRFID_CV_Certificate_Type.
- Struct TRFID_SignerInfo is now deprecated, use TRFID_SignerInfo_Ex.
- Struct TRFID_Certificate is now deprecated, use TRFID_Certificate_Ex.
- Added new eRFID_CertificateType enum member ctBLS.
- Added new eRFID_DataFile_Type enum members:
- dftBlackList
- dftSAM_Data
- dftSAM_Data_Max
- Added new eRFID_Layer14_Items enum members:
- lcomSAM_Command
- lcomSAM_Block_RFID
- lcomSAM_Block_I2C
- lcomSAM_Response
- Added new eRFID_Layer14_Param_Type enum members:
- lptSAM_Present
- lptSAM_Use
- lptSAM_Command
- lptFull_ISO_Mode
- Added new eRFID_Commands enum members:
- RFID_Command_Set_UseExternalDS
- RFID_Command_Get_UseExternalDS
- RFID_Command_Session_ReadSAM
- RFID_Command_PKD_CheckResource
- Added new eRFID_ErrorCodes enum members:
- RFID_Error_Layer34_SAM_Error
- RFID_Error_Layer34_SAM_Collision
- RFID_Error_Layer34_SAM_Acknowledge
- Added new eRFID_NotificationCodes enum member RFID_Notification_ReadSAM.
- Added new eOutputFormatField enum member offJSON.
- Struct TRFChipProperties Support_Mifare member renamed to Support_Extra.
- Fixed issue with information absence on the data files, that were attempted to read but failed that may lead to incorrect verification result.
- Fixed issue with logs not available and not saved to the session data on mobile platforms.
- Session data file obtained from x86 platform is not valid to load on x64 and vice versa.
Hardware support
- IMPORTANT! New firmware version 22.04. It is recommended to update your 21.x firmware series RFID devices to this new version. Fixed issue with USB enumeration on some PCs.
- Added support for 1120 devices on mobile platforms. This includes obtaining correct UV luminescence image with ambient light and RFID chip reading using integrated antenna.
- Camera driver version updated to 10.5.9.5 with minor FW fixes.
- Improved TWAIN interface support for Regula Document readers.
- Fixed issue with switching to high performance power mode for OV camera module-based devices (70x7, 70x4M, 70x8M, 72x3).
- Command-line mode for RFID firmware update tool implemented.
- EOS based devices are no longer supported in SDK. Their support moved to separate “Regula High Resolution Scanner” product.
Desktop API
- Added 1-1 high quality face matching capability using external Regula Face Processing Service that can be installed either locally, either remotely and available by TCP/IP. There are 4 types of portraits that can be compared:
- Document printed portrait,
- RFID chip DG2 portrait,
- Live portrait from external camera,
- External portrait from database. Results are available in RPRM_ResultType_Portrait_Comparison result type. For using this functionality separate license is required. Please contact our sales for details.
- Windows
- Since this version we will deliver both x86 and x64 versions of libraries.
- PasspR40.dllnowhaveallprocessinglibrariesembeddedinit.
- Linux
- Since this version we will deliver only x64 version of libraries by default. x86 version can be provided on demand by request to our support. Most of x86 Linux distributions are for legacy systems and supporting this by default takes unreasonable efforts.
Mobile API
- Added the ability to change the standard images of the following buttons:
- Torch button
- Close button
- Capture button
- Change frame button
- Camera switch button
- Added capability of changing camera frame corners radius.
- Added capability of changing the design type of the beginning and end of the camera frame line.
- Added capability of changing the margin between the camera frame and the preview edge.
- Added capability of changing aspect ratio of the camera frame.
- Added capability of changing layout position of the camera frame.
- Added capability of creating your own message in the camera window, as well as setting the position for it.
- Added the ability to set the type of barcode parser (barcodeParserType).
- Added capability of accessing the document's RFID chip using CAN.
- Added processing of critical errors that may occur when processing an RFID chip, such as an invalid key (MRZ, CAN), after which the scanning session should be interrupted.
- Added capability of reading the document spread (doublePageSpread).
- Added dark theme support for all UI elements.
- Added capability of deleting a database from a device (db.dat) (removeDatabase).
- Added the ability to cancel database downloads while performing the prepareDatabase and runAutoUpdate functions (cancelDBUpdate).
- Added capability of using external certificates (addPKDCertificates) - they can be added both during initialization and in runtime. Also added the ability to delete certificates from memory (clearPKDCertificates).
- Implemented serialization and deserialization of the DocumentReaderResults object.
- Added capability of processing multiple document images (recognizeImages).
- Added capability of saving the RFID session for debugging (debugSaveRFIDSession).
- Updated error statuses associated with the license.
- Fixed issues in the operation of the prepareDatabase and runAutoUpdate functions.
-
Android:
- Added annotations in code.
- Added barcode format verification, the results of which are returned to DocumentReaderAuthenticityResult.
- Added Context as a parameter to the following functions: prepareDatabase, runAutoUpdate, removeDatabase, showScanner, stopScanner, and others.
- Added the following Core types: barcodemrzrfid, ocrandmrzrfid.
- Added new enums: eCheckDiagnose, DocFormat, PKDResourceType.
- The setAutoSettings method has been added to the RfidScenario settings structure, which allows you to automatically change the scenario settings depending on the type and results obtained during scanning of the last document. The default value is true.
- Added new CTC_TRADITIONAL and CTC_SIMPLIFIED members of the LCID enum.
- Added new DocReaderFrame enum member DOCUMENT.
- The list of scenarios available for document processing is provided in enum scenario
- Changed default values of some properties in RfidScenario structure.
- Fixed issues in the RFID chip reading results.
- Fixed generation of final results. Now DocumentReaderTextField contains the DocumentReaderValue values from all pages of the document for all eRPRM_ResultType result types.
-
iOS
- Added capability of reading the document's RFID chip.
- Added mrzPosition, barcodePosition, properties to RGLDocumentReaderResults.
- Added capability of changing the standard string localization when integrating the SDK inside the dynamic framework.
- Added barcode format check, the results of which are returned to RGLDocumentReaderAuthenticityResult.
- Added new enums RGLCheckDiagnose, RGLDocFormat, RGLPKDResourceType.
- Added rfidScenarioproperty.
- Added the following Core types: MRZRFID, BarcodeMRZRFID, OCRRFID, FullRFID.
- autoSettings property has been added to the RGLRFIDScenario settings structure, which allows you to automatically change the scenario settings depending on the type and results obtained during scanning of the last document. Default value is true.
- Added new LCID enum members:
- RGLLCIDArabicArmenian
- RGLLCIDChineseHongKongSAR
- RGLLCIDChineseMacaoSAR
- RGLLCIDChineseSingapore
- RGLLCIDChineseTaiwan
- RGLLCIDDivehi
- RGLLCIDGujarati
- RGLLCIDHindiIndia
- RGLLCIDJapanese
- RGLLCIDKannada
- RGLLCIDKonkani
- RGLLCIDKorean
- RGLLCIDMarathi
- RGLLCIDPunjabi
- RGLLCIDSanskrit
- RGLLCIDSyriac
- RGLLCIDTamil
- RGLLCIDTelugu
- RGLLCIDThaiThailand
- RGLLCIDCtcSimplified
- RGLLCIDCtcTraditional
- Added a new RGLDocReaderFrame enum member RGLDocReaderFrameDocument.
- Added RGLSecurityFeatureType enum members:
- RGLSecurityFeatureTypeFill,
- RGLSecurityFeatureTypeFalseLuminescence,
- RGLSecurityFeatureTypeHoloSimple,
- RGLSecurityFeatureTypeHoloVerifyStatic,
- RGLSecurityFeatureTypeHoloVerifyMultiStatic,
- RGLSecurityFeatureTypeHoloVerifyDinamic,
- RGLSecurityFeatureTypePatternNotInterrupted,
- RGLSecurityFeatureTypePatternNotShifted,
- RGLSecurityFeatureTypePatternSameColors,
- RGLSecurityFeatureTypePatternIRInvisible,
- RGLSecurityFeatureTypePhotoSizeCheck,
- RGLSecurityFeatureTypeBarcode,
- RGLSecurityFeatureTypePatternDifferentLinesThickness,
- RGLSecurityFeatureTypePortraitComparisonRFIDvsCamera,
- RGLSecurityFeatureTypeGhostPhoto,
- RGLSecurityFeatureTypeClearGhostPhoto,
- RGLSecurityFeatureTypeInvisibleObject,
- RGLSecurityFeatureTypeLowContrastObject,
- RGLSecurityFeatureTypePhotoColor,
- RGLSecurityFeatureTypePhotoShape,
- RGLSecurityFeatureTypePhotoCorners
- Added new RGLAuthenticity enum members:
- RGLAuthenticityIRB900,
- RGLAuthenticityAxialProtection,
- RGLAuthenticityUVFibers,
- RGLAuthenticityIRVisibility,
- RGLAuthenticityOCRSecurityText,
- RGLAuthenticityPhotoEmbedType,
- RGLAuthenticityHolograms,
- RGLAuthenticityPhotoArea,
- RGLAuthenticityBarcodeFormatCheck.
- Available scenarios for document processing are presented as constants in the RGLExternalConstants file.
- Fixed logic of isCameraSessionIsPaused.
- Updated RGLPosition properties.
- Fixed generation of final results. Now RGLDocumentReaderTextField contains RGLDocumentReaderValue values from all pages of the read document for all RGLResultType result types.
Web Service API
- Starting from this release we are switching to new REST API. It is synchronous, has only one endpoint /process for actual data processing and /ping for health check. Results are delivered in JSON format only and schema did not change.
- We are introducing availability of the following web service delivery options:
- Windows installation package (x64),
- Cent OS7+ installation package (x64),
- Debian installation package (x64),
- Docker image of Debian package.
- Service has integrated demo webpage for functional tests and is available at / address.
- Added possibility to spawn multiple workers under one instance (Linux only). Number of workers should correspond with the obtained license.
- Logging of requests/responses into local folder implemented. Logs are saved in year/month/day/hour folder structure per transaction and named with transaction GUID.
- Added possibility to define which result types to return by providing list of required types in request “processParam.resultTypeOutput” array.
- Online documentation is available here.
Document Reader Application
- Live portrait capture from camera functionality is implemented. Once enabled in options and if there is a camera properly configured in the system, capture might start automatically, based on the settings, together with document scanning. Face is being tracked in the video stream automatically and best one is selected based on the quality parameters selected. If there is no face detected during timeout, there will be no live portrait result available for further matching.
- Added display of captured live portrait in Results panel together with Live portrait face vs document matching status. This status affects complete verification status if live portrait capture is enabled.
- Now using pkd.dat from RFID Reader SDK folder as embedded PKD source, instead of data.dat in previous versions.
- Added print report button on the Images tab toolbar.
- Added support of .gif images format (loading/saving/drag&drop)
- Added ability to configure output of the recognized MRZ into serial port. If Virtual COM port drivers are installed, settings will be automatically applied by installer.
- Template database identifier changed to the actual database name, that now can vary from default to other custom generated by us on request.
- Template database version is now having a different meaning. Now it corresponds to the repository version number it was compiled from. It is now sequential, and it is easier to compare.
- Template database updates are checked, downloaded, and applied based on the database identifier. This means if you are using database “Custom” of version 1, you will get update for the same “Custom” database with version 2, not the “Full” or any other version.
- Main window is now switched to maximized in Full Screen mode.
- Fixed issue with not saving value of “Image to show first” in Options -> Device.
- Fixed issue with always saving RFID log when “Send error reports” option is enabled.
COM API
- Added property AutoLiveCaptureOnScan to enable or disable automatic face capture process start together with document scanning. Enabled by default (boolean, read/write).
- Added property CheckStatusLiveComparison to return the result of facial comparison (live face vs document portrait). This property is relevant if DoLiveFaceComparison is set to true, otherwise returns Null (boolean, read only).
- Added property DatabaseInfo to return information about connected templates database in JSON format, including its version, type id, and contents stat. Should be used instead of deprecated DatabaseID property. Returns empty string if no database connected (string, read/write).
- Added property DepersonalizeLog to enable or disable personal data (e.g. MRZ data) referencing in the log file. If enabled, personal data is not included. Disabled by default (boolean, read/write).
- Added property DoLiveFaceCaptureInParallel to enable or disable live face capture process in parallel with optical scanning. This is useful for better compatibility with low-performance hardware. Enabled by default (boolean, read/write).
- Added property DoLiveFaceComparison to enable or disable live face capture and comparison of the obtained image with the document portrait using external camera. Disabled by default (boolean, read/write).
- Added property FaceAPICustomURL to set or return the URL of the face matching service. It should include the port and address (IP or DNS). This property is used when FaceAPIType is custom. Empty by default (string, read/write).
- Added property FaceAPIThreshold to set or return the threshold value used to determine the value of CheckStatusLiveComparison. 75 by default (integer, read/write).
- Added property FaceAPIType to set or return the location of the face matching service. It can be a locally installed service, Regula service on the Internet or custom customer service installed, for instance, on a local PC. By default, it is a Regula service on the Internet (integer, read/write).
- Added property LiveCameraFaceWidthThreshold to set or return the threshold value of face width relative to the camera frame width. This threshold is used to define whether a facial image is not too small and will be accepted for processing. 10% by default (integer, read/write).
- Added property LiveCameraIndex to set or return the index of the active camera in the system. 0 by default (integer, read/write).
- Added property LiveCameraResolution to set or return the camera resolution used to capture faces. By default, it is set to “480p”. Other options are “720p”, “1080p” (string, read/write).
- Added property LiveCameraRotation to set or return the rotation angle of the camera frame used for face capture. NONE by default. Other options are “CLOCKWISE”, “COUNTERCLOCKWISE” (string, read/write).
- Added property LiveCameraSaveFaces to enable or disable saving captured live face images used for face matching to the results folder. Disabled by default (boolean, read/write).
- Added property LiveCameraSaveVideo to enable or disable saving videos of capturing live face images used for face matching to the results folder. Disabled by default (boolean, read/write).
- Added property LiveCameraShowWindow to set or return whether to display video from the camera during the live face capture process in a separate interface window. Disabled by default (boolean, read/write).
- Added property LiveCameraSource to set or return the type of the camera used for face capture. It can be a web camera (0) or IP camera (1). Web camera (0) by default (integer, read/write).
- Added property LiveCameraUrl to set or return the URL for an IP camera. HTTP and RTSP are supported. This is relevant when LiveCameraSource is set to IP camera (1). Empty by default (string, read/write).
- Added property LiveCameraVideoQuality to set or return the quality of saved video which impacts the video file size. 100% (no compression) by default (integer, read/write).
- Added property RFIDUseSAM to enable or disable the optional integrated cryptomodule used for reading of Chinese internal IDs. Disabled by default (boolean, read/write).
- Added property SaveLiveCaptureToScanFolder to enable or disable saving of the photos and videos to the scan results folder. Enabled by default (boolean, read/write).
- Added event OnExtPortraitRequest that is raised each time immediately before portrait comparison is called to obtain external portrait photo for comparison (for example from external database).
- Added method AppendPortrait to manually add portrait image as in-memory byte array for face matching.
- Added method AppendPortraitFromFile to manually add portrait image from file for face matching.
- Added method AppendRFIDData to manually add previously saved RFID data as in-memory byte array for re-processing using DoProcessImages method.
- Added method AppendRFIDDataFromFile to manually add previously saved RFID data from file for re-processing using DoProcessImages method.
- Added method ComparePortraits to perform face matching process.
- Added method CustomProcess for internal use.
- Added method DoLiveFaceCapture to start the face capture process manually.
- Added method PKDAddResource to add a resource (certificate, master list, defect list, etc.) to PKD as in-memory byte array.
- Added method PKDAddResourceFromFile to add a resource (certificate, master list, defect list, etc.) to PKD from file by its name.
- Added method PKDClearPAStore to clear the part of PKD used for Passive Authentication.
- Added method PKDClearTAStore to clear the part of PKD used for Terminal Authentication.
- Added method PKDRefreshPAStore to refresh the part of PKD used for Passive Authentication.
- Added method PKDRefreshTAStore to refresh the part of PKD used for Terminal Authentication.
- Added method ShowPrintDialog to display Print parameters dialog.
- Fixed GetTextFieldByTypeAndSource method that was getting results only for one page in multipage scan.
- Enums updated.
- Documentation updated.
Installation packages
- All resources are now stored in resources.dat file, instead of having each resource file separately.
- Windows Desktop API:
- Introducing x64 version of desktop SDK in a separate installer package.
- Database package now contains db.dat file and is available in x86 and x64 flavors.
- Fixed issue with Certificates propagation service always disabled regardless of the selected setting.
- Most of the dlls removed from package due to switch to including all functionality in one monolith main SDK library.
- Separate feature for installation of 3rd party libraries introduced (support of 3rd party hardware).
- Separate option for installation of virtual COM ports introduced. If checked, necessary settings in RegulaReader.ini options file will be written.
-
Windows Service API:
- We are starting to deliver web service package with new interface only, old interface packages are available only on demand for legacy support.
- x64 and x86 versions of the service are available as installer packages.
-
Linux Service API:
- We are starting to deliver Linux version of service API in form of .deb and .rpm packages for manual installation into existing OS environment.
- Packages will be made available via dedicated hosted repositories similar to Maven or Docker have, so you may use package manager commands to install.
- We are also providing the service API fully packaged and ready to use as Docker image based on Ubuntu OS in our docker hub repository.
Licensing
- With this version we introduce availability of Regula Online Licensing Service, that is internally contacted by our Core SDK module for checking eligibility of the transaction and its registration. Licensing service logs every validation call into the database, including information about license token, scenario type, client IP, timestamp.
- There will be available different kinds of license: transaction based, and instance based.
- Transaction based license will force every transaction to be validated and tracked on licensing service.
- Instance based license will force validation only on registration of the SDK workers on their initialization, and sending heartbeat to the license service periodically, with no requests sent on transactions.
- Windows based service API instances may use offline license and online license with no restrictions.
- Linux based service API may use only online license.
- Mobile platforms now use only offline per-application/per-platform license. We are planning to introduce online licenses for mobile platform in future versions using licensing service like on Windows/Linux.
- Implemented licensing based on device serial number on Android.
PKD
- ICAO PKD master list version 146 included in RFID SDK component.
- BSI master list is no longer included due to its complete duplication of ICAO.
Database
- Database format has changed from data.dat Windows only file to cross platform db.dat file.
- Now same database file db.dat is used across all platforms.
- IMPORTANT! There will be no more automatic database updates available in previous format. To get updates when using previous SDK versions, you need to download and install database update msi/exe package manually.
- Database now can be of many variants, that we can create by custom definition of what it should contain, to optimize its size and improve edge devices performance. This approach was already in place for previous versions of mobile API, now becoming a standard for all SDK supported platforms. Bases on the request we may select what should be included:
- Only specific countries,
- Only specific document types,
- Only specific documents,
- Exclude any of the above from default database,
- Authenticity checks resources data,
- Chinese OCR data,
- Specific process instructions.
- Database variants may be created on demand, please contact our support with your request, and if we find it reasonable, we will implement it.
- Each database variant has its own unique text ID and is addressed by it.
- Once custom database is delivered, it will be supported and updated until further notice.
- All database variants are hosted by us and are available for automatic updates delivery on desktop and mobile platforms. For server platforms you need to reinstall the package with updated database or use newer version of docker image.
- Metadata with its ID, version, number of documents and countries, export date and description now included in database.
- Full revision of USA & CAN document templates was performed for better results quality and accuracy.
- RFID presence flag updated across all documents included in database.
- Updated document links to IRS databases.
- 246 countries and territories / 8678 documents included.
- 1106 new documents added.
- For details see Supported documents list.