2 puan yazan GN⁺ 2024-05-14 | 1 yorum | WhatsApp'ta paylaş

Sayfa eğrilmesini düzeltme (Page Dewarping)

  • Kıvrılmış sayfa görüntüsünü düzleştirme işine bir optimizasyon problemi olarak yaklaşıyor

Arka plan

  • Leptonica kütüphanesi veya Coordinate Transform Model (CTM) yöntemi gibi mevcut eğrilme düzeltme yöntemleri, hiyerarşik problem ayrıştırma yaklaşımını kullanıyor
    1. Metni satır bazında ayırma
    2. Satırları paralel ve yatay hale getirecek warping veya koordinat dönüşümünü bulma
  • CTM'nin 3D silindir modeli tabanlı yaklaşımından ilham alarak, sayfa şeklini belirleyen parametreleri kullanan kendi parametrik modelini oluşturmuş
    • 3D dönme/öteleme vektörleri, sayfa eğriliği gradyanı, yatay çizgi ofseti vb.
  • Bunu bir optimizasyon problemi olarak tanımlıyor
    • Orijinal fotoğrafta yatay metin bölgeleri boyunca anahtar noktalar bulunuyor
    • Başlangıç tahmininden başlayıp model parametrelerini optimize ederek anahtar nokta yeniden yansıtma hatasını en aza indiriyor

Süreç

  1. Sayfa sınırlarını çıkarma
  2. Metin konturlarını tespit etme
  • İkili eşikleme, morfolojik işlemler ve bağlı bileşen analizi kullanılıyor
  • Dikey metin tablolarını da tespit edecek şekilde özelleştirilmiş
  1. Metin konturlarını yatay bölgeler halinde gruplama
  2. Yatay bölgelerde anahtar nokta örnekleme
  3. İlk model parametrelerini tahmin etme
  4. Optimizasyonla yeniden yansıtma hatasını en aza indirme
  • scipy.optimize.minimize içindeki Powell çözücüsü kullanılıyor
  • Çalışma süresinin büyük bölümünü bu adım alıyor
  1. En iyi modelle koordinat dönüşümü yapıp görüntüyü yeniden eşleme ve ikili eşikleme

Sonuçlar

  • Çeşitli örnek görüntülerde iyi çalışıyor
  • Model parametresi sayısı fazla olduğu için optimizasyon zaman alıyor
  • Yatay yöndeki bozulma dikkate alınmamış

Kapanış

  • Arka plan bilgisi biriktirip bunu bir optimizasyon problemi olarak formüle eden tipik bir iş akışı
  • Deformable Part Model ve Active Appearance Model'e benzer bir yaklaşım
  • Emacs, Pylint gibi araçları kullanma konusunda da deneyim kazanılmış
  • Ek geliştirme planı yok, ancak bilgisayarlı görü öğretirken başvurulabilecek bir proje

GN⁺ görüşü

  • Gerçek kullanım için yatay yöndeki bozulmanın da düzeltilmesi gerekiyor gibi görünüyor. Bunun için CTM'deki gibi daha gelişmiş bir modele ihtiyaç olabilir.
  • Optimizasyon hızını artırmak önemli görünüyor. Parametre sayısını azaltmak veya hızlı optimizasyon teknikleri kullanmak yardımcı olabilir.
  • Derin öğrenme tabanlı yöntemlerle karşılaştırmak ilginç olabilir. Derin öğrenme, özellik noktası çıkarımı ve modellemeyi aynı anda çözebilir.
  • Endüstriyel ortamdaki belge dijitalleştirme işleri için kullanılacaksa, farklı yerleşim düzenlerine sahip belgelere karşı daha fazla dayanıklılık sağlanması gerekiyor gibi görünüyor.
  • Açık kaynak olarak yayımlanmış olması iyi, ancak gerçek kullanım için Python betiği yerine bağımsız çalıştırılabilir bir program olarak dağıtılması daha iyi olabilir.

1 yorum

 
GN⁺ 2024-05-14
Hacker News görüşü

Özet:

  • Görüntü ikilileştirmesinde yüksek eşik değeri uygularken dikkatli olunmalı
    • Düz metinde iyi çalışsa da, illüstrasyonlar veya dipnotlar okunamayacak kadar bozulabilir
    • Google Books taraması tek seçenekse şansınız yaver gitmeyebilir
  • 2024 yılına gelinmesine rağmen bu özellik belge tarayıcı uygulamalarına hâlâ yerleşik değil
  • Adobe'un eski CEO'su John Warnock, nadir tarihî kitapların korunması için çaba göstermişti
    • Açılamayan taranmış sayfaların de-curling işlemi bir sorundu
    • İlgili proje: Rare Book Room
  • Bu yazı, teknik projeleri ve kararları etkili biçimde nasıl belgelendirmek gerektiğine dair işte örnek alınabilecek bir örnek
  • Üniversite yıllarında renk kodlu notlar için bir tarama uygulaması yaparken renk bozulması sorunuyla karşılaşılmış
    • Sayfanın üstü ve altındaki renkler farklı olduğundan mavi ve yeşil kalemi ayırt etmek zor olmuş
  • Ortaya çıkan sonuç uygun görünüyor, ancak warp modeli biraz fazla küresel kalıyor
    • Kâğıdın tüm karmaşık bozulmalarını yakalayamadığı için nihai sonuçta kalıntı bozulmalar görülüyor
  • 2016'da görülmemiş olmasına üzülen ilginç bir yazı
    • Problemin tanımlanması, akıllıca tekniklerin uygulanması ve iyi çalışan bir çözüm elde edilmesi süreci çok iyi anlatılmış
    • Muhtemelen doğrudan kullanılmayacak olsa da problem çözme sürecine dair mükemmel bir örnek
  • Kurulum hatası oluşmuş, GitHub'da issue açılmış
  • Makbuzlar için de-wrinkling de denemeye değer olurdu
  • Yalnızca OCR gerekiyorsa bu adım atlanabilir
  • Google bu sorunu zaten 10 yıl önce çözmüştü
  • Değerli kitaplar ve eski belgeler için X-ışını tomografisiyle temassız de-warping mümkün