Dizinde oluşturulmuş bir PDF'den nasıl metin çıkartabilirim? Hepsi metin, ancak hiçbir şey arayamıyorum veya seçemiyorum. Kubuntu'yu çalıştırıyorum ve Okular'ın bu özelliği yok.
Dizinde oluşturulmuş bir PDF'den nasıl metin çıkartabilirim? Hepsi metin, ancak hiçbir şey arayamıyorum veya seçemiyorum. Kubuntu'yu çalıştırıyorum ve Okular'ın bu özelliği yok.
Yanıtlar:
BSD lisanslı Linux Cuneiform OCR sistemi portuyla 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 dosyasından ayrı belgelenmemiş gözükse de, OCR sonuçlarını oldukça iyi buldum. Bununla ilgili güzel şey, OCR metni için konum bilgilerini hOCR biçiminde verebilmesidir , böylece metni bir PDF dosyasının gizli katmanında doğru konuma geri koymak mümkün hale gelir. Bu şekilde, metin kopyalayabileceğiniz "aranabilir" PDF'ler oluşturabilirsiniz.
Hocr2pdf dosyasını , yalnızca görüntü içeren orijinal PDF'ler ve OCR sonuçlarının dışında yeniden oluşturmak için 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, herhangi bir PDF meta verisini korumaz.
aspell check --mode=html "$base.html"
çivi yazısı çalıştırdıktan hemen sonra senaryodaki gibi bir şey ekleyerek yapabileceğini düşünüyorum .
Pdftotext'in sizin için çalışıp çalışmadığını görün . Makinenizde değilse, poppler-utils paketini yüklemeniz gerekir.
sudo apt-get install poppler-utils
Ayrıca pdf kullanım kitini de bulabilirsiniz .
Wikipedia'da burada pdf yazılımının tam listesi .
Düzenleme: Eğer bu yana gerek do OCR yetenekleri, sana farklı bir yol denemek gerekecek düşünüyorum. (yani, OCR yapan bir linux pdf2text dönüştürücüsü bulamadım).
PDF'yi resme dönüştür
gs: Aşağıdaki komut çok sayfalı pdf dosyasını ayrı ayrı tiff dosyalarına dönüştürmelidir.
gs -SDEVICE = tiffg4 -r600x600 -sPAPERSIZE = letter -sOutputFile = dosyaadı_% 04d.tif -dNOPAUSE -dBATCH - dosyaadı
ImageMagik yardımcı programları : SuperUser sitesinde, ImageMagik'i kullanmanıza yardımcı olacak, dönüşümü yapmanıza yardımcı olabilecek başka sorular da var.
foo.pdf dönüştürmek foo.png
Görüntüyü OCR ile metne dönüştür
Wikipedia'nın OCR yazılımı listesinden alınmış
Google docs olacak şimdi metne yüklenen görüntü / pdf belgeleri dönüştürmek için OCR kullanabilirsiniz. Bununla iyi bir başarı elde ettim.
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 çıkacak ancak Google Dokümanlar aynı klasöre yazacaktır.
Geza Kovacs, hocr2pdf
Jukka'nın önerdiği şekilde bir betik olan bir Ubuntu paketi hazırladı , ancak işleri biraz daha hızlı hale getiriyor.
Geza's'ın Ubuntu forum gönderisinden paketin detayları ...
Depo ekleme ve Ubuntu'da 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
Https://github.com/gkovacs/pdfocr/ kodu için GitHub deposu
En iyi ve en kolay yolu kullanmak pypdfocr
pdf değiştirmez kullanmaktır
pypdfocr your_document.pdf
Sonunda your_document_ocr.pdf
aranabilir bir metin ile istediğiniz şekilde başka bir 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 gözetim altında olmadığından bazı sorunlar olduğunu fark ettim. ocrmypdf
( modül ) benzer bir iş yapar ve bu şekilde kullanılabilir:
ocrmypdf in.pdf out.pdf
Yüklemek:
pip install ocrmypdf
veya
apt install ocrmypdf
PDFBeads benim için iyi çalışıyor. “ Taranan Resimleri Tek Bir PDF Dosyasına Dönüştür ” bu başlık beni çalıştırıyor ve çalıştırıyor. Bir b & w kitap taraması için yapmanız gerekenler:
Yeni klasörde, çalıştır
pdfbeads * > ../Output.pdf
Bu, harmanlanmış, OCR'd PDF'yi ana 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"
Asprise OCR Library , Linux'un çoğu sürümünde çalışır. PDF girişini ve çıkışını arama PDF'si olarak alabilir.
Ticari bir paket. Linux için Asprise OCR SDK'nın bir kopyasını buradan indirin ve aşağıdaki ş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ından metin içeriği çıkarmak için Apache PDFBox'ı deneyin . PDF dosyalarına gömülü resimler olması durumunda metin çıkarmak için ABBYY FineReader Engine CLI kullanın .