สร้างแผ่น OMR ด้วยบาร์โค้ดใน C# | อ่านบาร์โค้ด OMR C#

การจดจำเครื่องหมายด้วยแสง (OMR) เป็นเทคโนโลยีที่สามารถใช้ในการอ่านและดึงข้อมูลจากรูปภาพของแบบฟอร์มที่ทำเครื่องหมายไว้ โดยทั่วไป OMR จะใช้ในการทดสอบ แบบสำรวจ และการลงคะแนนที่ได้มาตรฐาน แต่ยังสามารถนำมาใช้ในการใช้งานอื่นๆ ที่หลากหลาย เช่น การให้คะแนนงานของนักเรียน และการติดตามสินค้าคงคลัง ในโพสต์บล็อกนี้ เราจะแสดงให้คุณเห็นถึงวิธีการสร้างและอ่านแผ่นงาน OMR ด้วยบาร์โค้ดใน C#

บทความนี้ครอบคลุมหัวข้อต่อไปนี้:

  1. สร้างและอ่าน OMR ด้วยบาร์โค้ด - C# API
  2. สร้างแผ่น OMR ด้วยบาร์โค้ด
  3. อ่านแผ่น OMR พร้อมบาร์โค้ด
  4. แหล่งเรียนรู้ฟรี

สร้างและอ่าน OMR ด้วยบาร์โค้ด - C# API

เราจะใช้ Aspose.OMR for .NET API เพื่อสร้างและอ่านแผ่น OMR ด้วยบาร์โค้ดใน C# ช่วยให้นักพัฒนาสามารถออกแบบ แสดงผล และจดจำกระดาษคำตอบ แบบสำรวจ แอปพลิเคชัน และแบบฟอร์มที่คล้ายกันในแอปพลิเคชัน .NET ที่กรอกด้วยมือได้อย่างรวดเร็วและง่ายดาย

โปรด ดาวน์โหลด DLL ของ API หรือติดตั้งโดยใช้ NuGet

PM> Install-Package Aspose.OMR

สร้างแผ่น OMR ด้วยบาร์โค้ดใน C#

เราสามารถสร้างไฟล์เทมเพลต OMR (.omr) และรูปภาพชีตได้อย่างง่ายดายโดยใช้มาร์กอัปข้อความธรรมดาโดยทำตามขั้นตอนด้านล่าง:

  1. สร้างอินสแตนซ์ของคลาส OmrEngine
  2. หลังจากนั้น รับอ็อบเจ็กต์ GenerationResult โดยการเรียกเมธอด GenerateTemplate() โดยมีเส้นทางไฟล์ข้อความเป็นอาร์กิวเมนต์
  3. สุดท้าย เรียกเมธอด Save() เพื่อบันทึกรูปภาพที่สร้างขึ้นและไฟล์เทมเพลต .omr บนดิสก์ภายในเครื่อง

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสร้างแผ่นงาน OMR ด้วยบาร์โค้ดโดยใช้ C#

// ไดเร็กทอรีไฟล์อินพุตและเอาต์พุต
string dataDir = "C:\\Files\\";

// เริ่มต้นเครื่องยนต์
OmrEngine engine = new OmrEngine();

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

// ตรวจสอบในกรณีที่เกิดข้อผิดพลาด
if (res.ErrorCode != 0)
{
    Console.WriteLine("ERROR: " + res.ErrorCode + ": " + res.ErrorMessage);
}

// บันทึกผลลัพธ์การสร้าง: รูปภาพและเทมเพลต .omr
res.Save(dataDir, "OMRTestWithBarcode");
สร้างแผ่น OMR ด้วยบาร์โค้ดใน C#

สร้างแผ่น OMR ด้วยบาร์โค้ดใน C#

คุณสามารถตรวจสอบมาร์กอัปข้อความธรรมดาต่อไปนี้ซึ่งใช้ในการสร้างเทมเพลต 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________________________________

โปรด ดาวน์โหลดเทมเพลต OMR ที่สร้างขึ้น ที่นี่

