Taranan sayfalarla ve seçilebilir metinlerle PDF nasıl oluşturulur?


32

Bugün tedarikçimizden bir PDF aldım ve imzaları ile birlikte basılmış ve taranmış birkaç sayfa içeriyordu. Acrobat Reader DC'de açtım. Ama benim için sürpriz bir şekilde taranan resimlerden gelen metinler metin olarak seçilip kopyalanabilirdi. Ekran görüntüsüne bakın:

PDF, seçilebilir metinle tarandı

Kopyalanan metin hatalar içerdiğinden, bunun arkasında açıkça bir OCR var. Ama bu nasıl mümkün olabilir? Bunu daha önce hiç görmedim, bu nasıl yaratılabilir?


4
Github.com/gkovacs/pdfocr gibi paketler , bunun zaten mevcut olan görüntü PDFS için olmasını sağlar
exussum

Batch-OCR birçok PDF'den aldığınız sonuçlardan ne kadar farklı ?
Dmitry Grigoryev

@DmitryGrigoryev Daha önce bu tür bir PDF görmemiştim, bu yüzden ne olduğunu sordum. Yazıcının üretici yazılımı OCR ya da OCRMyPDF ile ilgili cevaplarda hiçbir şey yoktur, hem soru hem de cevaplar çok farklıdır. Her iki sorunun da OCR ve PDF'lerle ilgili olması dışında yinelenen hiçbir şey görmüyorum.
Vojtěch Dohnal

Peki, gönderdiklerinizden farklı bir OCR PDF görmedim, bu nedenle sorunuz bana garip geliyor.
Dmitry Grigoryev

Yanıtlar:


53

Bunun (burada bazı diğer cevapların aksine) büyük olasılıkla Acrobat ile hiçbir ilgisi yok.

Çoğu (tümü ?!) profesyonel belge tarayıcıları ve çoğu yarı profesyonel olanlar, "PDF Olarak Kaydet" seçeneğini seçtiğinizde ve ayarlarda "aranabilir" onay kutusunu işaretlerken, OCR'yi otomatik olarak gerçekleştirir. Daha ucuz "tüketici sınıfı" modelleri, bağlı PC'de OCR'yi yapacak, tipik ağ tarayıcıları dahili olarak yapacaktır.

"Aranabilir" kelimesi, tarayıcının OCR'yi gerçekleştirmesinden daha fazla bir şey ifade etmekten başka bir şey ifade etmez, daha sonra taranan bitmap'lerin içinde bir sayfa oluşturur ve bunların her birini bitmap üzerindeki ilgili karakterin üzerine yerleştirilen OCR'dan görünmeyen karakterlerle kaplar.

Bu şekilde, "bitmap" i sihirli bir şekilde araştırabilir, seçebilir, kopyalayabilir ve yapıştırabilirsiniz. Ancak, hiç sihir değil. Gerçekte, görünmez metni kopyalıyorsunuz.

Tarayıcı ayrıca, büyük görüntüyü tekrar kullanılan birçok küçük döşemeden birleştirmek gibi ek bir sihir de yapabilir. Bu, gerçekten mümkün olandan çok daha küçük bir belge boyutuna neden olur, ancak Xerox gibi komik sürprizlere (sizin için çok komik değil!) Fatura hikayenizi değiştirir ; Bellenimde.


Evet, büyük olasılıkla nasıl oluşturdukları, tam Adobe Acrobat kullandıklarından şüpheliyim.
Vojtěch Dohnal

Taranan görüntünün arkasındaki tüm metni OCR’nin her bir metin düğümünü nerede bulduğunu rapor ettiği yere yerleştirerek yaptık .
Thorbjørn Ravn Andersen

10

Ama bu nasıl mümkün olabilir?

Temel olarak, bir program giriş dosyasında OCR gerçekleştirir ve ardından resmin üzerine görünmez bir metin katmanı yerleştirir. Alternatif olarak, resmin altında aynı etkiyi veren görünür bir metin katmanı da yerleştirebilir .

Bir şey seçtiğinizde, metin katmanı seçildiği için resim önemli değildir.

bu nasıl yaratılabilir?

Birkaç yol var. Acrobat'ın zaten önerildiği göz önüne alındığında, bazı ücretsiz seçenekler ekleyeceğim (ve neyse ki bunları kullanmak için Windows'a sahip olmanız gerekmiyor).

PDF-XChange Görüntüleyici

Bu, İzleyici Yazılımına göre yerel bir Windows programıdır . 32 bit sürümünü bir 32 bit ön ekinde kullanırsanız ücretsiz sürüm, Wine altında çalışır; bu nedenle Windows, macOS ve Linux'ta kullanabilirsiniz. Son iki durumda, sırasıyla PlayOnMac veya PlayOnLinux'a ihtiyacınız olacak.

İşte Ubuntu Ask'a bıraktığım bu cevabın bir fotoğrafı :

Şarap altında PDF-XChange Viewer'ın ekran görüntüsü

OCRmyPDF

Bu, Ghostscript, Tesseract ve Unpaper'a dayanan Python ile yazılmış çok platformlu bir programdır. Dokümanlardan:

OCRmyPDF ne yapar?

