1. ผลิตภัณฑ์
  2.   Aspose.OCR
  3.   Aspose.OCR FOSS for .NET

Aspose.OCR FOSS สำหรับ .NET

ไลบรารี .NET แบบโอเพนซอร์สสำหรับการตรวจจับและจดจำข้อความในภาพและเอกสาร PDF. มีใบอนุญาต MIT, ทำงานแบบออฟไลน์ด้วยโมเดล ONNX ที่ฝังมา.

ไลบรารี .NET โอเพ่นซอร์สสำหรับการตรวจจับและการรับรู้ข้อความ

Aspose.OCR FOSS for .NET เป็นไลบรารี C# ฟรีที่ใช้สัญญาอนุญาต MIT สำหรับการตรวจจับและรับรู้
ข้อความในภาพราสเตอร์และเอกสาร PDF โดยไม่ต้องพึ่งซอฟต์แวร์ OCR ภายนอกหรือ
บริการ กระบวนการทั้งหมด — การตรวจจับบรรทัดข้อความ, การปรับโซน, และการรับรู้สคริปต์ละติน — ทำงานในเครื่องโดยใช้โมเดล ONNX สามแบบที่ฝังอยู่โดยตรงในแอสเซมบลีและ
ดำเนินการบน CPU ผ่าน Microsoft.ML.OnnxRuntime; ไม่ต้องดาวน์โหลดโมเดลและไม่ต้องเรียกเครือข่าย
จำเป็นในเวลารัน. API มีจุดศูนย์กลางที่ AsposeOcr.Recognize() ซึ่งรับ
OcrInput ที่สร้างจากไฟล์หนึ่งหรือหลายไฟล์ (InputType.SingleImage หรือ InputType.PDF) และ
คืนค่า OcrOutput — หนึ่ง RecognitionResult ต่อภาพหรือหน้า PDF ตามลำดับของแหล่งข้อมูล.
แต่ละ RecognitionResult เปิดเผยข้อความเต็มของหน้าโดยผ่าน RecognitionText และ
บรรทัดที่รับรู้แต่ละบรรทัดพร้อมกล่องขอบเขตพิกเซลของมันโดยผ่าน
RecognitionLinesResult. หน้า PDF จะถูกเรนเดอร์ภายใน (ผ่าน Aspose.PDF.FOSS)` ก่อน
การรับรู้, ดังนั้นจึงไม่จำเป็นต้องมีขั้นตอนแปลง PDF เป็นภาพแยกต่างหาก. Aspose.OCR FOSS สำหรับ
.NET มีสัญญาอนุญาต MIT. ติดตั้งโดยใช้ dotnet add package Aspose.OCR.FOSS. สำหรับ
ชุดผลิตภัณฑ์ระดับองค์กร, ดู
Aspose.OCR — Enterprise Product Family.

จดจำข้อความในรูปภาพและ PDF

  • AsposeOcr.Recognize(OcrInput) คือจุดเข้าถึงเดียวสำหรับทั้งรูปภาพและ PDF
  • OcrInput รับค่า InputType.SingleImage หรือ InputType.PDF; เพิ่มหนึ่งหรือหลายเส้นทางไฟล์ด้วย OcrInput.Add()
  • สำหรับ InputType.PDF ทุกหน้าได้รับการจดจำและส่งคืนตามลำดับแหล่งที่มา
  • ผลลัพธ์คือ OcrOutput — หนึ่ง RecognitionResult ต่อภาพหรือหน้าของ PDF

ที่การจดจำข้อความถูกใช้

  • แปลงเอกสารสแกนเป็นข้อความที่สามารถค้นหาและคัดลอกได้
  • ดึงข้อความจากไฟล์ PDF ที่สแกนซึ่งไม่มีชั้นข้อความฝังอยู่
  • ประมวลผลแบบฟอร์ม, ใบเสร็จ, และใบแจ้งหนี้ที่สแกนในกระบวนการแบบเป็นชุด
  • ทำดัชนีคลังเก็บภาพสแกนขนาดใหญ่เพื่อการค้นหาข้อความเต็มรูปแบบ

ข้อความระดับบรรทัดและกล่องขอบเขต

  • RecognitionResult.RecognitionText คืนค่าข้อความหน้าที่ถูกจดจำทั้งหมด
  • RecognitionResult.RecognitionLinesResult คืนค่า RecognitionResult.LinesResult หนึ่งรายการต่อแต่ละบรรทัดข้อความที่ตรวจพบ
  • แต่ละ RecognitionResult.LinesResult.TextInLine เก็บข้อความที่ถูกจดจำของบรรทัดนั้น
  • แต่ละ RecognitionResult.LinesResult.Line เป็น System.Drawing.Rectangle ที่ให้
    พิกัดพิกเซลของบรรทัดในภาพต้นฉบับ

ที่ใช้ข้อมูลระดับบรรทัด

  • วาดการซ้อนทับส่วนที่จดจำได้บนภาพต้นฉบับ
  • สร้างชั้นข้อความที่สามารถค้นหาได้ซึ่งวางเหนือหน้าที่สแกน
  • ตรวจสอบความแม่นยำของการจดจำต่อบรรทัดระหว่างการตรวจสอบคุณภาพ (QA)
  • ควบคุมเครื่องมือการลบหรือการใส่คำอธิบายจากพิกัดของบรรทัด

ทำงานแบบออฟไลน์อย่างเต็มที่, ไม่มีบริการภายนอก

  • ทั้งสามโมเดล ONNX (การตรวจจับ, การปรับปรุง, การรู้จำละติน) ถูกฝังเป็นทรัพยากรของ assembly
    ทรัพยากร — ไม่ต้องดาวน์โหลดแยก
  • การรู้จำทำงานทั้งหมดบน CPU ท้องถิ่นผ่าน Microsoft.ML.OnnxRuntime
  • OcrInput สามารถเก็บหลายไฟล์; OcrOutput รักษาลำดับเดิมของพวกมัน
  • ประเภทอินพุตที่รองรับมีเพียง InputType.SingleImage และ InputType.PDF เท่านั้น — ประเภทอินพุตอื่นใด
    จะทำให้เกิด NotSupportedException

เมื่อการจดจำแบบออฟไลน์สำคัญ

  • สภาพแวดล้อมที่แยกจากเครือข่ายหรือมีการควบคุมที่เอกสารไม่สามารถออกจากเครือข่ายได้
  • สายงาน CI/CD ที่ไม่มีการเข้าถึงเครือข่ายภายนอกระหว่างการสร้าง
  • การจดจำเป็นชุดปริมาณสูงที่ค่าใช้จ่าย OCR บนคลาวด์ต่อการเรียกใช้เป็นประเด็นกังวล
  • การประมวลผลเอกสารในสถานที่พร้อมความหน่วงที่คาดเดาได้และจำกัดอยู่ในเครื่องเท่านั้น

จดจำข้อความในเอกสาร PDF

จดจำทุกหน้าของ PDF และพิมพ์ข้อความของแต่ละหน้าในลำดับต้นฉบับ

using Aspose.OCR;
var api = new AsposeOcr();
using var input = new OcrInput(InputType.PDF);
input.Add("document.pdf");
OcrOutput output = api.Recognize(input);
foreach (RecognitionResult page in output)
{
    Console.WriteLine(page.RecognitionText);
}

จดจำข้อความในภาพเดียว

จดจำภาพแรสเตอร์เดียวและพิมพ์ข้อความที่จดจำได้.

using Aspose.OCR;
var api = new AsposeOcr();
using var input = new OcrInput(InputType.SingleImage);
input.Add("scan.png");
RecognitionResult result = api.Recognize(input)[0];
Console.WriteLine(result.RecognitionText);

อ่านบรรทัดที่จดจำและกล่องขอบเขตของพวกมัน

วนซ้ำบรรทัดที่จดจำได้และพิมพ์ข้อความของแต่ละบรรทัดพร้อมพิกัดพิกเซลของมัน

using Aspose.OCR;
var api = new AsposeOcr();
using var input = new OcrInput(InputType.SingleImage);
input.Add("document.jpg");
RecognitionResult result = api.Recognize(input)[0];
foreach (RecognitionResult.LinesResult line in result.RecognitionLinesResult)
{
    System.Drawing.Rectangle bounds = line.Line;
    Console.WriteLine($"x={bounds.X}, y={bounds.Y}, width={bounds.Width}, height={bounds.Height}: {line.TextInLine}");
}

คำถามที่พบบ่อย

โมเดลการให้สิทธิ์ใช้งานคืออะไร?

Aspose.OCR FOSS for .NET มีสัญญาอนุญาตแบบ MIT. คุณสามารถใช้, ปรับเปลี่ยน, และแจกจ่ายต่อได้ รวมถึงในผลิตภัณฑ์เชิงพาณิชย์ โดยไม่ต้องเสียค่าลิขสิทธิ์เพิ่มเติม.

ฉันจะติดตั้ง Aspose.OCR FOSS for .NET อย่างไร?

ดูส่วนการติดตั้งด้านบนสำหรับคำสั่งติดตั้งปัจจุบัน.

มันรู้จักภาษาอะไรบ้าง?

ข้อความสคริปต์ละติน ไม่มีพารามิเตอร์การเลือกภาษา และสคริปต์ที่ไม่ใช่ละตินไม่ได้รับการครอบคลุมโดยโมเดลการจดจำที่ฝังอยู่

ต้องการการเชื่อมต่ออินเทอร์เน็ตหรือไม่?

ไม่. โมเดล ONNX ทั้งสาม (การตรวจจับ, การปรับแต่ง, การรู้จำ) ถูกฝังอยู่ในแอสเซมบลีและทำงานแบบท้องถิ่นผ่าน Microsoft.ML.OnnxRuntime

ฉันสามารถรับรู้หลายไฟล์ในการเรียกครั้งเดียวได้หรือไม่?

ใช่ — เพิ่มไฟล์หลายไฟล์ลงใน OcrInput เดียวก่อนเรียก AsposeOcr.Recognize(). ผลลัพธ์ OcrOutput ที่ส่งกลับจะคงลำดับของไฟล์เหล่านั้นไว้

  

ทรัพยากรสนับสนุนและการเรียนรู้

 ภาษาไทย