Một báo cáo đã quét có thể chứa văn bản mà bạn muốn chỉnh sửa hoặc thêm vào tài liệu của mình. Bạn có thể sử dụng OCR để nhận dạng văn bản và lưu nó dưới dạng Markdown, giúp việc xem xét và tái sử dụng trong một ứng dụng Python trở nên dễ dàng hơn.

Trong bài viết này, bạn sẽ học cách chuyển đổi hình ảnh PNG hoặc JPG sang Markdown trong Python bằng cách sử dụng Aspose.OCR for Python via .NET. Bạn cũng sẽ thấy cách xem lại nội dung đã tạo và kiểm tra các bảng và hình minh họa của tài liệu.

Thư viện OCR Python cho chuyển đổi hình ảnh sang Markdown

Aspose.OCR for Python via .NET cho phép bạn nhận dạng văn bản trong hình ảnh và lưu kết quả OCR dưới dạng Markdown. Chế độ phát hiện bố cục tài liệu của nó có thể xác định các yếu tố như khối văn bản, bảng và hình ảnh.

Cài đặt phiên bản 26.10.0 của gói bằng pip:

python -m pip install aspose-ocr-python-net

Bạn sẽ cần một cài đặt Python được hỗ trợ, một hình ảnh PNG hoặc JPG có thể đọc được và quyền ghi file đầu ra. Để thực hiện ví dụ, đặt một hình ảnh có tên report.png trong thư mục nơi bạn sẽ chạy script. Không cần cài đặt .NET runtime riêng; xem yêu cầu hệ thống để biết các nền tảng được hỗ trợ.

Phiên bản dùng thử giới hạn lượng văn bản được nhận dạng. Để loại bỏ hạn chế này trong quá trình đánh giá, bạn có thể yêu cầu một giấy phép tạm thời và áp dụng nó trước khi nhận dạng. Xem tài liệu cấp phép để biết chi tiết.

Chuyển đổi hình ảnh sang Markdown trong Python

Thực hiện các bước sau để nhận dạng hình ảnh và lưu kết quả dưới dạng Markdown:

  1. Tạo một thể hiện của lớp AsposeOcr.
  2. Tạo một đối tượng OcrInput cho một hình ảnh duy nhất và thêm tệp hình ảnh.
  3. Tạo một đối tượng RecognitionSettings và đặt detect_areas_mode thành DOCUMENT_LAYOUT.
  4. Gọi phương thức recognize() để xử lý hình ảnh.
  5. Lưu kết quả bằng cách sử dụng save() và SaveFormat.MD.

Đối với ví dụ này, hãy sử dụng một hình ảnh báo cáo chứa tiêu đề, văn bản, một bảng và một minh họa. Lưu đoạn mã sau vào một tệp có tên image_to_markdown.py:

import aspose.ocr as ocr

# Create the OCR engine.
api = ocr.AsposeOcr()

# Add the image to the input.
ocr_input = ocr.OcrInput(ocr.InputType.SINGLE_IMAGE)
ocr_input.add("report.png")

# Enable document layout detection.
settings = ocr.RecognitionSettings()
settings.detect_areas_mode = ocr.DetectAreasMode.DOCUMENT_LAYOUT

# Recognize the image.
results = api.recognize(ocr_input, settings)

# Save the recognition result as Markdown.
results.save("report.md", ocr.SaveFormat.MD)

Chạy script từ thư mục chứa report.png:

python image_to_markdown.py

Script đọc report.png và lưu kết quả nhận dạng dưới dạng report.md. Cả hai đường dẫn đều tương đối so với thư mục làm việc hiện tại. Để chuyển đổi một hình ảnh JPG, hãy thay đổi đường dẫn đầu vào thành tệp .jpg của bạn; các bước nhận dạng và xuất vẫn giữ nguyên.

Chế độ DOCUMENT_LAYOUT được thiết kế cho các tài liệu mà cấu trúc quan trọng trong đầu ra. Việc phát hiện phụ thuộc vào hình ảnh nguồn, vì vậy hãy xem lại Markdown đã tạo so với báo cáo gốc.

