Aspose.OMR  Make OMR Exam ISEE Form


Creating and reading machine-readable ISEE sheets

Machine-readable ISEE sheet

The Independent School Entrance Examination (ISEE) is an entrance exam for students in grades 2-12. It is the most trusted entry grade and is accepted by over 1200 independent schools worldwide. Students can take the ISEE once per "test season" – Fall, Winter and Spring/Summer - up to three times in total per school year. If a student takes the exam in September during the fall testing season, they will need to wait until at least December, the winter testing season, to take the ISEE again. Depending on your location and preference, the test may be available either electronically or in pen-and-paper format.

ISEE Lower Level Exam is given to students applying for entrance to fifth or sixth grade. The exam consists of an essay and 4 question sections:

Section | Questions | Duration -- | -- |-- Verbal Reasoning | 34 | 20 mins Quantitative Reasoning | 38 | 35 mins Reading Comprehension | 25 | 25 mins Mathematics Achievement | 30 | 30 mins

ISEE Middle Level Exam is taken by students applying for admission to the seventh or eighth grade, and the Upper Level exam is taken by students applying for admission to the ninth, tenth, eleventh or twelfth grade. Both exams contain the same number of questions:

Section | Questions | Duration -- | -- |-- Verbal Reasoning | 40 | 20 mins Quantitative Reasoning | 37 | 35 mins Reading Comprehension | 36 | 25 mins Mathematics Achievement | 47 | 30 mins

For Lower, Middle, and Upper Level ISEE exams, test questions are provided as a test booklet. Responses are provided as a separate answer sheet with bubbles corresponding to each answer option. Participants answer the questions by filling in the bubbles corresponding to the correct answers with a ballpoint pen or a pencil.

Manual scoring of more than 120 filled bubbles in a completed ISEE answer sheet is extremely time-consuming and error-prone process. This time is much better to be devoted to coaching and practice. This is where Optical Mark Recognition (OMR) technology comes to the rescue. It allows for automatically processing dozens of manually filled forms in seconds. However, this usually requires specialized scoring devices that are not affordable for individual tutors and small / medium training courses. Aspose offers a ready-to-go solution for you.

Aspose.OMR is a powerful API for reading multiple-choice paper test. It turns a computer or smartphone into an optical reader / scoring machine for creating and grading any answer sheet, survey, or other standardized form. You do not even need a scanner – simply take a photo of a completed exam sheet in class and instantly get a result that can be automatically graded or imported into a database. The Aspose.OMR API is extremely simple, versatile, and cost effective—you only need minimal programming skills and a free IDE like Visual Studio Community Edition to use it.

As with all tests, there is no "fixed" form in ISEE that can be easily remembered. Thus, during practice or training courses, it is very important to ensure that aspirants capture concepts and ideas rather than some fixed pattern. Aspose.OMR will help you set up exam forms and get results quickly without wasting a lot of time that could be spent on the educational process. The sample form below shows how to use Aspose.OMR to design and create an ISEE answer sheet for taking an exam in schools and coaching centers.

You can completely customize the ISEE form by changing the sources above and re-generating the answer sheet for your preferred paper type. You can change the number and order of questions and even create subject-specific forms that are perfectly tailored to your educational process.

To add it to your project, you just need to install the Aspose.OMR NuGet package in your project with the following command:

  PM> Install-Package Aspose.OMR


Follow the guidelines below on generating, reading and customizing machine-readable ISEE answer sheets.

Filling out ISEE answer sheet

It is desirable to take the ISEE practice under the same conditions as the official test. Candidates should follow precise instructions during the training tests to familiarize themselves with the actual test expectations:

  • The test takes 2 hours 10 minutes with two breaks of 5-10 minutes each.
  • Only one bubble should be filled per question.
  • The bubble’s circle must be completely filled with a pencil.
  • Avoid any stray marks, especially those that cross the bubbles or a barcode.
  • You are allowed to erase the mark in order to correct the answer. Do it as completely as possible.
  • Once the examination ends, students are required to submit the answer sheets regardless of the number of answered questions.

Customizing ISEE answer sheet

While ISEE test has a fixed number of questions and predefined categories, you are not limited to this structure. For training and practice purposes, each form can be adjusted, so the student not only remember the correct answers, but catch important ideas in the long run. With Aspose.OMR, you can easily modify the answer sheet to focus on certain areas of the test.

The customize the ISEE from:

  • Open the ISEE form’s source code (ISEE.txt) with any plain text editor.
  • Change the source code according to the [guidelines.](
  • Customize the paper size, bubble color, font, and other [global page settings.](

Once done, run the following code to [generate]( a printable template for the SAT form:

Build OMR ISEE Sheet Form with Aspose OMR engine

    Aspose.OMR.Api.OmrEngine omrEngine = new Aspose.OMR.Api.OmrEngine();
    Aspose.OMR.Generation.GlobalPageSettings globalPageSettings = new Aspose.OMR.Generation.GlobalPageSettings() {
	    PaperSize = Aspose.OMR.Generation.PaperSize.Letter,
	    BubbleColor = Aspose.OMR.Generation.Color.Red
    Aspose.OMR.Generation.GenerationResult generationResult = omrEngine.GenerateTemplate("ISEE.txt", globalPageSettings);
    generationResult.Save("target-folder", "template");

You get the template.png file in the target folder that you can print on a regular laser printer and handle the papers to your students. You will also get the file with .OMR extension. Do not remove it – it will be needed during recognition.

Recognizing the completed ISEE sheet

To recognize a hand-filled ISEE sheet, digitize it in one of the [supported formats]( There is no need for expensive hardware reader, such as Scantron. For best results, a basic office scanner or multifunction copier will suffice. If you do not have a scanner, you can simply take a picture of the form with any modern smartphone and upload the photo to your computer.

To read the student-completed ISEE sheet, use the following code:

Recognize OMR ISEE student-filled exam sheet with Aspose OMR library

    Aspose.OMR.Api.OmrEngine omrEngine = new Aspose.OMR.Api.OmrEngine();
    // Load the recognition pattern for ISEE sheet template
    Aspose.OMR.Api.TemplateProcessor recognitionEngine = omrEngine.GetTemplateProcessor("template.omr");
    Aspose.OMR.Model.RecognitionResult recognitionResult = recognitionEngine.RecognizeImage("scanned-sheets/mary-sue.png");
    string result = recognitionResult.GetCsv();

template.omr is so-called recognition pattern – a special file that is used to produce highly accurate results with the Aspose.OMR recognition engine. It is generated alongside the printable ISEE form, make sure you do not delete or replace that file.


  • Generate ready-to-print machine-readable ISEE form of any design and layout using a flexible markup language
  • Process dozens of completed ISEE answer sheets per minute.
  • Superior recognition accuracy that can be further adjusted for perfect results even in difficult conditions.
  • No need for expensive OMR scanners. Use your existing office copier or even a smartphone camera instead of an expensive Scantron device.
  • Personalize the forms with student’s contact information, QR codes, barcodes and images.
  • Support for all popular paper sizes as well as a number of non-standard ones.
  • Read the completed ISEE form into JSON, XML or CSV formats, which can be programmatically analyzed, scored and imported into any relational or NoSQL database.