
แปลงรูปภาพเป็นข้อความใน C#
แปลงภาพที่สแกนของคุณเป็นสตริงโดยทางโปรแกรมโดยใช้ .NET OCR Library ไลบรารีนี้ให้คุณดำเนินการ OCR (Optical Character Recognition) โดยแยกตัวอักษรบนภาพแล้วจัดระเบียบให้บันทึกเป็นรูปแบบไฟล์ใดก็ได้ โพสต์ในบล็อกนี้จะสำรวจไลบรารีนี้และเขียนโค้ดเพื่อแปลงรูปภาพเป็นข้อความใน C# อย่างไรก็ตาม ไลบรารีนี้มีวิธีการที่หลากหลายในการสแกนและแปลงรูปภาพเป็นรูปแบบข้อความโดยทางโปรแกรม
เราจะครอบคลุมประเด็นต่อไปนี้:
- การติดตั้งไลบรารี .NET OCR
- แปลงรูปภาพเป็นข้อความใน C#
- การดำเนินการ OCR บนรูปภาพที่มีบรรทัดเดียว
- การทำ OCR บนภาพจากสตรีม
การติดตั้งไลบรารี .NET OCR
เราจะใช้ไลบรารีนี้ที่คุ้มค่าและมีประสิทธิภาพสำหรับ OCR ติดตั้งง่ายและมีฟิลเตอร์ประมวลผลล่วงหน้าที่ช่วยในการจดจำภาพที่หมุน อย่างไรก็ตาม คุณสามารถ ดาวน์โหลดไฟล์ ไฟล์ DLL หรือเรียกใช้คำสั่งต่อไปนี้ในตัวจัดการแพ็คเกจ NuGet เพื่อติดตั้ง API นี้ในโครงการ .NET ของคุณ
Install-Package Aspose.OCR
แปลงรูปภาพเป็นข้อความใน C#
คุณสามารถแยกข้อความจากรูปภาพที่สแกนและบันทึกเป็นรูปแบบไฟล์อื่นๆ ได้โดยการเขียนซอร์สโค้ดสองสามบรรทัด
ทำตามขั้นตอนต่อไปนี้และข้อมูลโค้ดเพื่อแปลงรูปภาพเป็นข้อความใน C# โดยทางโปรแกรม:
- เริ่มต้นอินสแตนซ์ของ AsposeOcr
- โหลดไฟล์รูปภาพต้นฉบับโดยเรียกใช้เมธอด RecognizeImage ที่จดจำข้อความบนรูปภาพ
- แสดงข้อความ
// เริ่มต้นอินสแตนซ์ของ AsposeOcr
AsposeOcr api = new AsposeOcr();
// โหลดไฟล์รูปภาพต้นฉบับโดยการเรียกใช้เมธอด RecognizeImage ที่จดจำข้อความบนรูปภาพ
string result = api.RecognizeImage("sample.png");
// แสดงข้อความที่รู้จัก
Console.WriteLine(result);
การดำเนินการ OCR บนรูปภาพที่มีบรรทัดเดียว
ไลบรารีนี้ช่วยให้คุณสามารถดำเนินการ OCR กับภาพที่มีเพียงบรรทัดเดียวได้ คุณสามารถทำตามขั้นตอนต่อไปนี้ตามที่ระบุไว้ด้านล่าง:
- สร้างวัตถุของคลาส AsposeOcr
- เรียกเมธอด RecognizeLine ที่จดจำรูปภาพที่มีข้อความบรรทัดเดียว
- แสดงข้อความที่รู้จัก
// สร้างวัตถุของคลาส AsposeOcr
AsposeOcr api = new AsposeOcr();
// เรียกเมธอด RecognizeLine ที่จดจำรูปภาพที่มีข้อความบรรทัดเดียว
string result = api.RecognizeLine("sample.png");
// แสดงข้อความที่รู้จัก
Console.WriteLine(result);
การทำ OCR บนภาพจากสตรีม
คุณยังอาจทำการรู้จำอักขระด้วยแสงกับรูปภาพในสตรีมได้ด้วย วิธีการเดียวกันนี้จะถูกเรียกตามที่ใช้ในหัวข้อแรกข้างต้น
ต่อไปนี้เป็นขั้นตอน:
- สร้างอินสแตนซ์ของคลาส AsposeOcr
- เริ่มต้น Constructor ของคลาส MemoryStream เพื่อสร้างสตรีม
- โหลดไฟล์อิมเมจต้นฉบับโดยการกำหนดค่าเริ่มต้นให้กับคอนสตรัคเตอร์ FileStream
- เรียกใช้เมธอด CopyTo เพื่อเขียนไบต์ของสตรีมปัจจุบันไปยังสตรีมหน่วยความจำ
- เรียกใช้เมธอด RecognizeImage เพื่ออ่านข้อความจากรูปภาพ
string result = "";
// สร้างอินสแตนซ์ของคลาส AsposeOcr
AsposeOcr api = new AsposeOcr();
// เริ่มต้นตัวสร้างของคลาส MemoryStream เพื่อสร้างสตรีม
using (MemoryStream ms = new MemoryStream())
// โหลดไฟล์อิมเมจต้นฉบับโดยเตรียมใช้งานตัวสร้าง FileStream
using (FileStream file = new FileStream( "sample.png", FileMode.Open, FileAccess.Read))
{
// เรียกวิธีการCopyToเพื่อเขียนไบต์ของกระแสข้อมูลปัจจุบันไปยังกระแสข้อมูลหน่วยความจำ
file.CopyTo(ms);
// เรียกใช้เมธอด RecognizeImage เพื่ออ่านข้อความจากรูปภาพ
result = api.RecognizeImage(ms);
}
// แสดงข้อความที่รู้จัก
Console.WriteLine(result);
รับใบอนุญาตฟรี
คุณอาจได้รับ ใบอนุญาตชั่วคราวฟรี เพื่อลองใช้ API โดยไม่มีข้อจำกัดในการประเมิน
สรุป
สิ่งนี้นำเราไปสู่จุดสิ้นสุดของโพสต์บล็อกนี้ เราได้ศึกษาวิธีการแปลงรูปภาพเป็นข้อความใน C# โดยทางโปรแกรมแล้ว นอกจากนี้เรายังได้ลองใช้วิธีการขั้นสูงบางอย่างที่ไลบรารี .NET OCR มีให้อีกด้วย นอกจากนี้ คุณยังอาจไปที่ เอกสารประกอบ เพื่อทราบคุณสมบัติอื่นๆ นอกจากนี้ คุณอาจพบตัวอย่างโค้ดพร้อมกับคำอธิบายวิธีการ ที่นี่ เราจะเผยแพร่บทความที่น่าสนใจอื่น ๆ ในอนาคตอันใกล้นี้ ดังนั้นโปรดติดต่อ conholdate.com เพื่อรับทราบข้อมูลอัปเดตเป็นประจำ
ถามคำถาม
คุณสามารถแจ้งให้เราทราบเกี่ยวกับคำถามหรือข้อสงสัยของคุณได้ใน ฟอรั่ม ของเรา
คำถามที่พบบ่อย
OCR C# คืออะไร
การรู้จำอักขระด้วยแสงเป็นเทคนิคในการอ่านข้อความจากภาพที่สแกนโดยทางโปรแกรม คุณสามารถไปที่ link นี้เพื่อทราบรายละเอียดเพิ่มเติม
ฉันจะอ่านข้อความจากรูปภาพได้อย่างไร
คุณสามารถใช้วิธี RecognizeImage ของ .NET OCR library นี้เพื่อแปลงรูปภาพเป็นข้อความ