Amazon Textract ile PDF belgesi ön işleme: Görsel algılama ve kaldırma

Kaynak Düğüm: 1204412

Amazon Metin Yazısı form ve tablolardan verileri tanımlamak, anlamak ve çıkarmak için basit optik karakter tanımanın (OCR) ötesine geçen, taranmış belgelerden basılı metinleri, el yazısını ve diğer verileri otomatik olarak çıkaran, tam olarak yönetilen bir makine öğrenimi (ML) hizmetidir. Amazon Textract; finansal raporlar, tıbbi kayıtlar ve vergi formları dahil olmak üzere çeşitli belgelerdeki metinleri algılayabilir.

Çoğu kullanım durumunda, logolar, fotoğraflar ve grafikler gibi çeşitli görsellere sahip belgeleri çıkarmanız ve analiz etmeniz gerekir. Bu görseller, Amazon Textract çıktısını birleştiren veya aşağı akış süreciniz için gerekli olmayan gömülü metin içerir. Örneğin, birçok gayrimenkul değerlendirme formu veya dokümanı, evlerin resimlerini veya geçmiş fiyat trendlerini içerir. Bu bilgiler aşağı akış işlemlerinde gerekli değildir ve belgeyi analiz etmek için Amazon Textract'i kullanmadan önce bunları kaldırmanız gerekir. Bu yazıda, ön işleminizin bir parçası olarak bu görselleri kaldırmanın iki etkili yöntemini göstereceğiz.

Çözüme genel bakış

Bu gönderi için örnek olarak logo ve grafik içeren bir PDF kullanıyoruz. Bu görselleri dönüştürmek ve tespit etmek için iki farklı işlem türü kullanıyoruz, ardından onları yeniden düzenliyoruz.

İlk yöntemde, görsellerin kenarlarını tespit etmek için OpenCV kütüphanesi canny edge dedektörünü kullanıyoruz. İkinci yöntem için, bu görsellerin yerini tespit etmek için özel bir piksel konsantrasyonu analizörü yazıyoruz.

Daha fazla işlem için bu görselleri çıkarabilir ve kullanım durumunuza uyacak şekilde kodu kolayca değiştirebilirsiniz.

Aranabilir PDF'ler, genellikle metin işlemcileri, sanal PDF yazıcıları ve yerel düzenleyiciler gibi diğer uygulamalar tarafından oluşturulan yerel PDF dosyalarıdır. Bu tür PDF'ler, belgenin içindeki meta verileri, metni ve görüntü bilgilerini tutar. Gibi kitaplıkları kolayca kullanabilirsiniz. PyMuPDF / fitz PDF yapısında gezinmek ve görüntüleri ve metni tanımlamak için. Bu yazıda, aranamayan veya görsel tabanlı belgelere odaklanıyoruz.

Seçenek 1: OpenCV kenar dedektörü ile görselleri algılama

Bu yaklaşımda, PDF'yi PNG formatına dönüştürüyoruz, ardından belgeyi gri tonlamalı OpenCV-Python Kitaplığı açın ve görsel konumları tespit etmek için Canny Edge Detector'ı kullanın. Aşağıdaki detaylı adımları takip edebilirsiniz. defter.

  1. Belgeyi gri tonlamaya dönüştürün.

  1. Canny-Edged belgesindeki konturları algılamak için Canny Edge algoritmasını uygulayın.
  2. Dikdörtgen konturları ilgili boyutlarla tanımlayın.

Kullanım durumunuza bağlı olarak algılama doğruluğunu artırmak için birkaç parametreyi daha fazla ayarlayabilir ve optimize edebilirsiniz:

  • Minimum yükseklik ve genişlik - Bu parametreler, görsel algılama için minimum yükseklik ve genişlik eşiklerini tanımlar. Sayfa boyutunun yüzdesi olarak ifade edilir.
  • Dolgu malzemesi - Bir dikdörtgen kontur algılandığında, düzeltilecek sayfanın toplam alanı üzerinde biraz esnekliğe sahip olmak için ekstra dolgu alanını tanımlarız. Bu, görsellerdeki metinlerin açıkça sınırlandırılmış dikdörtgen alanlar içinde olmadığı durumlarda faydalıdır.

Avantajlar ve dezavantajlar

Bu yaklaşım aşağıdaki avantajlara sahiptir:

  • Çoğu kullanım durumunu karşılar
  • Uygulaması kolaydır ve kurulumu ve çalıştırması hızlıdır
  • Optimum parametreleri iyi sonuçlar verir

