OCR tệp PDF đa ngôn ngữ: Kiểm tra riêng tiếng Trung, tiếng Anh và số
Chọn ngôn ngữ OCR cho tệp PDF hỗn hợp Trung-Anh, kiểm tra kết quả mẫu thực tế, đồng thời kiểm tra các ký tự, mã định danh, số và mối quan hệ trong bảng.

Để chạy OCR một tệp PDF đa ngôn ngữ, hãy xác định các tập lệnh trên trang, chọn một công cụ có thể xử lý tệp PDF với các ngôn ngữ nhận diện phù hợp, sau đó đối chiếu văn bản đã trích xuất với hình ảnh. Kiểm tra riêng văn bản tiếng Trung, văn bản tiếng Anh, các con số và mối quan hệ giữa các nhãn. Việc tìm thấy một tiêu đề tiếng Anh trong kết quả tìm kiếm không cho bạn biết phần nội dung tiếng Trung có được nhận diện hay không.
Việc thêm một ngôn ngữ khác rất đáng để thử nghiệm chứ không tự động mang lại sự cải thiện. Trong thí nghiệm Trung-Anh nhỏ của chúng tôi, việc thêm tiếng Anh đã sửa được một nhãn tiếng Anh nhưng lại làm hỏng một câu tiếng Trung mà cấu hình chỉ-tiếng-Trung đã nhận diện trước đó. Không có cấu hình nào trong hai cấu hình bảng của chúng tôi trả về văn bản từ một bảng có đường kẻ đơn giản.
Đó không phải là kết luận phán quyết về OCR đa ngôn ngữ nói chung. Đó là lý do để đánh giá phần đầu ra bạn cần, thay vì số lượng ngôn ngữ được chọn.
Đầu tiên, hãy phân biệt giữa văn bản bị thiếu và văn bản không chính xác
Giữ nguyên tệp gốc. Trên bản sao, hãy chọn một câu từ một trang tiêu biểu và dán nó vào một trình soạn thảo văn bản thuần túy. Hãy thử một đoạn tiếng Trung và một đoạn tiếng Anh, chứ không chỉ tiêu đề tài liệu.
| Những gì bạn tìm thấy | Việc cần làm tiếp theo |
|---|---|
| Không thể chọn hoặc sao chép được gì | Xem trang này có khả năng chỉ chứa hình ảnh và chạy OCR. |
| Văn bản sao chép được, nhưng các ký tự khác với trang hiển thị | Khảo sát một lớp văn bản hiện có không chính xác; thao tác mở và lưu đơn giản có thể không làm thay đổi lớp văn bản đó. |
| Một số trang sao chép chính xác trong khi các trang khác thì không | Lập danh mục các trang bị ảnh hưởng trước khi áp dụng thao tác cho toàn bộ tài liệu. |
| Các từ sao chép chính xác nhưng các hàng hoặc đoạn văn bị trộn lẫn | Kiểm tra việc phân đoạn và thứ tự đọc tách biệt với ngôn ngữ nhận diện. |
Lớp văn bản hiện có rất quan trọng. Ví dụ: tài liệu OCR của NAPS2 cho biết các trang PDF được nhập đã chứa sẵn văn bản sẽ được giữ nguyên. Do đó, việc nhập lại một trang đã chạy OCR kém chất lượng không phải là phương pháp sửa chữa đáng tin cậy trong quy trình làm việc đó.
Nếu vấn đề thực sự nằm ở bản quét có độ phân giải thấp, bị cong hoặc bị lệch, hãy khắc phục điều đó trước khi diễn giải sự so sánh cài đặt ngôn ngữ. Hướng dẫn về tệp PDF đã quét đề cập đến quá trình chuẩn bị đó và các giai đoạn dịch thuật sau này.
Chọn ngôn ngữ nhận diện, không phải đích đến dịch thuật
Nhận diện trả lời câu hỏi “có những ký tự nào trên trang này?” Dịch thuật trả lời câu hỏi “nội dung này nên được đọc như thế nào bằng ngôn ngữ khác?” Không yêu cầu OCR tự động giản thể hóa tiếng Trung phồn thể, dịch một câu trích dẫn tiếng English, hay viết lại một mã định danh không quen thuộc.
Lập một danh mục ngắn:
- Chữ Hán: giản thể, phồn thể, hoặc cả hai, bao gồm cả tiêu đề và ghi chú.
- Chữ cái Latinh: các câu tiếng Anh, tên tác giả, tài liệu tham khảo, chữ viết tắt và số hiệu mô hình.
- Các giá trị được kiểm soát: ngày tháng, dấu thập phân, đơn vị, dấu trừ, mã định danh và mã phân biệt chữ hoa chữ thường.
- Vùng: văn xuôi, bảng biểu, chú thích, chú thích cuối trang hoặc một phụ lục bằng ngôn ngữ riêng.
Ví dụ, một báo cáo bằng tiếng Trung phồn thể có thể chứa phần tóm tắt và tài liệu tham khảo bằng tiếng Anh. Một chương bằng tiếng Trung giản thể có thể bao gồm một bảng với A-01, 23.5, và °C. Cả hai không nên được đánh giá chỉ bằng cách kiểm tra đoạn văn tiếng Trung dài nhất.
Tesseract cung cấp riêng các mô hình chi_sim, chi_tra, và eng trong kho mô hình chính thức của nó. Tài liệu lệnh của nó hỗ trợ việc lựa chọn ngôn ngữ kết hợp và lưu ý rằng thứ tự ngôn ngữ có thể ảnh hưởng đến kết quả. Đây là những khả năng cấu hình, không phải là sự đảm bảo rằng mọi mô hình bổ sung đều hữu ích.
Nếu tài liệu của bạn thay vào đó chứa các cột tiếng Nhật theo chiều dọc và furigana, hãy sử dụng hướng dẫn OCR dọc tiếng Nhật. Đó là một vấn đề về bố cục và chú thích khác, không chỉ đơn thuần là một hộp kiểm ngôn ngữ khác.
Sử dụng một quy trình thực sự chấp nhận các tệp PDF
Một giải pháp trên máy tính để bàn: NAPS2
NAPS2 cung cấp một đường dẫn được tài liệu hóa để làm cho các tệp PDF được quét có thể tìm kiếm được:
- Nhập một bản sao của tệp và mở cài đặt OCR của tệp đó.
- Tải xuống các ngôn ngữ nhận dạng cần thiết cho tài liệu.
- Chọn Nhiều ngôn ngữ và chọn các ngôn ngữ có liên quan.
- Bật tính năng OCR PDF có thể tìm kiếm và lưu thành tệp mới.
- Mở lại tệp đó và so sánh các văn bản tiếng Trung, tiếng Anh và số đã sao chép với trang hiển thị.
Tùy chọn nhiều ngôn ngữ xuất hiện sau khi tải xuống nhiều hơn một ngôn ngữ. Các bước này tuân theo hướng dẫn chính thức của NAPS2; chúng tôi chưa thực hiện bài kiểm tra thực tế với NAPS2 cho bài viết này.
Một giải pháp dòng lệnh: OCRmyPDF
Đối với một tệp PDF tiếng Trung giản thể/tiếng Anh chỉ có hình ảnh, một ví dụ dựa trên tài liệu chính thức là:
ocrmypdf -l chi_sim+eng --output-type pdf \
--sidecar recognized.txt input.pdf searchable.pdf
Cài đặt các gói ngôn ngữ bắt buộc trước. Sử dụng chi_tra cho một bài kiểm tra tiếng Trung phồn thể thay vì giả định rằng các tập lệnh có thể thay thế cho nhau.
Tài liệu cẩm nang OCRmyPDF ghi lại các đầu ra PDF và tệp văn bản đi kèm (sidecar). Tệp đi kèm không nhất thiết là toàn bộ tài liệu: văn bản trên các trang đã có sẵn văn bản hoặc các trang bị bỏ qua trong quá trình OCR có thể không có. Hãy kiểm tra chính tệp PDF đầu ra. OCR không chính xác hiện tại đòi hỏi một quy trình làm lại có chủ đích; đừng ép buộc chuyển đổi thành ảnh (rasterization) của mọi trang mà không hiểu rõ nó thay đổi những gì.
Đây là một giải pháp dựa trên tài liệu, không phải môi trường thử nghiệm đã đo lường của chúng tôi. Chúng tôi chưa chạy OCRmyPDF ở đây.
Tesseract thông thường cần các trang được render
Không sử dụng tesseract input.pdf ... như thể nó là một trình đọc PDF. Tesseract không chấp nhận đầu vào là PDF, mặc dù nó có thể tạo đầu ra PDF. Tesseract.js có điểm phân biệt đầu vào PDF tương tự: hãy render các trang bằng một thư viện PDF trước, sau đó nhận diện các hình ảnh.
Đó là cách được sử dụng cho thí nghiệm dưới đây của chúng tôi. Nó tạo ra văn bản và bằng chứng TSV, chứ không phải một tệp PDF đầu ra có thể tìm kiếm được kiểm nghiệm.
Điều gì đã xảy ra trong mười lệnh gọi OCR cục bộ
Chúng tôi đã tạo ra một PDF chỉ chứa hình ảnh ba trang bao gồm:
- văn xuôi tiếng Trung giản thể với các tham chiếu tiếng Anh, định danh, số thập phân và đơn vị;
- một trang tiếng Trung phồn thể tương ứng;
- một bảng tiếng Trung-Anh nhỏ với ba hàng dữ liệu.
Văn bản và các giá trị là tài liệu giảng dạy tự biên soạn, không phải tệp khách hàng hay phép đo thực tế. Mỗi mục tiêu văn xuôi chứa 124 điểm mã không phải khoảng trắng, bao gồm 41 ký tự Hán. Bảng chứa 79 điểm mã không phải khoảng trắng.

