Aspose.OCR FOSS for .NET — การแก้ไขปัญหา

Aspose.OCR FOSS for .NET — การแก้ไขปัญหา

หน้านี้แสดงรายการข้อผิดพลาดและข้อจำกัดที่มักจะปรากฏขึ้นเมื่อทำการรวม Aspose.OCR FOSS สำหรับ .NET, พร้อมสาเหตุที่แท้จริงของแต่ละข้อ.

ข้อยกเว้นที่ถูกโยนโดย Recognize()

AsposeOcr.Recognize() ตรวจสอบความถูกต้องของข้อมูลเข้า ก่อนที่โมเดลใดจะทำงาน การตรวจสอบแต่ละรายการด้านล่างจะล้มเหลวตามลำดับนี้:

Exceptionสาเหตุแก้ไข
ArgumentNullExceptionค่า OcrInput ที่ส่งไปยัง Recognize() คือ nullสร้าง OcrInput เสมอก่อนเรียก Recognize()
NotSupportedExceptionOcrInput ถูกสร้างด้วย InputType ที่ไม่ใช่ SingleImage หรือ PDFเฉพาะ InputType.SingleImage และ InputType.PDF เท่านั้นที่ถูกต้อง
FileNotFoundExceptionเส้นทางที่เพิ่มผ่าน OcrInput.Add() ไม่มีอยู่บนดิสก์ตรวจสอบความถูกต้องของทุกเส้นทางก่อนเรียก Add() — ไฟล์ที่หายไปจะทำให้การเรียกทั้งหมดล้มเหลว ไม่ใช่แค่ไฟล์นั้นเท่านั้น

การจดจำไม่คืนข้อความใด

หาก RecognitionResult.RecognitionText ว่างและ RecognitionLinesResult ไม่มีรายการใด ตัวตรวจจับไม่พบพื้นที่บรรทัดข้อความในภาพ สิ่งนี้เป็นเรื่องที่คาดหวัง — ไม่ใช่บั๊ก — สำหรับ:

  • ภาพที่ไม่มีข้อความที่อ่านได้, หรือข้อความที่เล็กเกินไป, หมุน, หรือมีคอนทราสต์ต่ำจนตัวตรวจจับไม่สามารถลงทะเบียนเป็นพื้นที่ได้
  • สคริปต์ที่ไม่ใช่ละติน: โมเดลการจดจำที่ฝังอยู่ครอบคลุมเฉพาะข้อความแบบละตินและอักขระที่มีเครื่องหมายกำกับเท่านั้น
  • ภาพที่ส่วนที่ตรวจจับได้ถูกกรองออกระหว่างการประมวลผลหลัง (คะแนนความน่าจะเป็นของข้อความต่ำมาก)

ไม่มีคะแนนความเชื่อมั่นที่เปิดเผยเพื่อแยกแยะระหว่าง “nothing detected” จาก “detected but uncertain” — see ขอบเขตและข้อจำกัด.

การรับรู้ทำงานแต่ผลลัพธ์ดูผิดพลาด

  • ข้อความที่หมุนหรือเอียง. ไม่มีการแก้ไขการเอียงหรือการหมุนโดยอัตโนมัติ. Pre-rotate the source image before calling Recognize().
  • ตารางหรือเค้าโครงแบบฟอร์มดูสับสน. ตัวตรวจจับจะคืนค่าเฉพาะสี่เหลี่ยมที่จัดแนวตามแกนของบรรทัด — ไม่มีแนวคิดเกี่ยวกับคอลัมน์ ตาราง หรือลำดับการอ่านนอกเหนือจากตำแหน่งของบรรทัด การสร้างเค้าโครงใหม่เป็นความรับผิดชอบของผู้เรียกใช้.
  • ตำแหน่งข้อความใน PDF ดูเหมือนจะเลื่อนออกไป. หน้า PDF จะถูกเรนเดอร์ที่ 150 DPI ภายในเสมอ; พิกัดสี่เหลี่ยมใน RecognitionResult.LinesResult.Line อยู่ในพื้นที่พิกเซลของภาพที่เรนเดอร์นั้น ไม่ใช่ในพื้นที่จุดของ PDF.

ปัญหาแพลตฟอร์มและการสร้าง

  • PlatformNotSupportedException หรือที่คล้ายกันในขณะทำงานบน Linux/macOS. การประมวลผลภาพขึ้นอยู่กับ System.Drawing.Common, ซึ่งเป็นแบบเฉพาะ Windows บน .NET 6 และรุ่นต่อไป นี้เป็นเส้นทางการประมวลผลภาพของไลบรารีนี้ที่ทำงานได้เฉพาะบน Windows.
  • การสร้างล้มเหลวเมื่อเป้าหมายเป็น net9.0/net10.0. การสร้างเป้าหมายเหล่านั้นต้องใช้ .NET 10 SDK — ดู วิธีการสร้างจากซอร์สโค้ด.
  • Mixing InputType.SingleImage and InputType.PDF ในหนึ่ง OcrInput. ไม่รองรับ — ดู วิธีการประมวลผลหลายภาพเป็นชุด.

ดูเพิ่มเติม

 ภาษาไทย