Sample applications

The source code comes with #4 sample applications: Benchmark, VideoRecognizer, Parser and Validation. All sample applications are open source and don’t require registration or license key.

The source code is at


This application should be used as reference implementation by any developer trying to add ultimateMRZ to their products. It shows how to detect and recognize MRZ lines at realtime using live video stream from the camera.

VideoRecognizer running on Android

VideoRecognizer running on Android


This application is used to check everything is ok and running as fast as expected. The information about the maximum frame rate (50fps on iPhone7 and 114fps on core i7) could be checked using this application.


This is a C++ sample application using regular expressions to extract the MRZ fields. If you want to extract the expiry date, document number, holder’s name or birth date then, this is the right application. See next sections about the regular expressions used to parse the MRZ lines.

More info about the parser could be found here.


MRZ lines contains check digits to validate the field. This C++ sample application shows how to validate the MRZ fields to make sure the OCR result from the recognizer is valid. Using the confidence score and validation process allows reaching 100% accuracy.

See validation section about the validation process and how to use it with different languages.

Trying the samples


To try the sample applications on Android:
  1. Open Android Studio and select “Open an existing Android Studio project”

    Open an existing Android Studio project
  2. Navigate to “<ultimateMRZ-SDK>/samples”, select “android” folder and click “Open”

    Select project
  3. Select the sample you want to try (e.g. “videorecognize”), the device (e.g. “samsung SM-G975F”) and press “run”.

    Select sample


To try the sample applications on iOS just open the corresponding Xcode project. For example, the Xcode project for the VideoRecognizer sample is at

Raspberry Pi, Windows, Linux and Others

For Raspberry Pi and other Linux systems you need to build the sample applications from source. More info at