Các trang nguồn của tệp PDF không có văn bản có thể trích xuất. Chúng tôi đã render chúng bằng Poppler 26.08.0 ở độ phân giải 300 dpi, tạo ra hình ảnh 1600×1000 pixel. Kích thước phông chữ là 48 pixel trong Noto Sans CJK SC/TC Regular. Tất cả dấu câu đều đến từ các ký tự ngang thông thường của phông chữ.
Vào ngày 8 tháng 9 năm 2026, chúng tôi đã chạy Tesseract.js 7.0.0 với tesseract.js-core 7.0.0 cục bộ trên macOS ARM64. Các tessdata_fast chính thức đã được ghim vào commit 87416418657359cb625c412a48b6e1d6d41c29bd. Mỗi lệnh gọi đều sử dụng OEM 1 và PSM 6, cài đặt khối văn bản đồng nhất, với cùng một hình ảnh trang cho mỗi lần so sánh ngôn ngữ.
Có bốn công thức ngôn ngữ cho mỗi trang văn xuôi và hai cho bảng. Cả mười lệnh gọi đều hoàn thành; không có kết quả nào bị loại bỏ và không có tham số nào được tinh chỉnh sau khi xem đầu ra. Các đầu vào, mã băm mô hình, phiên bản và kết quả thô và hướng dẫn tái tạo có sẵn.
Một cài đặt có thể sửa một trường này nhưng làm hỏng trường khác
Trên trang truyền thống, chi_tra đã giữ lại toàn bộ 41 ký tự chữ Hán theo đúng thứ tự, nhưng vẫn mắc lỗi ở phần không phải tiếng Trung. Ví dụ, nó đã đổi nhãn tiếng Anh Document ID thành Document 1ID và đọc nhầm ký hiệu độ.
Việc thêm eng đã khôi phục Document ID, nhưng một phần câu về nhiệt độ và khối lượng lại biến thành các mảnh giống như tiếng Latinh:
Expected: 樣本溫度為 23.5 °C,質量為 1.08 kg。
Observed with chi_tra+eng: RA MEA 23.5°C > HBA 1.08 kg。
Các con số vẫn giữ nguyên ở dòng đó trong khi phần chữ Trung Quốc xung quanh thì không. Nếu chỉ kiểm tra 23.5 và 1.08 thì bạn sẽ bỏ sót phần bị hỏng đó.
Trang đã được đơn giản hóa cho thấy một sự đánh đổi khác. Việc thêm tiếng Anh đã khôi phục BK-2026-A07, thứ mà lần chạy chỉ có tiếng Trung trả về là BK-2026-AO7. Nhưng nó cũng làm thay đổi 与 thành 5 ở chỗ khác. Định danh có hình thức mơ hồ O0I1-l vẫn bị sai.
Các phần chẩn đoán sau đây cho thấy lý do tại sao chúng tôi không tuyên bố bên nào thắng cuộc:
| Đầu vào và lựa chọn ngôn ngữ | Chỉnh sửa chuỗi chữ Hán | Đã tìm thấy các chuỗi được bảo vệ |
|---|---|---|
Cả hai trang văn bản, eng một mình | thiếu 41 trên 41 ký tự Hán tự dự kiến | 9 trên 10 |
Trang giản thể, chi_sim | 1 | 7 trên 10 |
| Trang giản thể, thứ tự tiếng Trung/tiếng Anh bất kỳ | 2 | 8 trên 10 |
Trang phồn thể, chi_tra | 0 | 9 trên 10 |
| Trang phồn thể, thứ tự tiếng Trung/tiếng Anh bất kỳ | 9 | 9 trên 10 |
Bảng, eng hoặc chi_sim+eng | Không có văn bản nào được trả về | 0 trên 9 |
“Các chỉnh sửa chuỗi Hán tự” chỉ so sánh các chữ tượng hình tiếng Trung. Thao tác này không chấm điểm tiếng Anh, dấu câu hoặc khoảng trắng. “Đã tìm thấy chuỗi được bảo vệ” chỉ là một bước kiểm tra sự tồn tại đối với các định danh, số, đơn vị và mã thông báo tham chiếu được xác định trước; nó không xác minh vị trí hoặc mối quan hệ của chúng. Các kết quả chỉ có tiếng Anh cho thấy cái bẫy: hầu hết các chuỗi được bảo vệ đều có mặt, nhưng không có ký tự tiếng Trung nào được trả về.
Bản so sánh CSV đầy đủ cũng báo cáo khoảng cách chỉnh sửa toàn văn bản. Quá trình so sánh áp dụng tiêu chuẩn Unicode NFC và loại bỏ khoảng trắng; nó không sửa dấu câu, thay đổi chữ hoa chữ thường, chuyển đổi chữ Hán hoặc sắp xếp lại các ký tự. Việc đảo ngược thứ tự ngôn ngữ đã làm thay đổi khoảng cách trong các phần văn bản xuôi này nhưng không làm thay đổi chuỗi ký tự đã chuẩn hóa. Quan sát đó không phải là quy tắc chung về thứ tự ngôn ngữ.
Một bảng trống không phải là một kết quả trích xuất thành công

