compile(group: 'com.aspose', name: 'aspose-omr-cloud', version: '18.8.0')
<dependency org="com.aspose" name="aspose-omr-cloud" rev="18.8.0">
    <artifact name="aspose-omr-cloud" ext="jar"/>
libraryDependencies += "com.aspose" % "aspose-omr-cloud" % "18.8.0"

Java REST API for OMR Processing in the Cloud


Product Page | Documentation | Live Demo | Swagger UI | Code Samples | Blog | Free Support | Free Trial

Aspose.OMR Cloud SDK for Java is a wrapper around Aspose.OMR Cloud APIs. This SDK enables your Java Apps to perform optical mark recognition (OMR) operations on questionnaires, exams, MCQs, surveys, and other OMR sheets.

You can define your own templates and rules, detect the required data from the OMR digital sheets, perform grading of the extracted data and export it to the CSV format. No need to install any 3rd party software.

Mark-up for the template generation supports several types of elements, such as, text, choice-box (question), multi-column answer sheet, grid, images, QR-code and Aruco code types of barcodes.

OMR Cloud Processing Features

  • Perform recognition of scanned photos and images for OMR operations.
  • Ability to perform OMR on rotated & perspective (within 25 deg) photos.
  • Extract & recognize human-marked data from scanned tests, exams, surveys, etc.
  • Supports the export of OMR results to CSV file format.
  • Use textual markup to generate OMR templates, generate surveys, and test sheets.
  • Availability of GUI application for managing OMR templates.
  • Specify the number of OMR based questions & answers in the template.
  • Availability of GUI OMR editor as a cloud client.
  • Provide JSON rules to perform OMR answer grading.
  • Clip an area of interest from an image, save it as JPEG & perform OMR on it.
  • Perform highly accurate optical mark recognition (OMR).
  • Supports several configuration presets for image preprocessing.

OMR Cloud Storage Features

  • Upload, download, copy, move and delete files, including versions handling (if you are using Cloud storage that supports this feature - true by default).
  • Create, copy, move and delete folders.
  • Copy and move files and folders accross separate storages in scope of a single operation.
  • Check if certain file, folder or storage exists.

Save OMR As


Read OMR Formats



Building the API client library requires:

  1. Java 1.7+
  2. Maven


To use Aspose.OMR Cloud SDK for Java you need to register an account with Aspose Cloud and lookup/create Client ID and Client Secret at Cloud Dashboard. There is free quota available. For more details, see Aspose Cloud Pricing.


Install from Maven

Add Aspose Cloud repository to your application pom.xml

    <name>Aspose Cloud Repository</name>

Install from source

To install the API client library to your local Maven repository, simply execute:

mvn clean install

To deploy it to a remote Maven repository instead, configure the settings of the repository and execute:

mvn clean deploy

Refer to the OSSRH Guide for more information.

Maven users

Add this dependency to your project’s POM:



At first generate the JAR by executing:

mvn clean package

Then manually install the following JARs:

  • target/aspose-omr-cloud-18.8.0.jar
  • target/lib/*.jar


OMRFunctionParam param = new OMRFunctionParam();

String packedTemplate = PackTemplate(templateFile.getFileName().toString(), Files.readAllBytes(templateFile));

UploadFile(imageFile, "");

return api.postRunOmrTask(imageFile.getFileName().toString(), "CorrectTemplate", param, null, null);


All Aspose.OMR Cloud SDKs, helper scripts and templates are licensed under MIT License.

Authorization & Authentication

Authentication schemes defined for the API is as follows:



It’s recommended to create an instance of ApiClient per thread in a multithreaded environment to avoid any potential issues.

Product Page | Documentation | Live Demo | Swagger UI | Code Samples | Blog | Free Support | Free Trial

VersionRelease Date
23.02.0February 13, 2023
18.8.0September 12, 2018