Dizini olmayan bir PDF'den nasıl metin çıkartırım? Hepsi metin, ancak hiçbir şey arayamıyorum veya seçemiyorum. Kubuntu'yu çalıştırıyorum ve Okular'ın bu özelliği yok.
BSD lisanslı Linux Cuneiform port OCR sistemi ile başarılı oldum.
Hiçbir ikili paket mevcut görünmüyor, bu nedenle kaynaktan oluşturmalısınız. ImageMagick C++ kütüphanelerinin temelde herhangi bir giriş görüntü formatını desteklemesi için kurulu olduğundan emin olun (aksi takdirde sadece BMP'yi kabul eder).
Esasen kısa bir README dosyadan ayrı olarak belgelenmemiş gözükse de, OCR sonuçlarını oldukça iyi buldum. Bununla ilgili güzel bir şey, OCR metni için konum bilgisi çıktısını hOCR biçiminde gösterebilmesidir, böylece metni, PDF dosyası. Bu şekilde, metin kopyalayabileceğiniz "aranabilir" PDF'ler oluşturabilirsiniz.
PDF'leri yalnızca görüntüdeki orijinal PDF ve OCR sonuçlarının dışında yeniden oluşturmak için hocr2pdf kullandım. Ne yazık ki, program çok sayfalı PDF'ler oluşturmayı desteklemiyor gibi görünüyor, bu yüzden bunları işlemek için bir komut dosyası oluşturmanız gerekebilir:
#!/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"
Lütfen yukarıdaki komut dosyasının çok temel olduğunu unutmayın. Örneğin, PDF meta verilerini korumaz.
Bakalım pdftotext sizin için işe yarayacak. Makinenizde değilse, poppler-utils paketini yüklemeniz gerekir.
Sudo apt-get install poppler-utils
Ayrıca pdf toolkit kullanım alanını da bulabilirsiniz.
Pdf yazılımının tam listesi burada wikipedia'da.
Düzen: Siz OCR yeteneklerine ihtiyacınız olduğundan, farklı bir yapmayı denemeniz gerektiğini düşünüyorum . (Yani, OCR yapan bir linux pdf2text dönüştürücü bulamadım).
PDF'yi resme dönüştürün
gs: below komut , çok sayfalı pdf dosyasını tek tek tiff dosyalarına dönüştürmelidir.
gs -SDEVICE = tiffg4 -r600x600 -sPAPERSIZE = letter -sOutputFile = dosyaadı_% 04d.tif -dNOPAUSE -dBATCH - dosyaadı
ImageMagik utilities : SuperUser sitesinde, ImageMagik'i kullanmanızla ilgili olarak dönüşüm yapmanıza yardımcı olacak başka sorular da var.
foo.pdf dönüştürmek foo.png
Resmi OCR ile metne dönüştürün
Wikipedia'dan alınmıştır OCR yazılımının listesi
Google docs olacak şimdi yüklenen resminizi/pdf belgelerinizi metne dönüştürmek için OCR kullanın. Bununla başarılı oldum.
Devasa Google Kitaplar projesi için kullanılan OCR sistemini kullanıyorlar.
Ancak, yalnızca 2 MB boyutunda PDF'lerin işleme için kabul edileceği belirtilmelidir.
Güncelleme
1. Denemek için, bir web tarayıcısından google doc'lara <2MB pdf yükleyin.
2. Yüklenen dokümanı sağ tıklayın ve "Google Dokümanlar ile Aç" ı tıklayın.
... Google Dokümanlar, metne dönüştürecek ve aynı adı taşıyan yeni bir dosyaya dönüştürecek, ancak Google Dokümanlar aynı klasöre yazacaktır.
Geza Kovacs, Jukka'nın önerdiği şekilde hocr2pdf
komutunu kullanan bir betik olan bir Ubuntu paketi hazırladı, ancak kurulum işlemini biraz daha hızlı hale getiriyor.
Geza's Ubuntu'dan forum yazısı paketin detayları ile ...
Depo ekleme ve Ubuntu’ya yükleme
Sudo add-apt-repository ppa:gezakovacs/pdfocr
Sudo apt-get update
Sudo apt-get install pdfocr
Bir dosyada ocr çalıştırma
pdfocr -i input.pdf -o output.pdf
GitHub kodu için kod deposu https://github.com/gkovacs/pdfocr/
PDFBeads benim için iyi çalışıyor. Bu konu “ Taranan Resimleri Tek Bir _e Dönüştür PDF Dosya ” beni çalıştırmaya başladı. Bir b & w kitap taraması için yapmanız gerekenler:
Yeni klasörde, çalıştır
pdfbeads * > ../Output.pdf
Bu, harmanlanmış, OCR'd PDF üst dizine koyacaktır.
tesseract kullanarak başka bir script:
#!/bin/bash
# Run OCR on a multi-page PDF file and create a txt with the
# extracted text in hidden layer. Requires tesseract, gs.
# Usage: ./pdf2ocr.sh input.pdf output.txt
set -e
input="$1"
output="$2"
tmpdir="$(mktemp -d)"
# extract images of the pages (note: resolution hard-coded)
gs -SDEVICE=tiff24nc -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}"
tesseract "$base.tiff" $base
done
# combine the pages into one txt
cat "$tmpdir"/page-*.txt > $output
rm -rf -- "$tmpdir"
En iyi ve en kolay yolu orada pypdfocr
kullanmak pdf değişmez
pypdfocr your_document.pdf
Sonunda, aranabilir metinle istediğiniz şekilde başka bir your_document_ocr.pdf
olacaktır. Uygulamaya, görüntünün kalitesini değiştirmez. Kaplama metnini ekleyerek dosyanın boyutunu biraz yükseltir.
pypdfocr
, 2016'dan beri artık desteklenmiyor ve telaşlanmadığı için bazı sorunlar fark ettim. ocrmypdf
( module ) benzer bir iş yapar ve bu şekilde kullanılabilir:
ocrmypdf in.pdf out.pdf
Yüklemek:
pip install ocrmypdf
veya
apt install ocrmypdf
Asprise OCR Library Linux’un çoğu sürümünde çalışır. PDF giriş ve çıkışını arama PDF olarak alabilir.
Ticari bir paket. Buradan Asprise OCR SDK'nın bir kopyasını buradan indirin ve şu şekilde çalıştırın:
aocr.sh input.pdf pdf
Not: Bağımsız 'pdf' çıktı formatını belirtir.
Feragatname: Yukarıdaki ürünü üreten şirketin bir çalışanıyım.
PDF Dosyasındaki metin içeriğini çıkarmak için Apache PDFBox komutunu deneyin. PDF dosyalarına gömülü görüntülerin kullanılması durumunda, metin çıkarmak için ABBYY FineReader Engine CLI kullanın.