Optické rozpoznávání značek (OMR) je technologie, kterou lze použít ke čtení a extrahování dat z obrázků označených formulářů. OMR se běžně používá ve standardizovaných testech, průzkumech a hlasováních, ale lze jej použít také v řadě dalších aplikací, jako je hodnocení práce studentů a sledování inventáře. V tomto příspěvku na blogu vám ukážeme, jak vytvořit a přečíst list OMR s čárovým kódem v C#.
Tento článek se zabývá následujícími tématy:
- Vytvoření a čtení OMR s čárovým kódem - C# API
- Vytvořit list OMR s čárovým kódem
- Přečtěte si list OMR s čárovým kódem
- Bezplatné výukové zdroje
Vytvářejte a čtěte OMR s čárovým kódem - C# API
K vytvoření a čtení listu OMR s čárovým kódem v C# použijeme Apose.OMR for .NET API. Umožňuje vývojářům rychle a snadno navrhovat, vykreslovat a rozpoznávat ručně vyplněné odpovědní listy, průzkumy, aplikace a podobné formuláře v aplikacích .NET.
Prosím stáhněte si DLL API nebo jej nainstalujte pomocí NuGet.
PM> Install-Package Aspose.OMR
Vytvořte OMR list s čárovým kódem v C#
Můžeme snadno vytvořit soubor šablony OMR (.omr) a obrázek listu pomocí jednoduchého textového označení podle následujících kroků:
- Vytvořte instanci třídy OmrEngine.
- Poté získejte objekt GenerationResult voláním metody GenerateTemplate() s cestou k textovému souboru jako argumentem.
- Nakonec zavolejte metodu Save() a uložte vygenerovaný obrázek a soubor šablony .omr na místní disk.
Následující ukázka kódu ukazuje, jak vytvořit list OMR s čárovým kódem pomocí C#.
// Adresář vstupních a výstupních souborů
string dataDir = "C:\\Files\\";
// Inicializujte motor
OmrEngine engine = new OmrEngine();
GenerationResult res = engine.GenerateTemplate(Path.Combine(dataDir, "OMRTestWithBarcode.txt"));
// Zkontrolujte v případě chyb
if (res.ErrorCode != 0)
{
Console.WriteLine("ERROR: " + res.ErrorCode + ": " + res.ErrorMessage);
}
// Uložit výsledek generování: obrázek a šablonu .omr
res.Save(dataDir, "OMRTestWithBarcode");
Dále můžete zkontrolovat následující jednoduché textové označení, které se používá k vytvoření šablony 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________________________________
Přečtěte si list OMR s čárovým kódem v C#
Můžeme provádět operace OMR na vyplněném naskenovaném obrázku listu OMR s čárovým kódem a extrahovat data do souboru CSV. K tomuto účelu potřebujeme připravenou šablonu OMR (.omr) a obrázek (uživatelsky vyplněné formuláře/listy). Chcete-li si přečíst list OMR s čárovým kódem a extrahovat data ve formátu CSV, postupujte podle následujících kroků.
- Vytvořte instanci třídy OmrEngine.
- Zavolejte metodu GetTemplateProcessor() a inicializujte objekt třídy TemplateProcessor. Jako argument bere cestu k souboru šablony OMR.
- Získejte objekt RecognitionResult voláním metody Recognize() s cestou obrázku jako argumentem.
- Poté získejte výsledky rozpoznávání jako řetězce CSV pomocí metody GetCsv().
- Nakonec uložte výsledek CSV jako soubor CSV na místní disk.
Následující ukázka kódu ukazuje, jak číst a extrahovat data z listu OMR s čárovým kódem v C#.
// Tento příklad kódu ukazuje, jak provést OMR na obrázku a extrahovat data
// Cesta k souboru šablony OMR
string TemplateName = @"OMRTestWithBarcode.omr";
string UserImage = @"OMRTestWithBarcode.png";
// Cesta k vstupním a výstupním souborům
string dataDir = "C:\\Files\\";
string templatePath = Path.Combine(dataDir, TemplateName);
// Inicializujte OMR Engine
OmrEngine engine = new OmrEngine();
TemplateProcessor templateProcessor = engine.GetTemplateProcessor(templatePath);
Console.WriteLine("Template loaded.");
// Získejte výsledky ve formátu CSV
string imagePath = Path.Combine(dataDir, UserImage);
string csvResult = templateProcessor.Recognize(imagePath).GetCsv();
// Uložit soubor 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);
Získejte bezplatnou licenci
Můžete získat bezplatnou dočasnou licenci a vyzkoušet knihovnu bez omezení hodnocení.
Aspose.OMR for .NET – výukové zdroje
Kromě extrahování dat OMR z obrázků se můžete dozvědět více o Aspose.OMR a prozkoumat další funkce knihovny pomocí zdrojů níže:
Závěr
V tomto článku jsme se naučili, jak vytvořit a číst OMR list s čárovým kódem v C#. Také jsme viděli, jak extrahovat a uložit data OMR ve formátu CSV. Podle kroků uvedených v tomto článku můžete využít Aspose.OMR a vyvinout své vlastní aplikace OMR. V případě jakýchkoliv nejasností nás neváhejte kontaktovat na našem bezplatném fóru podpory.