Вы можете распознавать определенные метки на изображениях, выполняя операции оптического распознавания меток. Например, вы можете распознавать пузыри, заполненные для анкеты, опроса или экзамена в форме вопросов с несколькими вариантами ответов. Дополнительные сведения см. в следующих разделах:
- Распознавание оптических меток — установка C# API
- Распознайте изображение из MemoryStream с помощью OMR в C#
- Пакетная обработка изображений для распознавания с помощью OMR с использованием C#
Распознавание оптических меток — установка C# API
Вы можете настроить API Aspose.OMR для .NET в своих приложениях C#, загрузив DLL из разделов Загрузки или через галерею NuGet с помощью следующей команды установки:
PM> Install-Package Aspose.OMR
Распознайте изображение из MemoryStream с помощью OMR в C#
Иногда изображения хранятся в базе данных или каком-либо удаленном ресурсе, и вы можете загрузить эти файлы в MemoryStream. Точно так же может быть много сценариев, в которых сохранение изображения на диске и последующая загрузка его для обработки могут быть накладными расходами. Таким образом, вы можете удобно загружать изображение в поток и выполнять над ним операции OMR. Ниже приведены шаги для распознавания изображения из MemoryStream:
- Получить шаблон для распознавания.
- Инициализировать объект класса OmrEngine.
- Распознайте изображение в MemoryStream с помощью метода RecognizeImage.
- Сохраните выходной файл с экземпляром класса RecognitionResult.
В следующем коде показано, как распознать изображение из MemoryStream с помощью OMR на C#:
// Получить шаблон для распознавания
string templatePath = "Sheet.omr";
// Получить изображение для распознавания
string imagePath = "Sheet1.JPG";
// Инициализировать объект класса OmrEngine
OmrEngine engine = new OmrEngine();
// Установить шаблон для распознавания
TemplateProcessor templateProcessor = engine.GetTemplateProcessor(templatePath);
using (Image image = Image.FromFile(imagePath))
{
using (MemoryStream ms = new MemoryStream())
{
image.Save(ms, image.RawFormat);
ms.Flush();
// Распознать изображение
Aspose.OMR.Model.RecognitionResult result = templateProcessor.RecognizeImage(ms);
var stringRes = result.GetCsv();
File.WriteAllText(Path.GetFileNameWithoutExtension(imagePath) + ".csv", stringRes);
}
}
Пакетная обработка изображений для распознавания с помощью OMR с использованием C#
Вы можете обрабатывать пакет изображений в папке и распознавать метки с помощью оптического распознавания меток. Для распознавания пакета изображений выполните следующие действия:
- Получите шаблон OMR для распознавания.
- Получите RecognitionResult всех изображений, используя метод RecognizeFolder.
- Сохраните вывод в виде CSV-файла.
В приведенном ниже коде объясняется, как программно обработать пакет изображений для распознавания оптических меток с помощью C#:
// Получить шаблон для распознавания
string templatePath = "Sheet.omr";
// Получить папку содержит изображения для распознавания
string folderPath = "D:\images\";
OmrEngine engine = new OmrEngine();
// Установить шаблон для распознавания
TemplateProcessor templateProcessor = engine.GetTemplateProcessor(templatePath);
// Распознавать изображения из папки
Aspose.OMR.Model.RecognitionResult[] result = templateProcessor.RecognizeFolder(folderPath);
for (int i = 0; i < result.Length; i++)
{
var stringRes = result[i].GetCsv();
File.WriteAllText(folderPath + (i+1) + ".csv", stringRes);
}
Получить бесплатную лицензию API
Вы можете оценить API без каких-либо ограничений, запросив Бесплатную временную лицензию.
Вывод
В этой статье вы узнали, как распознать изображение из MemoryStream с помощью OMR на C#. Также обсуждается распознавание всех изображений в папке и сохранение выходного результата в формате CSV, значениях, разделенных запятыми, в файлах. Кроме того, вы можете ознакомиться с другими функциями API, посетив Документацию. Вы всегда можете связаться с нами на Форум бесплатной поддержки по любым вопросам.