Creating Sample Bubble sheet

I created a sample bubble sheet omr template but i am unable to see the elements. Is my template correct or not?bubbleSheet1.png (1.2 KB)

Also in your URL Aspose.OCR for .NET|Documentation
it is having yellow background and also elements. Will mine work correctly?

@sunilkk1985,

The image you have shared is an example of OMR sheet. It is not OMR template. You need to supply this image to Aspose.OMR template editor tool to create OMR template. OMR template editor tool can be found on Aspose.OMR installation path “…\Bin\net3.5\Aspose.Omr.TemplateEditor.exe”. Once you have the template editor tool, go through the link Creating and Saving Templates for details.

Furthermore screenshot that you are talking about does not have any colored background. In fact it is Grid element placed on the OMR are sheet.

thanks for the information. I tried to process the result but in the statement
OmrProcessingResult result = engine.ExtractData(new OmrImage[] { image });

i go the result count as zero and not processed. attached are the amr and jpg files used to process. Also do I need to use the amr file with or without header to process. Out of the images i attached which one should i use?ForOMR.zip (74.8 KB)

@sunilkk1985,

The sample input OMR image that you are using is not correct. The choice bubbles are not properly aligned. API will not extract correct information. We have build an example for you and the same is attached for your reference. The attached ZIP file contains OMR template and OMR scanned sheet image. Code snippet given below is used to extract information from OMR template and image to be analyzed.

CODE:

        //Load template file
        OmrTemplate template = OmrTemplate.Load(@"166657_template.amr");

        //Load the image to be analyzed
        OmrImage image = OmrImage.Load(@"sample_input.jpg");

        // Instantiate the recognition engine for the template
        OmrEngine engine = new OmrEngine(template);

        //engine.Configuration.FillThreshold = 0.1;


        // Extract data. This template has only one page.
        OmrProcessingResult result = engine.ExtractData(new OmrImage[] { image });

        //Load actual result from
        Hashtable OmrResult = result.PageData[0];

        //Get Collection of Keys
        ICollection key = OmrResult.Keys;

        foreach (string k in key)
        {
            Console.WriteLine(k + ": " + OmrResult[k]);
        }

sample_input.zip (92.6 KB)