2014-09-05 12 views
7

Tôi đang làm việc để đọc thông tin thẻ nhận dạng bằng thư viện Tesseract. Tôi đã thử sử dụng một số Google images và có kết quả tốt, nhưng khi tôi đã đi đến hình ảnh thời gian thực, đó là khi hình ảnh được chụp từ một máy ảnh iPhone, tôi đã không nhận được kết quả tốt.Cải thiện các bước xử lý trước trong Tesseract OCR để ghi lại thời gian thực

Tôi đã tìm thấy một số bước xử lý trước do Tesseract đề xuất.

1. Sửa DPI (nếu cần) 300 DPI tối thiểu.

Làm cách nào tôi có thể đặt DPI của hình ảnh khi chụp ảnh từ máy ảnh iPhone trong thời gian thực?

2. Chỉnh sửa kích thước văn bản (ví dụ: 12 pt sẽ không sao).

Làm cách nào để sửa kích thước văn bản cho hình ảnh lớn do máy ảnh iPhone tạo ra?

3. Cố gắng sửa các dòng văn bản (văn bản deskew và dewarp).

Tôi đọc rằng Tesseract áp dụng văn bản dewarp bằng thư viện Leptonica.Đó là dewarp hoặc deskew cần thiết cho văn bản ở giai đoạn tiền xử lý này không?

4. Cố gắng sửa ánh sáng của hình ảnh (ví dụ: không có phần tối của hình ảnh).

Tôi có thể thực hiện chiếu sáng hình ảnh bằng OpenCV không?

5. Ảnh lồng tiếng và khử nhiễu.

Tôi nhận được hình ảnh được binarized kém khi tôi áp dụng ngưỡng hoặc ngưỡng thích ứng cho hình ảnh trong thời gian thực.

Tôi làm cách nào để binarize những hình ảnh thời gian thực này?

Trả lời

1
    1. và 2 .: Khi một văn bản có kích thước điểm 12, có nghĩa là nó chiếm 12 pixel chiều cao ở tuổi 72 DPI. Tại 300 DPI, khoảng 50 pixel. Vì vậy, những gì bạn nên lấy từ 1. và 2. là bạn nên cố gắng làm cho độ phân giải của hình ảnh được chụp sao cho các dòng văn bản cao khoảng 50 pixel. Làm thế nào bạn sẽ làm điều này phụ thuộc vào cách bạn đang chụp hình ảnh.
    1. Nó là dễ dàng hơn để yêu cầu người dùng cầm máy thẳng :-)
    1. và 5. bạn có thể thử áp dụng một số chức năng lọc. Một lần nữa, nó có thể được dễ dàng hơn để yêu cầu sử dụng để đảm bảo ánh sáng thích hợp được áp dụng.
Các vấn đề liên quan