Tesseract OCR'yi Linux'a Kurmak
Tesseract OCR, çoğu Linux dağıtımında varsayılan olarak mevcuttur. Aşağıdaki komutu kullanarak Ubuntu'ya yükleyebilirsiniz:
$ sudo apt kurulum tesseract-ocrDiğer dağıtımlar için ayrıntılı talimatlar mevcuttur İşte. Tesseract OCR varsayılan olarak birçok Linux dağıtımının depolarında mevcut olsa da, daha iyi doğruluk ve ayrıştırma için yukarıda belirtilen bağlantıdan en son sürümü yüklemeniz önerilir.
Tesseract OCR'de Ek Diller için Destek Yükleme
Tesseract OCR, 100'den fazla dilde metin algılama desteği içerir. Ancak, Ubuntu'daki varsayılan kurulumla yalnızca İngilizce dilinde metin algılama desteği alırsınız. Ubuntu'da ek dilleri ayrıştırma desteği eklemek için aşağıdaki biçimde bir komut çalıştırın:
$ sudo apt kurulum tesseract-ocr-hinYukarıdaki komut, Tesseract OCR'ye Hintçe dili için destek ekleyecektir. Bazen dil komut dosyaları için destek yükleyerek daha iyi doğruluk ve sonuçlar elde edebilirsiniz. Örneğin, Devanagari betiği “tesseract-ocr-script-deva” için tesseract paketini kurmak ve kullanmak bana “tesseract-ocr-hin” paketini kullanmaktan çok daha doğru sonuçlar verdi.
Ubuntu'da, aşağıdaki komutu çalıştırarak tüm diller ve komut dosyaları için doğru paket adlarını bulabilirsiniz:
$ apt-cache arama metni-Kurulacak doğru paket adını belirledikten sonra, yukarıda belirtilen ilk komutta “tesseract-ocr-hin” dizesini onunla değiştirin.
Görüntülerden Metin Çıkarmak için Tesseract OCR'yi Kullanma
Aşağıda gösterilen bir resim örneğini ele alalım (Linux için Wikipedia sayfasından alınmıştır):
Yukarıdaki görüntüden metin çıkarmak için aşağıdaki biçimde bir komut çalıştırmanız gerekir:
$ tesseract yakalama.png çıktısı -l trYukarıdaki komutu çalıştırmak aşağıdaki çıktıyı verir:
Yukarıdaki komutta, “yakala.png”, metnini çıkarmak istediğiniz görüntüyü ifade eder. Yakalanan çıktı daha sonra "çıktı" içinde saklanır.robots.txt” dosyası. “Eng” argümanını kendi seçiminizle değiştirerek dili değiştirebilirsiniz. Tüm geçerli dilleri görmek için aşağıdaki komutu çalıştırın:
$ tesseract --list-langsSisteminizde Tesseract OCR tarafından desteklenen tüm diller için kısaltma kodlarını gösterecektir. Varsayılan olarak, çıktı olarak yalnızca "eng" gösterecektir. Ancak, yukarıda açıklandığı gibi ek diller için paketler kurarsanız, bu komut metni algılamak için kullanabileceğiniz daha fazla dili listeler (ISO 639 3 harfli dil kodları olarak).
Görüntü birden çok dilde metin içeriyorsa, önce birincil dili, ardından artı işaretleriyle ayrılmış ek dilleri tanımlayın.
$ tesseract yakalama.png çıktısı -l eng+fraÇıktıyı aranabilir bir PDF dosyası olarak saklamak istiyorsanız, aşağıdaki biçimde bir komut çalıştırın:
$ tesseract yakalama.png çıktısı -l eng pdfAranabilir PDF dosyasının düzenlenebilir metin içermediğini unutmayın. Resmin üzerine bindirilmiş tanınan metni içeren ek bir katmanla birlikte orijinal resmi içerir. Böylece herhangi bir PDF okuyucu kullanarak PDF dosyasındaki metni doğru bir şekilde arayabilecekken, metni düzenleyemeyeceksiniz.
Dikkat etmeniz gereken bir diğer nokta ise, görüntü dosyası yüksek kalitedeyse metin algılama doğruluğunun büyük ölçüde arttığıdır. Bir seçenek verildiğinde, her zaman kayıpsız dosya formatlarını veya PNG dosyalarını kullanın. JPG dosyalarını kullanmak en iyi sonuçları vermeyebilir.
Çok Sayfalı Bir PDF Dosyasından Metin Çıkarma
Tesseract OCR, doğal olarak PDF dosyalarından metin çıkarmayı desteklemiyor. Ancak, her sayfayı bir görüntü dosyasına dönüştürerek çok sayfalı bir PDF dosyasından metin çıkarmak mümkündür. Bir PDF dosyasını bir dizi görüntüye dönüştürmek için aşağıdaki komutu çalıştırın:
$ pdftoppm -png dosyası.pdf çıktısıPDF dosyasının her sayfası için karşılık gelen bir “çıktı-1” alacaksınız.png”, “çıktı-2.png” dosyası vb.
Şimdi, bu görüntülerden tek bir komut kullanarak metin çıkarmak için, bir bash komutunda “for döngüsü” kullanmanız gerekecek:
ben için $ *.png; tesseract "$i" "output-$i" -l eng; bitti;Yukarıdaki komutu çalıştırmak, tüm “.png” dosyaları bulunur ve tanınan metni “output-original_filename” içinde depolar.robots.txt” dosyaları. Komutun orta kısmını ihtiyaçlarınıza göre değiştirebilirsiniz.
Tanınan metni içeren tüm metin dosyalarını birleştirmek istiyorsanız aşağıdaki komutu çalıştırın:
$ kedi *.txt > katıldı.TxtÇok sayfalı bir PDF dosyasından aranabilir PDF dosyalarına metin çıkarma işlemi neredeyse aynıdır. Komuta fazladan bir "pdf" argümanı sağlamanız gerekir:
ben için $ *.png; tesseract "$i" "output-$i" -l tr pdf; bitti;Tanınan metni içeren tüm aranabilir PDF dosyalarını birleştirmek istiyorsanız aşağıdaki komutu çalıştırın:
$ pdfbirimi *.pdf katıldı.pdfHem "pdftoppm" hem de "pdfunite", Ubuntu'nun en son kararlı sürümüne varsayılan olarak yüklenir.
TXT ve Aranabilir PDF Dosyalarında Metin Çıkarmanın Avantajları ve Dezavantajları
Tanınan metni TXT dosyalarına çıkarırsanız, düzenlenebilir metin çıktısı alırsınız. Ancak, herhangi bir belge biçimlendirmesi kaybolacaktır (kalın, italik karakterler vb.). Aranabilir PDF dosyaları orijinal biçimlendirmeyi koruyacak, ancak metin düzenleme özelliklerini kaybedeceksiniz (yine de ham metni kopyalayabilirsiniz). Aranabilir PDF dosyasını herhangi bir PDF düzenleyicide açarsanız, ham metin çıktısı değil, dosyaya gömülü görüntü(ler) alırsınız. Aranabilir PDF dosyalarını HTML veya EPUB'a dönüştürmek size gömülü görüntüler de verecektir.
Sonuç
Tesseract OCR, günümüzde en yaygın kullanılan OCR motorlarından biridir. Ücretsiz, açık kaynaklıdır ve yüzden fazla dili destekler. Tesseract OCR'yi kullanırken, metin algılamanın doğruluğunu artırmak için yüksek çözünürlüklü görüntüler kullandığınızdan ve komut satırı bağımsız değişkenlerinde dil kodlarını düzelttiğinizden emin olun.