Aspose.OCR FOSS for .NET — Khắc phục sự cố
Trang này liệt kê các lỗi và hạn chế có khả năng xuất hiện nhất khi tích hợp Aspose.OCR FOSS cho .NET, kèm theo nguyên nhân thực sự của từng lỗi.
Các ngoại lệ được ném bởi Recognize()
AsposeOcr.Recognize() xác thực đầu vào trước khi bất kỳ mô hình nào chạy. Mỗi kiểm tra dưới đây sẽ thất bại theo thứ tự này:
| Exception | Nguyên nhân | Sửa |
|---|---|---|
ArgumentNullException | Giá trị OcrInput được truyền cho Recognize() là null | Luôn tạo một OcrInput trước khi gọi Recognize() |
NotSupportedException | OcrInput đã được tạo với một InputType khác với SingleImage hoặc PDF | Chỉ InputType.SingleImage và InputType.PDF là hợp lệ |
FileNotFoundException | Đường dẫn được thêm qua OcrInput.Add() không tồn tại trên đĩa | Xác thực mọi đường dẫn trước khi gọi Add() — một tệp tin bị thiếu sẽ làm toàn bộ cuộc gọi thất bại, không chỉ tệp đó |
Nhận dạng không trả về văn bản
Nếu RecognitionResult.RecognitionText trống và RecognitionLinesResult không có mục nào, bộ phát hiện không tìm thấy vùng dòng văn bản nào trong hình ảnh. Điều này là mong đợi — không phải là lỗi — đối với:
- Hình ảnh không có văn bản có thể đọc được, hoặc văn bản quá nhỏ, bị xoay, hoặc độ tương phản thấp khiến bộ phát hiện không thể ghi nhận là một vùng
- Các chữ viết không phải Latin: mô hình nhận dạng nhúng chỉ hỗ trợ văn bản viết theo chữ Latin và các ký tự có dấu của nó
- Hình ảnh mà các vùng được phát hiện đã bị lọc bỏ trong quá trình hậu xử lý (điểm xác suất văn bản rất thấp)
Không có điểm tin cậy nào được công bố để phân biệt “không phát hiện gì” với “đã phát hiện nhưng không chắc chắn” — xem Phạm vi và hạn chế.
Nhận dạng chạy nhưng kết quả trông sai
- Văn bản đã xoay hoặc nghiêng. Không có chức năng tự động chỉnh nghiêng hoặc xoay lại. Hãy xoay trước ảnh nguồn trước khi gọi
Recognize(). - Bố cục bảng hoặc biểu mẫu trông lộn xộn. Bộ phát hiện chỉ trả về các hình chữ nhật đường thẳng song song với trục — nó không có khái niệm về cột, bảng, hay thứ tự đọc ngoài vị trí dòng. Việc tái tạo bố cục là trách nhiệm của người gọi.
- Vị trí văn bản trong PDF trông bị lệch. Các trang PDF luôn được render nội bộ ở 150 DPI; tọa độ hình chữ nhật trong
RecognitionResult.LinesResult.Linelà trong không gian pixel của hình ảnh đã render đó, không phải không gian điểm của PDF.
Vấn đề nền tảng và biên dịch
PlatformNotSupportedExceptionhoặc tương tự tại thời gian chạy trên Linux/macOS. Xử lý ảnh phụ thuộc vàoSystem.Drawing.Common, vốn chỉ hỗ trợ Windows trên .NET 6 trở lên. Đường xử lý ảnh của thư viện này chỉ chạy trên Windows.- Quá trình xây dựng thất bại khi nhắm mục tiêu
net9.0/net10.0. Xây dựng các mục tiêu đó yêu cầu .NET 10 SDK — xem Cách Xây dựng từ Mã nguồn. - Mixing
InputType.SingleImageandInputType.PDFtrong mộtOcrInput. Không được hỗ trợ — xem Cách Xử lý Hàng loạt Nhiều Hình ảnh.