Pengenalan tanda optik (OMR) adalah teknologi yang dapat digunakan untuk membaca dan mengekstrak data dari gambar bentuk yang ditandai. OMR biasanya digunakan dalam tes standar, survei, dan pemungutan suara, namun juga dapat digunakan dalam berbagai aplikasi lain, seperti menilai pekerjaan siswa dan melacak inventaris. Dalam postingan blog ini, kami akan menunjukkan cara membuat dan membaca lembar OMR dengan kode batang di C#.
Artikel ini mencakup topik-topik berikut:
- Buat dan Baca OMR dengan Barcode - C# API
- Buat Lembar OMR dengan Barcode
- Baca Lembar OMR dengan Barcode
- Sumber Belajar Gratis
Buat dan Baca OMR dengan Barcode - C# API
Kami akan menggunakan Aspose.OMR for .NET API untuk membuat dan membaca lembar OMR dengan kode batang di C#. Hal ini memungkinkan pengembang dengan cepat dan mudah merancang, merender, dan mengenali lembar jawaban, survei, aplikasi, dan formulir serupa yang diisi tangan dalam aplikasi .NET.
Silakan unduh DLL API atau instal menggunakan NuGet.
PM> Install-Package Aspose.OMR
Buat Lembar OMR dengan Barcode di C#
Kita dapat dengan mudah membuat file dan gambar lembar template OMR (.omr) menggunakan markup teks sederhana dengan mengikuti langkah-langkah di bawah ini:
- Buat sebuah instance dari kelas OmrEngine.
- Setelah itu, dapatkan objek GenerationResult dengan memanggil metode GenerateTemplate() dengan jalur file teks sebagai argumen.
- Terakhir, panggil metode Save() untuk menyimpan gambar yang dihasilkan dan file template .omr di disk lokal.
Contoh kode berikut menunjukkan cara membuat lembar OMR dengan kode batang menggunakan C#.
// Direktori file input dan output
string dataDir = "C:\\Files\\";
// Inisialisasi mesin
OmrEngine engine = new OmrEngine();
GenerationResult res = engine.GenerateTemplate(Path.Combine(dataDir, "OMRTestWithBarcode.txt"));
// Periksa jika terjadi kesalahan
if (res.ErrorCode != 0)
{
Console.WriteLine("ERROR: " + res.ErrorCode + ": " + res.ErrorMessage);
}
// Simpan hasil pembuatan: gambar dan template .omr
res.Save(dataDir, "OMRTestWithBarcode");
Anda selanjutnya dapat memeriksa markup teks sederhana berikut yang digunakan untuk membuat template 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________________________________
Silakan unduh template OMR yang dihasilkan di sini.
Baca Lembar OMR dengan Barcode di C#
Kita dapat melakukan operasi OMR pada gambar pindaian yang diisi dari lembar OMR dengan kode batang dan mengekstrak data dalam file CSV. Untuk tujuan ini, kita memerlukan template OMR (.omr) yang telah disiapkan dan gambar (formulir/lembar yang diisi pengguna). Silakan ikuti langkah-langkah di bawah ini untuk membaca lembar OMR dengan barcode dan mengekstrak data dalam CSV.
- Buat sebuah instance dari kelas OmrEngine.
- Panggil metode GetTemplateProcessor() dan inisialisasi objek kelas TemplateProcessor. Dibutuhkan jalur file templat OMR sebagai argumen.
- Dapatkan objek RecognitionResult dengan memanggil metode Recognize() dengan jalur gambar sebagai argumen.
- Setelah itu, dapatkan hasil pengenalan sebagai string CSV menggunakan metode GetCsv().
- Terakhir, simpan hasil CSV sebagai file CSV di disk lokal.
Contoh kode berikut menunjukkan cara membaca dan mengekstrak data dari lembar OMR dengan kode batang di C#.
// Contoh kode ini menunjukkan cara melakukan OMR pada gambar dan mengekstrak data
// Jalur file Templat OMR
string TemplateName = @"OMRTestWithBarcode.omr";
string UserImage = @"OMRTestWithBarcode.png";
// Jalur file input dan output
string dataDir = "C:\\Files\\";
string templatePath = Path.Combine(dataDir, TemplateName);
// Inisialisasi Mesin OMR
OmrEngine engine = new OmrEngine();
TemplateProcessor templateProcessor = engine.GetTemplateProcessor(templatePath);
Console.WriteLine("Template loaded.");
// Dapatkan hasil dalam CSV
string imagePath = Path.Combine(dataDir, UserImage);
string csvResult = templateProcessor.Recognize(imagePath).GetCsv();
// Simpan file 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);
Dapatkan Lisensi Gratis
Anda bisa mendapatkan lisensi sementara gratis untuk mencoba perpustakaan tanpa batasan evaluasi.
Aspose.OMR for .NET – Sumber Belajar
Selain mengekstrak data OMR dari gambar, Anda dapat mempelajari lebih lanjut tentang Aspose.OMR dan menjelajahi fitur perpustakaan lainnya menggunakan sumber daya di bawah:
Kesimpulan
Pada artikel ini, kita telah mempelajari cara membuat dan membaca lembar OMR dengan barcode di C#. Kami juga telah melihat cara mengekstrak dan menyimpan data OMR dalam format CSV. Dengan mengikuti langkah-langkah yang diuraikan dalam artikel ini, Anda dapat memanfaatkan Aspose.OMR dan mengembangkan aplikasi OMR Anda sendiri. Jika ada ambiguitas, jangan ragu untuk menghubungi kami di forum dukungan gratis kami.