Bununla birlikte, yaklaşımın aşağıdaki dezavantajları vardır:

  • Sınırlayıcı kutusu veya çevreleyen kenarları olmayan görseller için performans, görsellerin türüne bağlı olarak değişebilir.
  • Bir metin bloğu büyük sınırlayıcı kutuların içindeyse, tüm metin bloğu görsel olarak kabul edilebilir ve bu mantık kullanılarak kaldırılabilir.

Seçenek 2: Piksel konsantrasyonu analizi

İkinci yaklaşımımızı görüntü piksellerini analiz ederek uyguluyoruz. Normal metin paragrafları, satırlarında bir yoğunlaşma imzası tutar. Belgenin geri kalanına benzemeyen piksel yoğunluklarına sahip alanları belirlemek için piksel yoğunluklarını ölçebilir ve analiz edebiliriz. Aşağıdaki detaylı adımları takip edebilirsiniz. defter.

  1. Belgeyi gri tonlamaya dönüştürün.
  2. Gri alanları beyaza dönüştürün.
  3. Siyah piksel konsantrasyonunu hesaplamak için pikselleri yatay olarak daraltın.
  4. Tam metin olmayanları belirlemek için (tüm sayfa boyunca uzanan) belgeyi yatay şeritlere veya parçalara bölün.

  1. Tam metin olmayan tüm yatay bölümler için metin olan alanları ve görüntü olan alanları belirleyin. Bu, minimum ve maksimum siyah piksel konsantrasyonu eşiklerini kullanarak bölümleri filtreleyerek yapılır.
  2. Tam metin olmayan olarak tanımlanan alanları kaldırın.

Metin olmayan alanları tanımlama doğruluğunu optimize etmek için aşağıdaki parametreleri ayarlayabilirsiniz:

  • Metin olmayan yatay segment eşikleri - Sayfadaki metin olmayan yatay bölümleri algılamak için kullanılan minimum ve maksimum siyah piksel konsantrasyonu eşiklerini tanımlayın.
  • Metin olmayan dikey segment eşikleri - Sayfadaki metin olmayan dikey bölümleri algılamak için kullanılan minimum ve maksimum siyah piksel konsantrasyonu eşiklerini tanımlayın.
  • Pencere boyutu - Sayfanın analiz için yatay ve dikey bölümlere nasıl bölüneceğini kontrol eder (X_WINDOW, Y_WINDOW). Piksel sayısı olarak tanımlanır.
  • Minimum görme alanı - Kaldırılacak görsel olarak kabul edilebilecek en küçük alanı tanımlar. Piksel cinsinden tanımlanır.
  • Gri aralık eşiği - Kaldırılacak gri gölgeler için eşik.

Avantajlar ve dezavantajlar

Bu yaklaşım oldukça özelleştirilebilir. Bununla birlikte, aşağıdaki dezavantajlara sahiptir:

  • Optimum parametreler daha uzun sürer ve çözümü daha derinlemesine anlamak için
  • Belge tam olarak düzeltilmezse (kamera ile açılı çekilmiş görüntü), bu yöntem başarısız olabilir.

Sonuç

Bu yazıda, farklı belgelerden görselleri çıkarmak için iki yaklaşımı nasıl uygulayabileceğinizi gösterdik. Her iki yaklaşımın da uygulanması kolaydır. Yüksek kaliteli sonuçlar elde edebilir ve her iki yöntemi de kullanım durumunuza göre özelleştirebilirsiniz.

Amazon Textract'teki farklı teknikler hakkında daha fazla bilgi edinmek için halkı ziyaret edin AWS Örnekleri GitHub deposu.


Yazarlar Hakkında

 Yuan Jiang makine öğrenimine odaklanan bir Kıdemli Çözüm Mimarıdır. Amazon Computer Vision Hero programının ve Amazon Machine Learning Technical Field Community'nin üyesidir.

Victor Red Sohbet Odaklı Yapay Zeka odaklı bir Kıdemli Ortak Çözüm Mimarıdır. Aynı zamanda Amazon Computer Vision Hero programının bir üyesidir.

louis pineda Kıdemli Ortak Yönetim Çözümü Mimarıdır. Aynı zamanda Amazon Computer Vision Hero programının bir üyesidir.

Miguel Romero Calvo'nun fotoğrafı. AWS Machine Learning Solution Lab'den bir Veri Bilimcisi.

Kaynak: https://aws.amazon.com/blogs/machine-learning/process-text-and-images-in-pdf-documents-with-amazon-textract/

Zaman Damgası:

Den fazla AWS Makine Öğrenimi Blogu