Câu trả lời chính
Vì tôi quan tâm đến cùng một loại công việc (mặc dù không nhất thiết phải OCR các tệp PDF, nhưng để chuyển đổi chúng thành DjVu và sau đó là OCR chúng), tôi đã tìm thấy câu hỏi này và các câu trả lời thiếu (vì tôi cần đoán DPI của hình ảnh có số lượng pixel và sau đó sử dụng kích thước làm đầu ra bằng pdfinfohoặc các thủ thuật khác --- không đề cập đến việc hình ảnh bên trong PDF có thể có mật độ khác nhau, v.v.).
Sau rất nhiều nghiên cứu, tôi thấy rằng bạn có thể sử dụng pdfimages(từ gói poppler-utils ) như sau:
$ pdfimages -list deptest.pdf
page num type width height color comp bpc enc interp object ID x-ppi y-ppi size ratio
--------------------------------------------------------------------------------------------
1 0 image 100 100 gray 1 1 image no 9 0 53 53 169B 14%
2 1 image 100 100 gray 1 1 ccitt no [inline] 53 53 698B 56%
Lưu ý x-ppivà y-ppitại danh sách trên. Nó cũng liệt kê định dạng mà hình ảnh được lưu trữ trong PDF, rất tuyệt (đôi khi, đó là JBIG2, đôi khi là JPEG2000, v.v.)
Lưu ý: Tệp deptest.pdfđược sử dụng ở trên có sẵn từ pdfsizeoptkho của .
Hành động thực sự
Sau đó, bạn có thể chỉ cần trích xuất hình ảnh bằng pdfimageschính nó hoặc sử dụng pdftoppm(cũng từ poppler-utils) để hiển thị toàn bộ trang theo nhiều định dạng mà bạn có thể thích (ví dụ: tiff, để quét với tesseract).
Bạn có thể sử dụng một cái gì đó như sau (giả sử bạn đã tạo một thư mục có tên imgsnơi bạn sẽ đặt hình ảnh của mình):
pdfimages -png Faraway-PRA.pdf imgs/prefix
Các tệp sẽ được tạo bên trong thư mục imgscó tên bắt đầu bằng prefix, như trong:
$ ls
prefix-000.png prefix-047.png prefix-094.png prefix-141.png
prefix-001.png prefix-048.png prefix-095.png prefix-142.png
prefix-002.png prefix-049.png prefix-096.png prefix-143.png
prefix-003.png prefix-050.png prefix-097.png prefix-144.png
(...)
Sau đó, bạn có thể thực hiện bất kỳ phẫu thuật nào mà bạn thấy phù hợp với các công cụ như scantailorhoặc bất cứ điều gì bạn thích.
Thêm câu trả lời trực tiếp
Nếu bạn chỉ muốn OCR một tệp PDF, bạn có thể sử dụng một chương trình được duy trì tốt và đã được đóng gói, cụ thể là ocrmypdf .
x-ppi(độ phân giải x trong DPI) vày-ppi(độ phân giải y trong DPI) KHÔNG được hiển thị trên các phiên bản cũ hơnpdfimagesđi kèm với Ubuntu 14.04. Những gì có sẵn trên Ubuntu 18.04, tuy nhiên, không bao gồm các giá trị này.pdfimages -vtrên Ubuntu 18,04 chương trình máy của tôi, tôi có phiên bản 0.62.0, mà không có các tính năng này.