อ่านแผ่น OMR พร้อมบาร์โค้ดใน C#

เราสามารถดำเนินการ OMR กับภาพที่สแกนที่เติมแล้วของแผ่น OMR ด้วยบาร์โค้ด และแยกข้อมูลเป็นไฟล์ CSV เพื่อจุดประสงค์นี้ เราจำเป็นต้องมีเทมเพลต OMR (.omr) ที่เตรียมไว้และรูปภาพ (แบบฟอร์ม/ชีตที่ผู้ใช้กรอก) โปรดทำตามขั้นตอนด้านล่างเพื่ออ่านแผ่น OMR พร้อมบาร์โค้ดและแยกข้อมูลในรูปแบบ CSV

  1. สร้างอินสแตนซ์ของคลาส OmrEngine
  2. เรียกเมธอด GetTemplateProcessor() และเตรียมใช้งานอ็อบเจ็กต์คลาส TemplateProcessor ใช้เส้นทางไฟล์เทมเพลต OMR เป็นอาร์กิวเมนต์
  3. รับวัตถุ RecognitionResult โดยการเรียกเมธอด Recognize() โดยมีเส้นทางรูปภาพเป็นอาร์กิวเมนต์
  4. หลังจากนั้น รับผลลัพธ์การจดจำเป็นสตริง CSV โดยใช้เมธอด GetCsv()
  5. สุดท้าย ให้บันทึกผลลัพธ์ CSV เป็นไฟล์ CSV บนดิสก์ภายในเครื่อง

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการอ่านและดึงข้อมูลจากแผ่น OMR ด้วยบาร์โค้ดใน C#

// ตัวอย่างโค้ดนี้สาธิตวิธีการดำเนินการ OMR บนรูปภาพและแยกข้อมูล
// เส้นทางไฟล์เทมเพลต OMR
string TemplateName = @"OMRTestWithBarcode.omr";
string UserImage = @"OMRTestWithBarcode.png";

// เส้นทางไฟล์อินพุตและเอาต์พุต
string dataDir = "C:\\Files\\";
string templatePath = Path.Combine(dataDir, TemplateName);

// เริ่มต้นเครื่องยนต์ OMR
OmrEngine engine = new OmrEngine();
TemplateProcessor templateProcessor = engine.GetTemplateProcessor(templatePath);
Console.WriteLine("Template loaded.");

// รับผลลัพธ์ในรูปแบบ CSV
string imagePath = Path.Combine(dataDir, UserImage);
string csvResult = templateProcessor.Recognize(imagePath).GetCsv();

// บันทึกไฟล์ 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);
อ่านแผ่น OMR พร้อมบาร์โค้ดใน C#

อ่านแผ่น OMR พร้อมบาร์โค้ดใน C#

รับใบอนุญาตฟรี

คุณสามารถ รับใบอนุญาตชั่วคราวฟรี เพื่อลองใช้ห้องสมุดโดยไม่มีข้อจำกัดในการประเมิน

Aspose.OMR for .NET – ทรัพยากรการเรียนรู้

นอกจากการแยกข้อมูล OMR จากรูปภาพแล้ว คุณยังสามารถเรียนรู้เพิ่มเติมเกี่ยวกับ Aspose.OMR และสำรวจคุณสมบัติอื่นๆ ของไลบรารีโดยใช้แหล่งข้อมูลด้านล่าง:

บทสรุป

ในบทความนี้ เราได้เรียนรู้วิธีสร้างและอ่านแผ่นงาน OMR ด้วยบาร์โค้ดใน C# เรายังได้เห็นวิธีการแยกและบันทึกข้อมูล OMR ในรูปแบบ CSV อีกด้วย ด้วยการทำตามขั้นตอนที่สรุปไว้ในบทความนี้ คุณสามารถใช้ประโยชน์จาก Aspose.OMR และพัฒนาแอปพลิเคชัน OMR ของคุณเองได้ ในกรณีที่มีความคลุมเครือ โปรดติดต่อเราที่ ฟอรัมการสนับสนุนฟรี

ดูสิ่งนี้ด้วย