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:
- Features of C# Optical Mark Recognition (OMR) Software
- C# OMR .NET API and UI Control
- Steps to Develop C# OMR Software
- C# Optical Mark Recognition (OMR) Software Demo
- Download OMR Software Source Code
Features of C# Optical Mark Recognition (OMR) Software
Our Optical Mark Recognition (OMR) Software will have the following features:
- Interactively adjust recognition parameters and watch their effect in real-time. We can adjust the following:
- Recognition threshold
- Show/hide bubbles
- Select and load the scanned image in the following formats:
- Recognize the optical marks on the image.
- Export results in CSV and save them to your local disk.
C# OMR .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 C# 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.
- Next, in Configure your new project dialog, enter the Project name, choose the Location, and set other parameters.
- Then, open NuGet Package Manager and install Aspose.OMR for .NET package.
- Next, add a new file DialogHelper.cs to the project.
- 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.
Download C# .NET OMR Software Source Code
You can download the complete source code of the C# OMR Scanner application from GitHub.
Get a Free License
You can get a free temporary license to try the library without evaluation limitations.
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#.