Оптичне розпізнавання позначок (OMR) — це технологія, яка може використовуватися для читання та вилучення даних із зображень позначених форм. OMR зазвичай використовується в стандартизованих тестах, опитуваннях і бюлетенях, але його також можна використовувати в багатьох інших програмах, таких як оцінювання робіт студентів і відстеження інвентаризації. У цій публікації блогу ми покажемо вам, як створити та прочитати аркуш OMR зі штрих-кодом у C#.
Ця стаття охоплює такі теми:
- Створення та читання OMR за допомогою штрих-коду - C# API
- Створити аркуш OMR зі штрих-кодом
- Прочитати аркуш OMR зі штрих-кодом
- Безкоштовні навчальні ресурси
Створення та читання OMR за допомогою штрих-коду - C# API
Ми будемо використовувати Aspose.OMR for .NET API для створення та читання аркуша OMR зі штрих-кодом у C#. Це дозволяє розробникам швидко та легко створювати, відтворювати та розпізнавати заповнені вручну бланки відповідей, опитування, програми та подібні форми в програмах .NET.
Завантажте DLL API або встановіть його за допомогою NuGet.
PM> Install-Package Aspose.OMR
Створення аркуша OMR зі штрих-кодом у C#
Ми можемо легко створити файл шаблону OMR (.omr) і зображення аркуша, використовуючи просту текстову розмітку, виконавши наведені нижче дії.
- Створіть екземпляр класу OmrEngine.
- Після цього отримайте об’єкт GenerationResult, викликавши метод GenerateTemplate() із шляхом до текстового файлу як аргументом.
- Нарешті, викличте метод Save(), щоб зберегти створене зображення та файл шаблону .omr на локальному диску.
У наведеному нижче прикладі коду показано, як створити аркуш OMR зі штрих-кодом за допомогою C#.
// Каталог вхідних і вихідних файлів
string dataDir = "C:\\Files\\";
// Ініціалізація двигуна
OmrEngine engine = new OmrEngine();
GenerationResult res = engine.GenerateTemplate(Path.Combine(dataDir, "OMRTestWithBarcode.txt"));
// Перевірте на випадок помилок
if (res.ErrorCode != 0)
{
Console.WriteLine("ERROR: " + res.ErrorCode + ": " + res.ErrorMessage);
}
// Збережіть результат генерації: зображення та шаблон .omr
res.Save(dataDir, "OMRTestWithBarcode");
Ви можете додатково перевірити наступну просту текстову розмітку, яка використовується для створення шаблону OMR:
?barcode=AsposeWebsite
value=aspose.com
barcode_type=qr
qr_version=1
x=1900
y=250
height=360
?grid=ID
sections_count=8
#What is Aspose.OMR main function?
() OCR () Capture human-marked data
() There is no main function () Enhance images
#Can Aspose.OMR process not only scans, but also photos?
() Yes, indeed! () No
#Aspose.OMR is available on any platform, because it is:
() Cross-platform code () Cloud service
#Aspose.OMR works with any kind of OMR forms: tests, exams, questionnaires, surveys, etc.
() Yes, indeed! () No
?text= Answer sheet section
?answer_sheet=MainQuestions
elements_count=12
columns_count=4
?text=Sign________________________________
Читання аркуша OMR зі штрих-кодом у C#
Ми можемо виконувати операції OMR із заповненим сканованим зображенням аркуша OMR зі штрих-кодом і витягувати дані у файл CSV. Для цього нам знадобиться підготовлений шаблон OMR (.omr) і зображення (заповнені користувачем форми/аркуші). Будь ласка, виконайте наведені нижче кроки, щоб прочитати аркуш OMR зі штрих-кодом і отримати дані в CSV.
- Створіть екземпляр класу OmrEngine.
- Викличте метод GetTemplateProcessor() та ініціалізуйте об’єкт класу TemplateProcessor. Він приймає шлях до файлу шаблону OMR як аргумент.
- Отримайте об’єкт RecognitionResult, викликавши метод Recognize() із шляхом до зображення як аргументом.
- Після цього отримайте результати розпізнавання у вигляді рядків CSV за допомогою методу GetCsv().
- Нарешті, збережіть результат CSV як файл CSV на локальному диску.
У наведеному нижче прикладі коду показано, як читати та витягувати дані з аркуша OMR зі штрих-кодом у C#.
// Цей приклад коду демонструє, як виконувати OMR на зображенні та витягувати дані
// Шлях до файлу шаблону OMR
string TemplateName = @"OMRTestWithBarcode.omr";
string UserImage = @"OMRTestWithBarcode.png";
// Шлях до вхідного та вихідного файлів
string dataDir = "C:\\Files\\";
string templatePath = Path.Combine(dataDir, TemplateName);
// Ініціалізація OMR Engine
OmrEngine engine = new OmrEngine();
TemplateProcessor templateProcessor = engine.GetTemplateProcessor(templatePath);
Console.WriteLine("Template loaded.");
// Отримайте результати у CSV
string imagePath = Path.Combine(dataDir, UserImage);
string csvResult = templateProcessor.Recognize(imagePath).GetCsv();
// Зберегти файл CSV
File.WriteAllText(Path.Combine(dataDir, Path.GetFileNameWithoutExtension(UserImage) + ".csv"), csvResult);
Console.WriteLine("Result exported. Path: " + Path.Combine(dataDir, Path.GetFileNameWithoutExtension(UserImage) + ".csv"));
Console.WriteLine(csvResult);
Отримайте безкоштовну ліцензію
Ви можете отримати безкоштовну тимчасову ліцензію, щоб спробувати бібліотеку без оціночних обмежень.
Aspose.OMR for .NET – навчальні ресурси
Окрім вилучення даних OMR із зображень, ви можете дізнатися більше про Aspose.OMR та дослідити інші функції бібліотеки, використовуючи ресурси нижче:
Висновок
У цій статті ми навчилися створювати та читати аркуш OMR зі штрих-кодом у C#. Ми також бачили, як видобувати та зберігати дані OMR у форматі CSV. Дотримуючись кроків, описаних у цій статті, ви можете використовувати Aspose.OMR і розробляти власні програми OMR. У разі будь-яких неясностей зв’яжіться з нами на нашому безкоштовному форумі підтримки.