Utwórz arkusz OMR z kodem kreskowym w języku C# | Przeczytaj kod kreskowy OMR C#

Optyczne rozpoznawanie znaków (OMR) to technologia, którą można wykorzystać do odczytu i wyodrębnienia danych z obrazów oznaczonych formularzy. OMR jest powszechnie stosowany w standardowych testach, ankietach i głosowaniach, ale można go również używać w wielu innych zastosowaniach, takich jak ocenianie prac uczniów i śledzenie zasobów. W tym wpisie na blogu pokażemy jak utworzyć i odczytać arkusz OMR z kodem kreskowym w języku C#.

W tym artykule omówiono następujące tematy:

  1. Utwórz i odczytaj OMR za pomocą kodu kreskowego - C# API
  2. Utwórz arkusz OMR z kodem kreskowym
  3. Przeczytaj arkusz OMR z kodem kreskowym
  4. Darmowe zasoby edukacyjne

Twórz i czytaj OMR za pomocą kodu kreskowego - API C#

Wykorzystamy Aspose.OMR for .NET API do utworzenia i odczytania arkusza OMR z kodem kreskowym w języku C#. Umożliwia programistom szybkie i łatwe projektowanie, renderowanie i rozpoznawanie ręcznie wypełnianych arkuszy odpowiedzi, ankiet, aplikacji i podobnych formularzy w aplikacjach .NET.

Proszę pobierz bibliotekę DLL interfejsu API lub zainstaluj ją za pomocą NuGet.

PM> Install-Package Aspose.OMR

Utwórz arkusz OMR z kodem kreskowym w C#

Możemy łatwo utworzyć plik szablonu OMR (.omr) i obraz arkusza za pomocą prostych znaczników tekstowych, wykonując poniższe kroki:

  1. Utwórz instancję klasy OmrEngine.
  2. Następnie pobierz obiekt GenerationResult, wywołując metodę GenerateTemplate() podając jako argument ścieżkę do pliku tekstowego.
  3. Na koniec wywołaj metodę Save(), aby zapisać wygenerowany obraz i plik szablonu .omr na dysku lokalnym.

Poniższy przykładowy kod pokazuje, jak utworzyć arkusz OMR z kodem kreskowym przy użyciu języka C#.

// Katalog plików wejściowych i wyjściowych
string dataDir = "C:\\Files\\";

// Zainicjuj silnik
OmrEngine engine = new OmrEngine();

GenerationResult res = engine.GenerateTemplate(Path.Combine(dataDir, "OMRTestWithBarcode.txt"));

// Sprawdź w przypadku błędów
if (res.ErrorCode != 0)
{
    Console.WriteLine("ERROR: " + res.ErrorCode + ": " + res.ErrorMessage);
}

// Zapisz wynik generacji: obraz i szablon .omr
res.Save(dataDir, "OMRTestWithBarcode");
Utwórz arkusz OMR z kodem kreskowym w C#

Utwórz arkusz OMR z kodem kreskowym w języku C#.

Możesz dodatkowo sprawdzić następujący prosty znacznik tekstowy używany do tworzenia szablonu 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________________________________

Proszę pobierz wygenerowany szablon OMR tutaj.

Przeczytaj arkusz OMR z kodem kreskowym w C#

Operacje OMR możemy wykonać na wypełnionym zeskanowanym obrazie arkusza OMR z kodem kreskowym i wyodrębnić dane w pliku CSV. W tym celu potrzebujemy przygotowanego szablonu OMR (.omr) oraz obrazu (formularze/arkusze wypełniane przez użytkownika). Aby odczytać arkusz OMR z kodem kreskowym i wyodrębnić dane w formacie CSV, wykonaj poniższe czynności.

  1. Utwórz instancję klasy OmrEngine.
  2. Wywołaj metodę GetTemplateProcessor() i zainicjuj obiekt klasy TemplateProcessor. Jako argument przyjmuje ścieżkę pliku szablonu OMR.
  3. Pobierz obiekt RecognitionResult, wywołując metodę Recognize() ze ścieżką obrazu jako argumentem.
  4. Następnie uzyskaj wyniki rozpoznawania w postaci ciągów CSV za pomocą metody GetCsv().
  5. Na koniec zapisz wynik CSV jako plik CSV na dysku lokalnym.

Poniższy przykładowy kod pokazuje, jak odczytać i wyodrębnić dane z arkusza OMR z kodem kreskowym w języku C#.

// Ten przykład kodu demonstruje, jak wykonać OMR na obrazie i wyodrębnić dane
// Ścieżka pliku szablonu OMR
string TemplateName = @"OMRTestWithBarcode.omr";
string UserImage = @"OMRTestWithBarcode.png";

// Ścieżka plików wejściowych i wyjściowych
string dataDir = "C:\\Files\\";
string templatePath = Path.Combine(dataDir, TemplateName);

// Zainicjuj silnik OMR
OmrEngine engine = new OmrEngine();
TemplateProcessor templateProcessor = engine.GetTemplateProcessor(templatePath);
Console.WriteLine("Template loaded.");

// Uzyskaj wyniki w formacie CSV
string imagePath = Path.Combine(dataDir, UserImage);
string csvResult = templateProcessor.Recognize(imagePath).GetCsv();

// Zapisz plik 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);
Przeczytaj arkusz OMR z kodem kreskowym w C#

Przeczytaj arkusz OMR z kodem kreskowym w języku C#.

Zdobądź bezpłatną licencję

Możesz uzyskać bezpłatną licencję tymczasową, aby wypróbować bibliotekę bez ograniczeń ewaluacyjnych.

Aspose.OMR for .NET – zasoby edukacyjne

Oprócz wyodrębniania danych OMR z obrazów, możesz dowiedzieć się więcej o Aspose.OMR i poznać inne funkcje biblioteki, korzystając z poniższych zasobów:

Wniosek

W tym artykule dowiedzieliśmy się, jak utworzyć i odczytać arkusz OMR z kodem kreskowym w języku C#. Widzieliśmy również, jak wyodrębnić i zapisać dane OMR w formacie CSV. Wykonując kroki opisane w tym artykule, możesz wykorzystać Aspose.OMR i opracować własne aplikacje OMR. W przypadku jakichkolwiek niejasności prosimy o kontakt na naszym bezpłatnym forum pomocy technicznej.

Zobacz też