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# Optical Mark Recognition .NET API and UI Control
- Steps to Develop 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# 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.
- 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 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.
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#.