GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana cara mengekstrak teks dengan OCR dari PDF di Linux?

Saya telah sukses dengan port Linux berlisensi BSD dari sistem Cuneiform OCR.

Tampaknya tidak ada paket biner yang tersedia, jadi Anda perlu membuatnya dari sumber. Pastikan untuk menginstal pustaka ImageMagick C++ untuk mendukung hampir semua format gambar input (jika tidak, ini hanya akan menerima BMP).

Meskipun tampaknya pada dasarnya tidak berdokumen selain dari file README singkat, saya menemukan hasil OCR cukup bagus. Hal yang menyenangkan tentang itu adalah dapat menampilkan informasi posisi untuk teks OCR dalam format hOCR, sehingga memungkinkan untuk mengembalikan teks ke posisi yang benar di lapisan tersembunyi file PDF. Dengan cara ini Anda dapat membuat PDF "dapat dicari" dari mana Anda dapat menyalin teks.

Saya telah menggunakan hocr2pdf untuk membuat ulang PDF dari hasil PDF dan OCR asli yang hanya berisi gambar. Sayangnya, program tersebut tampaknya tidak mendukung pembuatan PDF multi-halaman, jadi Anda mungkin harus membuat skrip untuk menanganinya:

#!/bin/bash
# Run OCR on a multi-page PDF file and create a new pdf with the
# extracted text in hidden layer. Requires cuneiform, hocr2pdf, gs.
# Usage: ./dwim.sh input.pdf output.pdf

set -e

input="$1"
output="$2"

tmpdir="$(mktemp -d)"

# extract images of the pages (note: resolution hard-coded)
gs -SDEVICE=tiffg4 -r300x300 -sOutputFile="$tmpdir/page-%04d.tiff" -dNOPAUSE -dBATCH -- "$input"

# OCR each page individually and convert into PDF
for page in "$tmpdir"/page-*.tiff
do
    base="${page%.tiff}"
    cuneiform -f hocr -o "$base.html" "$page"
    hocr2pdf -i "$page" -o "$base.pdf" < "$base.html"
done

# combine the pages into one PDF
gs -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile="$output" "$tmpdir"/page-*.pdf

rm -rf -- "$tmpdir"

Harap dicatat bahwa skrip di atas sangat sederhana. Misalnya, tidak menyimpan metadata PDF apa pun.


Lihat apakah pdftotext akan bekerja untuk Anda. Jika tidak ada di mesin Anda, Anda harus menginstal paket poppler-utils

sudo apt-get install poppler-utils 

Anda mungkin juga menemukan toolkit pdf untuk digunakan.

Daftar lengkap perangkat lunak pdf di sini di wikipedia.

Edit: Karena Anda membutuhkan Kemampuan OCR, saya pikir Anda harus mencoba taktik yang berbeda. (yaitu saya tidak dapat menemukan konverter linux pdf2text yang melakukan OCR).

  • Ubah pdf menjadi gambar
  • Pindai gambar menjadi teks menggunakan alat OCR

Konversi pdf ke gambar

  • gs:Perintah di bawah ini harus mengonversi pdf multi halaman menjadi file tiff individual.

    gs -SDEVICE=tiffg4 -r600x600 -sPAPERSIZE=huruf -sOutputFile=namafile_%04d.tif -dNOPAUSE -dBATCH -- namafile

  • Utilitas ImageMagik:Ada pertanyaan lain di situs SuperUser tentang penggunaan ImageMagik yang mungkin Anda gunakan untuk membantu Anda melakukan konversi.

    konversi foo.pdf foo.png

Konversi gambar menjadi teks dengan OCR

  • GOCR:halaman Wikipedia
  • Ocrad:halaman Wikipedia
  • ocropus:halaman Wikipedia
  • tesseract-ocr:halaman Wikipedia

Diambil dari daftar perangkat lunak OCR di Wikipedia


Google docs sekarang akan menggunakan OCR untuk mengonversi dokumen gambar/pdf yang Anda unggah menjadi teks. Saya telah sukses dengan itu.

Mereka menggunakan sistem OCR yang digunakan untuk proyek Google Buku raksasa.

Namun, harus diperhatikan bahwa hanya PDF dengan ukuran 2 MB yang akan diterima untuk diproses.

Perbarui
1. Untuk mencobanya, unggah pdf <2MB ke google docs dari browser web.
2. Klik kanan pada dokumen yang diunggah dan klik "Buka dengan Google Docs".
...Google Docs akan mengonversi menjadi teks dan menghasilkan file baru dengan nama yang sama tetapi Google Docs mengetik di folder yang sama.


Linux
  1. Cara memformat makalah akademis di Linux dengan groff -me

  2. Bagaimana membedakan biner dari file teks di linux

  3. Bagaimana cara mengubah PDF menjadi JPG dengan baris perintah di Linux?

  1. Cara Membuat Video Dari File PDF Di Linux

  2. Bagaimana cara memilih semua teks dari file dengan nano?

  3. Bagaimana cara menampilkan baris tertentu dari file teks di Linux?

  1. gImageReader – Ekstrak Teks dari Gambar dan PDF di Linux

  2. Cara Mengirim Email Dengan Lampiran dan Isi dari Linux

  3. Alat untuk mengekstrak teks dari powerpoint pptx di linux?