Możesz rozpoznać określone znaki na obrazach, wykonując operacje optycznego rozpoznawania znaków. Na przykład możesz rozpoznać bąbelki wypełnione w kwestionariuszu, ankiecie lub egzaminie w formie pytań wielokrotnego wyboru. Więcej informacji można znaleźć w następujących sekcjach:
- Rozpoznawanie znaków optycznych — instalacja interfejsu API języka C#
- Rozpoznaj obraz z MemoryStream przy użyciu OMR w C#
- Przetwarzanie wsadowe obrazów w celu rozpoznania za pomocą OMR przy użyciu języka C#
Rozpoznawanie znaków optycznych — instalacja interfejsu API języka C#
Możesz skonfigurować Aspose.OMR for .NET API w swoich aplikacjach C#, pobierając bibliotekę DLL z sekcji Downloads lub za pośrednictwem galerii NuGet za pomocą następującego polecenia instalacyjnego:
PM> Install-Package Aspose.OMR
Rozpoznaj obraz z MemoryStream przy użyciu OMR w C#
Czasami obrazy są przechowywane w bazie danych lub jakimś zdalnym zasobie i możesz załadować te pliki w MemoryStream. Podobnie, może istnieć wiele scenariuszy, w których zapisanie obrazu na dysku, a następnie załadowanie go do przetworzenia może być narzutem. Możesz więc wygodnie załadować obraz do strumienia i wykonać na nim operacje OMR. Poniżej znajdują się kroki, aby rozpoznać obraz z MemoryStream:
- Pobierz szablon do rozpoznania.
- Zainicjuj obiekt klasy OmrEngine.
- Rozpoznaj obraz w MemoryStream metodą RecognizeImage.
- Zapisz plik wyjściowy z instancją klasy RecognitionResult.
Poniższy kod pokazuje, jak rozpoznać obraz z MemoryStream z OMR w C#:
// Pobierz szablon do rozpoznania
string templatePath = "Sheet.omr";
// Pobierz obraz do rozpoznania
string imagePath = "Sheet1.JPG";
// Zainicjuj obiekt klasy OmrEngine
OmrEngine engine = new OmrEngine();
// Ustaw szablon do rozpoznania
TemplateProcessor templateProcessor = engine.GetTemplateProcessor(templatePath);
using (Image image = Image.FromFile(imagePath))
{
using (MemoryStream ms = new MemoryStream())
{
image.Save(ms, image.RawFormat);
ms.Flush();
// Rozpoznaj obraz
Aspose.OMR.Model.RecognitionResult result = templateProcessor.RecognizeImage(ms);
var stringRes = result.GetCsv();
File.WriteAllText(Path.GetFileNameWithoutExtension(imagePath) + ".csv", stringRes);
}
}
Przetwarzanie wsadowe obrazów w celu rozpoznania za pomocą OMR przy użyciu języka C#
Możesz przetwarzać serię obrazów w folderze i rozpoznawać znaki za pomocą optycznego rozpoznawania znaków. Wykonaj następujące kroki, aby rozpoznać grupę obrazów:
- Pobierz szablon OMR do rozpoznania.
- Uzyskaj RecognitionResult wszystkich obrazów za pomocą metody RecognizeFolder.
- Zapisz dane wyjściowe jako plik CSV.
Poniższy kod wyjaśnia, jak programowo przetworzyć partię obrazów do optycznego rozpoznawania znaków przy użyciu języka C#:
// Pobierz szablon do rozpoznania
string templatePath = "Sheet.omr";
// Pobierz folder zawiera obrazy do rozpoznania
string folderPath = "D:\images\";
OmrEngine engine = new OmrEngine();
// Ustaw szablon do rozpoznania
TemplateProcessor templateProcessor = engine.GetTemplateProcessor(templatePath);
// Rozpoznaj obrazy z folderu
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);
}
Uzyskaj bezpłatną licencję API
Możesz ocenić interfejs API bez żadnych ograniczeń, prosząc o Bezpłatną licencję tymczasową.
Wniosek
W tym artykule nauczyłeś się rozpoznawać obraz z MemoryStream przy użyciu OMR w języku C#. Omówiono również rozpoznawanie wszystkich obrazów w folderze i zapisywanie wyników jako plików CSV, wartości rozdzielanych przecinkami, plików. Ponadto możesz zapoznać się z innymi funkcjami API, odwiedzając Dokumentację. Zawsze możesz skontaktować się z nami na Free Support Forum w przypadku jakichkolwiek wątpliwości.