Giải pháp OCR dựa trên học sâu trong Python
Sử dụng docTR để trích xuất và nhận dạng văn bản chính xác từ hình ảnh
API docTR cho Python là gì?
docTR (Document Text Recognition) là thư viện mã nguồn mở Nhận dạng Ký tự Quang học (OCR) dựa trên học sâu cho Python. Nó cung cấp khả năng phát hiện và nhận dạng văn bản tiên tiến cho tài liệu scan, hình ảnh và file PDF. Bằng cách sử dụng các kiến trúc học sâu hiện đại, docTR đảm bảo độ chính xác và hiệu quả cao trong việc trích xuất văn bản trong khi vẫn giữ nguyên cấu trúc tài liệu.
docTR được sử dụng rộng rãi cho số hóa tài liệu, trích xuất dữ liệu tự động và các ứng dụng nhận dạng văn bản AI. Hỗ trợ đa ngôn ngữ, nhận dạng chữ viết tay và tăng tốc GPU để cải thiện hiệu suất.
Tính năng chính của API docTR
- OCR học sâu nâng cao: Sử dụng mạng nơ-ron để phát hiện và nhận dạng văn bản chính xác
- Hỗ trợ đa định dạng: Làm việc liền mạch với hình ảnh, PDF và tài liệu scan
- Nhận dạng chữ viết tay: Phát hiện và trích xuất văn bản viết tay với độ chính xác cao
- Nhận dạng đa ngôn ngữ: Hỗ trợ nhiều ngôn ngữ và hệ thống chữ viết
- Tối ưu hóa tốc độ: Trích xuất văn bản hiệu quả với tăng tốc GPU
- Bảo toàn bố cục tài liệu: Giữ nguyên cấu trúc trong quá trình nhận dạng văn bản
- Mở rộng và mã nguồn mở: Miễn phí sử dụng và liên tục được cải tiến
Bắt đầu với API docTR
Để cài đặt docTR, sử dụng lệnh pip sau:
Cài đặt docTR
pip install python-doctr
Nếu muốn bật tăng tốc GPU để xử lý nhanh hơn, cài đặt các phụ thuộc bổ sung:
Cài đặt phụ thuộc GPU
pip install tensorflow-gpu torch torchvision
Ví dụ mã trích xuất văn bản bằng API docTR
Dưới đây là một số ví dụ minh họa việc trích xuất văn bản từ hình ảnh và tài liệu bằng docTR.
Ví dụ 1: Trích xuất văn bản từ hình ảnh
Ví dụ này minh họa cách tải hình ảnh, áp dụng OCR với docTR và trích xuất văn bản. Văn bản trích xuất bao gồm vị trí của nó trong hình ảnh, hữu ích cho xử lý tài liệu có cấu trúc.
Trích xuất văn bản từ hình ảnh
from doctr.io import DocumentFile
from doctr.models import ocr_predictor
doc = DocumentFile.from_images("sample.png")
model = ocr_predictor(pretrained=True)
result = model(doc)
print(result.export())
Ví dụ 2: Xử lý tài liệu PDF nhiều trang
Nếu bạn cần trích xuất văn bản từ file PDF chứa nhiều trang, docTR đơn giản hóa quá trình này. Ví dụ sau minh họa cách trích xuất văn bản từ mỗi trang một cách hiệu quả.
Trích xuất văn bản từ PDF
from doctr.io import DocumentFile
from doctr.models import ocr_predictor
doc = DocumentFile.from_pdf("sample.pdf")
model = ocr_predictor(pretrained=True)
result = model(doc)
print(result.export())
Ví dụ 3: Nhận dạng chữ viết tay
docTR cũng có thể nhận dạng chữ viết tay, lý tưởng để số hóa ghi chú viết tay, biểu mẫu hoặc tài liệu lịch sử. Ví dụ này minh họa việc trích xuất văn bản từ tài liệu viết tay tổng hợp.
Trích xuất chữ viết tay
from doctr.models import ocr_predictor
from doctr.datasets import synthetic_documents
doc = synthetic_documents()[0]
model = ocr_predictor(pretrained=True)
result = model(doc)
print(result.export())
Kết luận
API docTR là một giải pháp OCR mạnh mẽ dựa trên học sâu giúp đơn giản hóa việc trích xuất văn bản từ hình ảnh, PDF và tài liệu viết tay. Nó đảm bảo độ chính xác cao trong khi vẫn giữ nguyên cấu trúc tài liệu, trở thành công cụ giá trị cho xử lý tài liệu AI, tự động hóa và trích xuất dữ liệu.
Dù bạn đang làm việc với số hóa tài liệu, nhập liệu tự động hay nhận dạng văn bản AI, docTR cung cấp giải pháp linh hoạt và hiệu quả phù hợp với nhu cầu của bạn.