OCRmyPDF, bir sayfadaki tüm bilgileri içerik kaybetmeden yakalamak için gereken renk alanını ve çözünürlüğünü (DPI) belirlemek için bir PDF'nin her sayfasını analiz eder. Sayfayı rasterleştirmek için Ghostscript'i kullanır ve ardından bir OCR “katmanı” oluşturmak için rasterleştirilmiş görüntü üzerinde OCR üzerinde çalışır. Katman daha sonra orijinal PDF'ye geri aşılanır.

Debian ve Ubuntu türevlerine kolayca yüklenebilir:

apt-get install ocrmypdf

Veya macOS'ta:

brew tap jbarlow83/ocrmypdf
brew install ocrmypdf

Windows'ta Docker görüntüsünü kullanmanız gerekir. Ayrıntılar için resmi belgelere bakın.

Kullanımı çok basittir ve daha iyi sonuçlar için isteğe bağlı -d(eğrili) ve -c(temiz) parametreleri kullanmanızı öneririm . OCR işlemini çalıştırmadan önce her sayfayı düzeltecek ve küçük noktaları / kusurlarını temizleyecektir.

Dili size sağlayabilirsiniz (ve vermelisiniz) -l.

İşte İtalyanca yazılmış bu eğri belgeden alınan bir örnek :

OCRmyPDF için örnek

Kullandığım komut şuydu:

ocrmypdf -l ita -d -c input.pdf output.pdf

Çevrimiçi araçlar

Aynı şeyi yapan birkaç çevrimiçi araç var. Kayda değer, PDF24, sınırlama olmadan kullanılabilecek ücretsiz web tabanlı bir OCRmyPDF sürümünü barındırıyor .

Ayrıca bakınız:


Bu cevap için teşekkür ederim, OCRMyPDF'yi denedim ve gayet iyi çalıştı ancak maalesef ihtiyacım olan dil desteği henüz olgun değildi, bu yüzden sonuçlar henüz çok kullanışlı değildi.
Vojtěch Dohnal

@ VojtěchDohnal hangi dil ile ilgileniyorsunuz? Tesseract için ilgili dil paketini yüklediniz mi? Burada listeye bakın: macports.org/ports.php?by=name&substr=tesseract-
Andrea Lazzarotto

4

Bu muhtemelen bir Acrobat OCR özelliği nedeniyle :

Acrobat, düzinelerce dilde herhangi bir PDF veya resim dosyasındaki metni tanıyabilir. Tek yapmanız gereken, taranan belgeyi veya görüntüyü OCR'a açmak, ardından araç çubuğunun sağ üstündeki mavi Araçlar düğmesine tıklamak. Bu kenar çubuğunda, Metni Tanı sekmesini seçin, ardından Bu Dosyada düğmesini tıklatın.

...

Tanınan metin ile artık tüm normal biçimlendirme araçlarını kullanarak PDF'yi işaretleyebilirsiniz - metni vurgulayabilir, metni dışarı çıkarabilir ve daha fazlasını yapabilirsiniz . Metni, algılanan biçimlendirme ile bile kopyalayabilirsiniz, ancak bu genellikle metin tanımanın kendisinden daha az doğrudur.


Bu Reader'da da çalışıyor mu? Diğer belgeler benim için bu şekilde çalışmıyor ...
Vojtěch Dohnal

Hayır, korkarım ama bu yazıya bir göz atın: pdf.wondershare.com/pdf-software-comparison/…
duDE

3

Gönderen Adobe'nin web sitesinden

Taranan PDF dosyasındaki metni tanıma

Kağıt belgeleri PDF'ye tararken, gerçekten sadece bu belgelerin fotoğraflarını çekiyorsunuz. Bu, fotoğraflar ve diğer basılı görüntüler için harika, ancak içinde belirli bir sözcük veya kelime öbeği bulmanız gereken 200 sayfalık bir belgeniz varsa? Metin içeriğini aranabilir ve kullanılabilir hale getirerek taranan dosyadaki metni tanımak için Acrobat'ı kullanın.

  1. Taranan belgeniz Acrobat'ta açıkken, Araçlar bölmesini açın ve Metin Tanıma panelini genişletin. Araçlar bölmesinde “Metin Tanıma” yı göremiyorsanız, üst sağ köşedeki menüyü seçerek ekleyebilirsiniz (aşağıdaki resim - o küçük kırmızı okun nereye baktığını görmek için? Oraya tıklayın).
  2. Açtığınız dokümanı taramak için “Bu Dosyada” seçeneğini tıklayın. Yalnızca varsayılan ayarları kabul edebilir ve Metni Tanı kutusu açıldığında “Tamam” ı tıklayabilirsiniz. Acrobat, görüntüyü kullanılabilir metne dönüştürür; denemek için, İçerik Düzenleme paneliyle bir sözcüğü veya cümleyi düzenlemeyi deneyin. Bu harika değil mi?

Teşekkürler ancak PDF'yi Reader DC'de yeni açtım ve özel bir şey yapmadım, taranmış sayfalara sahip diğer PDF belgeleri otomatik olarak bu şekilde çalışmıyor ...
Vojtěch Dohnal

5
OCR dosyayı almadan önce yapıldı, metin tanındığında pdf ile birlikte kaydedildi.
Máté Juhász

@ VojtěchDohnal Muhtemelen tam okuyucusuna ihtiyacınız var, sadece okuyucuya değil
Thorbjørn Ravn Andersen
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.