Cả hai lệnh gọi bảng đều trả về văn bản trống, mặc dù đã hoàn tất mà không gặp lỗi thực thi OCR. Việc thêm tiếng Trung không cứu vãn được công thức khối đồng nhất cố định.
Chúng tôi chưa thử nghiệm các chế độ phân đoạn khác, vùng cắt ô hoặc công cụ nhận dạng bảng. Do đó, kết quả không cho thấy Tesseract không thể đọc được bảng. Nó cho thấy việc thay đổi ngôn ngữ nhận diện đơn thuần không giải quyết được mẫu này theo các cài đặt mà chúng tôi đã sử dụng.
Đối với một bảng thực tế, cần có mối quan hệ đầy đủ Temperature → A-01 → 23.5 → °C, chứ không phải bốn token được tìm thấy ở đâu đó trên trang. Nếu kết quả trống hoặc không thể kiểm tra mối quan hệ, hãy ngừng coi đó là một bản phiên âm đáng tin cậy. Hãy thử quy trình nhận biết bố cục hoặc phiên âm các ô cần thiết bằng cách tham khảo hình ảnh.
Những gì thí nghiệm này không thể xác lập
Đây là ba trang tổng hợp sạch từ một họ phông chữ, được xem xét bởi một tác nhân người viết. Không có sự đánh giá mù quáng của con người, tập đoàn tài liệu sản xuất, hoặc thử nghiệm các bản quét bị mờ, chữ viết tay, bảng phức tạp, văn bản dọc hoặc ký tự lịch sử.
Kết quả là các phản ví dụ hữu ích cho quy tắc vô điều kiện “thêm nhiều ngôn ngữ hơn”. Chúng không phải là bảng xếp hạng công cụ, tỷ lệ độ chính xác chung hoặc dự báo cho tệp PDF của bạn. Đây không phải là một bài kiểm tra BookTranslator và tệp PDF nguồn chỉ có hình ảnh không phải là bản sao đọc đã hoàn tất OCR.
Sử dụng quy trình kiểm tra chấp nhận bốn phần trên tệp của riêng bạn
Tải xuống bản đánh giá trống. Chọn một trang chứa độ khó thực tế, sau đó thêm các kiểm tra sau trước khi xử lý toàn bộ tệp:
- Văn bản tiếng Trung: so sánh một câu hoàn chỉnh, bao gồm các ký tự ít phổ biến hơn và các dạng giản thể/phồn thể dự định. Không âm thầm chuẩn hóa một ký tự sai thành ký tự bạn mong đợi.
- Tiếng Anh và định danh: kiểm tra tên tác giả, tài liệu tham khảo, từ viết tắt, chữ in hoa và các ký tự trông giống nhau như
O/0hoặcI/l/1. Một mã không quen thuộc không phải là một từ để tự động sửa. - Số và đơn vị: so sánh từng giá trị với dấu, dấu thập phân, đơn vị và nhãn của nó.
0.05và0.50phải vẫn riêng biệt; một23.5được nhận dạng mà không có đơn vị chính xác là chưa đầy đủ. - Mối quan hệ và tính đầy đủ: kiểm tra xem mỗi đoạn văn hoặc hàng bảng có thuộc về vị trí dự kiến hay không. Xác nhận các chú thích, ghi chú và đoạn văn ngôn ngữ phụ nhỏ có mặt, không chỉ văn bản chính.
Ghi lại văn bản gốc, kết quả quan sát được, trang/vùng và hành động bắt buộc. Khi một cấu hình cải thiện một lần kiểm tra nhưng làm xấu đi lần kiểm tra khác, hãy giữ cả hai quan sát. Không chấp nhận tệp dựa trên một điểm số tin cậy duy nhất hoặc số lượng ký tự trung bình.
Phân định ba kết quả: có thể dùng ngay cho mục đích đã nêu, cần chỉnh sửa cụ thể, hoặc chưa thể tin cậy. Một tác vụ tra cứu có thể chỉ cần một đoạn được xác thực; một bản đọc hoàn chỉnh đòi hỏi phải bao quát toàn bộ tài liệu, chứ không phải một trang bìa sạch sẽ.
Chỉ dịch sau khi bạn biết tài liệu gốc nói gì
Nếu việc tìm kiếm và văn bản gốc có thể sao chép giải quyết được vấn đề của bạn, hãy dừng lại ở đó. OCR đã hoàn thành nhiệm vụ; dịch thuật là một quyết định riêng biệt.
Nếu bạn cần đọc toàn bộ tài liệu bằng ngôn ngữ khác, hãy giữ lại bản quét gốc và văn bản đã chỉnh sửa làm tài liệu tham khảo, sau đó làm theo quy trình dịch PDF được quét. Đối với tệp hợp lệ, trình dịch PDF của BookTranslator có thể là bước tiếp theo. Chế độ OCR của nó tái tạo nội dung đã dịch thay vì cam kết khớp hoàn toàn với bố cục trang gốc; điều này không loại bỏ nhu cầu kiểm tra văn bản đã khôi phục và mối quan hệ giữa các bảng.
Sau khi dịch, hãy sử dụng danh sách kiểm tra QA dịch PDF để phân biệt lỗi nhận diện nguồn với lỗi dịch thuật hoặc bố cục. Sửa sai giai đoạn chính là cách một lỗi sai có thể đọc được lọt vào tệp cuối cùng.
Bài viết liên quan