Xem lại Markdown đã tạo

Mở report.md trong trình soạn thảo văn bản hoặc trình xem Markdown. Kiểm tra văn bản đã nhận dạng, thứ tự đọc và bất kỳ nội dung bảng nào so với hình ảnh nguồn. Sau đó, bạn có thể chỉnh sửa Markdown trước khi thêm nó vào tài liệu của mình.

Ví dụ, một bảng trong Markdown có thể trông như sau. Đây là cú pháp minh họa, không phải đầu ra OCR thực tế:

| Product | Units Sold | Revenue (USD) |
| --- | --- | --- |
| Product A | 120 | $18,000 |

Nếu Markdown được tạo ra chứa các tham chiếu đến hình ảnh đã trích xuất, hãy kiểm tra xem các tệp được tham chiếu có tồn tại và hiển thị trong trình xem Markdown của bạn. Giữ nguyên đường dẫn của chúng khi di chuyển tệp Markdown.

Markdown mô tả nội dung và cấu trúc; nó không nhất thiết phải tái tạo chính xác giao diện của báo cáo gốc.

Mẹo để có kết quả OCR tốt hơn

  • Sử dụng hình ảnh nguồn rõ ràng. Văn bản và viền bảng nên có thể đọc được trong hình ảnh gốc.
  • Chọn ngôn ngữ nhận dạng phù hợp. Đặt RecognitionSettings.language khi cần. Xem tài liệu ngôn ngữ để biết các tùy chọn có sẵn.
  • Kiểm tra các chi tiết quan trọng. So sánh tên, số, ô bảng và thứ tự đọc với nguồn.
  • Xác minh các tham chiếu hình ảnh. Nếu đầu ra tham chiếu đến các hình ảnh đã trích xuất, mở Markdown trong trình xem và kiểm tra chúng có hiển thị không.
  • Kiểm tra tài liệu đại diện. Các bảng và bố cục phức tạp có thể cần chỉnh sửa thủ công, vì vậy hãy xem lại các ví dụ trước khi sử dụng đầu ra trong quy trình tự động.

Câu hỏi thường gặp

Tôi có thể chuyển đổi cả hình PNG và JPG sang Markdown trong Python không?

Có. Thêm tệp PNG hoặc JPG vào OcrInput, nhận dạng nó và lưu kết quả bằng SaveFormat.MD.

Python OCR có thể phát hiện bảng trong hình ảnh không?

Có. Chế độ DOCUMENT_LAYOUT được thiết kế để phát hiện các phần tử của tài liệu, bao gồm cả bảng. Kiểm tra Markdown đã tạo để xem cách bảng và các ô của nó được biểu diễn.

Làm thế nào để tôi xử lý các hình ảnh được tham chiếu bởi tệp Markdown?

Nếu đầu ra chứa liên kết hình ảnh, hãy xác định các tệp được tham chiếu và giữ nguyên đường dẫn của chúng khi di chuyển Markdown. Mở tệp trong trình xem Markdown để xác nhận rằng các hình ảnh hiển thị.

Tệp Markdown có giữ nguyên bố cục trang gốc một cách chính xác không?

Lưu ý. Markdown đại diện cho nội dung và cấu trúc khác với hình ảnh của trang. Xem lại tệp đã tạo và điều chỉnh cấu trúc khi cần.

Kết luận

Sử dụng quy trình này làm điểm khởi đầu để chuyển đổi các hình ảnh báo cáo của bạn sang Markdown trong Python. Trước khi thêm kết quả vào tài liệu của bạn, hãy so sánh văn bản đã nhận dạng, các bảng và bất kỳ tham chiếu hình ảnh nào với bản gốc.

Để biết thêm thông tin, xem tài liệu nhận dạng. Nếu bạn cần trợ giúp, hãy truy cập diễn đàn hỗ trợ Aspose.OCR.

Xem thêm