OMR Scanner Software using C#.NET

Optical Mark Recognition (OMR) is an automated process of capturing and analyzing data marked on a special type of document form. This special type of document could be marked/ filled by people on survey forms, test sheets, and other paper documents. In this article, we will learn how to develop a GUI-based OMR Sheet Reader application using C#. Our solution will take the scanned OMR sheet image as input from a local disk, then recognize the marks and finally export the marked registration number and shaded answers in CSV format. After following the mentioned steps, we will have our C# Optical Mark Recognition (OMR) Software in .NET. So let’s begin.

The article shall cover the following topics:

  1. Features of C# Optical Mark Recognition (OMR) Software
  2. C# Optical Mark Recognition .NET API and UI Control
  3. Steps to Develop OMR Software
  4. C# Optical Mark Recognition (OMR) Software Demo
  5. Download OMR Software Source Code

Features of C# Optical Mark Recognition (OMR) Software

Our Optical Mark Recognition (OMR) Software will have the following features:

  1. Interactively adjust recognition parameters and watch their effect in real-time. We can adjust the following:
    • Recognition threshold
    • Zoom
    • Show/hide bubbles
  2. Select and load the scanned image in the following formats:
  3. Recognize the optical marks on the image.
  4. Export results in CSV and save them to your local disk.

C# Optical Mark Recognition .NET API and UI Control

Aspose.OMR for .NET API allows designing, creating, and recognizing answer sheets, tests, MCQ papers, quizzes, feedback forms, surveys, and ballots. Moreover, it provides a graphical user interface control that can be added to .NET UI applications. We will integrate Aspose.OMR for .NET UI control in the .NET UI application for developing an OMR scanner/reader application. Please either download the DLL of the API or install it using NuGet.

PM> Install-Package Aspose.OMR

Steps to Develop OMR Software

We can develop a GUI-based OMR scanner/reader application by following the steps given below:

  • Firstly, create a new project and select the WPF App (.NET Framework) project template.
Create a new project and select the project template.

Create a new project and select the project template.

  • Next, in Configure your new project dialog, enter the Project name, choose the Location, and set other parameters.
Configure your WPF App Project

Configure your WPF App Project

  • Then, open NuGet Package Manager and install Aspose.OMR for .NET package.
Install Aspose.OMR for .NET

Install Aspose.OMR for .NET

  • Next, add a new file DialogHelper.cs to the project.
Add DialogHelper class

Add DialogHelper.cs

  • Add the following code to the newly created DialogHelper.cs.
  • Next, update MainWindow.xaml file with the following XAML content.
  • After that, replace the following content in MainWindow.xaml.cs file.
  • Finally, run the application.

C# Optical Mark Recognition (OMR) Software Demo

The following is the demonstration of the OMR Scanner/Reader application we have just created.

C# OMR Software Demo

OMR Software Demo

Download OMR Software Source Code

You can download the complete source code of the OMR Scanner application from GitHub.

Get a Free License

You can get a free temporary license to try the library without evaluation limitations.

Conclusion

In this article, we have learned how to

  • integrate Aspose.OMR for .NET UI control in the .NET application;
  • develop OMR sheet reader application in C#.

Besides, you can learn more about Aspose.OMR for .NET API using the documentation. In case of any ambiguity, please feel free to contact us on our forum.

See Also