Hangi Özellikleri Bazı Dalgacıkları Görüntü Sıkıştırmada Diğerlerinden “Daha İyi” Hale Getirir?


39

Dalgacık dönüşümü yöntemini kullanarak kendime görüntü sıkıştırma hakkında daha fazla şey öğretmeye çalışıyorum. Sorum şu: Görüntüleri sıkıştırırken onları tercih etmelerini sağlayan dalgacıklarla ilgili nedir? Hesaplamaları daha mı kolay? Daha yumuşak görüntüler üretiyorlar mı? Vb...

Örnek: JPEG 2000 , Cohen-Daubechies-Feauveau 9/7 Wavelet'i kullanıyor ... neden bu?


Bildiğim kadarıyla Daubechies dalgası yumuşak bir temel oluşturuyor, bu nedenle yüksek oranda sıkıştırılmış görüntüler "bulanık" oluyor. Örneğin Haar dalgası bloklu eserler üretebilir. JPEG 2000’den bahsettiğinizden beri, sıfır olmayan dalgacık katsayılarının kodlama şemasının kodlanmış görüntülere (EZW, SPIHT, ...) etki ettiğini de belirtmek isterim.
Libor

Sorunuz cevaplandı. Yararlı olanlar için oy kullanmaktan ve en iyilerini kabul etmekten çekinmeyin
Laurent Duval

Yanıtlar:


26

genel bakış

Kısa cevap, vanishing momentsverilenler için maksimum sayıya sahip olmalarıdır support(yani filtre katsayılarının sayısı). Daubechies dalgacıklarını genel olarak ayıran "ekstremal" özellik . Gevşek konuşma, daha kaybolan anlar daha iyi sıkıştırma, daha küçük destek ise daha az hesaplama anlamına gelir. Aslında, kaybolma momentleri ile filtre büyüklüğü arasındaki tradeoff, dalgacıkların adlandırılma şeklini domine edecek kadar önemlidir. Örneğin, sık göreceğiniz D4dalgacık olarak ya anılacaktır D4veya db2. 4Katsayı sayısına karşılık gelir, ve2kaybolan anların sayısını ifade eder. Her ikisi de aynı matematiksel nesneyi ifade eder. Aşağıda, anların ne olduğu (ve neden onları ortadan kaldırmak istediğimiz) hakkında daha fazla açıklayacağım, ancak şimdilik, sinyaldeki bilginin çoğunu daha küçük bir kağıda ne kadar iyi "katlayabileceğimizi" anlıyoruz. değerlerin sayısı. Kayıplı sıkıştırma, bu değerleri koruyarak ve diğerlerini atarak başarılır.

Şimdi, CDF 9/7kullanılan JPEG 2000, adında bir tane yerine iki sayının olduğunu fark etmiş olabilirsiniz . Aslında, aynı zamanda denir bior 4.4. Bunun nedeni "standart" bir ayrık dalgacık değil. Aslında, teknik olarak sinyaldeki enerjiyi bile korumaz ve bu özellik insanların ilk başta DWT için bu kadar heyecanlanmalarının nedenidir! Rakamlar 9/7ve 4.4sırasıyla sırasıyla desteklere ve kaybolan momentlere atıfta bulunulur, ancak şimdi dalgayı tanımlayan iki katsayı kümesi vardır. Teknik terim olmaktan çok olmasıdır orthogonal, bunlar biorthogonal. Bunun matematiksel olarak ne anlama geldiğiyle derinleşmek yerine, '

JPEG 2000

CDF 9/7 dalgacık alanını çevreleyen tasarım kararlarının daha ayrıntılı bir tartışması aşağıdaki makalede bulunabilir:

Usevitch, Bryan E. Modern Kayıp Dalgacık Dalgası Üzerine Bir Eğitim Görüntü Sıkıştırma: JPEG 2000'in Temelleri .

Burada sadece ana noktaları gözden geçireceğim.

  1. Çoğu zaman, ortogonal Daubechies dalgacıkları aslında sinyali temsil etmek için gereken değerlerin artmasına neden olabilir. Etkisi denir coefficient expansion. Önemli olan veya olmayacak kayıplı bir sıkıştırma yapıyorsak (çünkü değerleri yine de attığımızdan beri), ancak kesinlikle sıkıştırma bağlamında verimsiz görünüyor. Sorunu çözmenin bir yolu, giriş sinyalini periyodik olarak ele almaktır.

  2. [0,1,2,3][...0,1,2,3,0,1,2,3,...][0,1,2,3][...,0,1,2,3,3,2,1,0,0,1...]

  3. Ne yazık ki, gerekli özelliklere sahip olan tek ortogonal dalgacık, sadece bir ufuk momenti olarak Haar (veya D2, db1) dalgacıktır. Ugh. Bu bizi aslında yedekli temsiller olan ve dolayısıyla enerjiyi koruyamayan biyortogonal dalgacıklara yönlendirir. CDF 9/7 dalgacıklarının pratikte kullanılmasının nedeni , enerji korunmasına çok yaklaşmak için tasarlanmış olmalarıdır . Aynı zamanda pratikte iyi test ettiler.

Çeşitli problemleri çözmenin başka yolları da vardır (makalede kısaca bahsedilir), ancak bunlar ilgili faktörlerin geniş vuruşlarıdır.

Ufuk Anları

Peki anlar nelerdir ve neden onları önemsiyoruz? Düzgün sinyaller polinomlarla, yani formun fonksiyonlarıyla iyi bir şekilde yaklaştırılabilir:

a+bx+cx2+dx3+...

Bir fonksiyonun momentleri (yani sinyal), belirli bir x gücüne ne kadar benzer olduğuna dair bir ölçüdür. Matematiksel olarak, bu, işlev ile x'in gücü arasında bir iç ürün olarak ifade edilir . Bir kayma momenti, iç ürünün sıfır olduğu anlamına gelir ve bu nedenle işlev, (sürekli durum için) aşağıdaki gibi, x'in bu gücünü "benzemez":

xnf(x)dx=0

ϕψ. Bu terminoloji biraz değişiyor gibi gözüküyor, ama burada kullanacağım şey bu. DWT'nin her aşamasında, yüksek geçiş filtresi bir ayrıntı katmanını "soymak" için kullanılır ve düşük geçiş filtresi bu detay olmadan sinyalin düzleştirilmiş bir halini verir. Yüksek geçiş filtresinin kaybolma momentleri varsa, bu momentler (yani düşük dereceli polinom özellikleri), detay sinyali yerine tamamlayıcı düzleştirilmiş sinyale doldurulur. Kayıplı sıkıştırma durumunda, umarım ayrıntı sinyali içinde fazla bilgi içermez ve bu yüzden çoğunu çöpe atabiliriz.

İşte Haar (D2) dalgacıkını kullanan basit bir örnek. Genellikle ölçeklendirme faktörü vardır1/2

ϕ=[1,1]ψ=[1,1]

x0=1[2,2,2,2]

[2,2,2,2]ψϕ{[2+2,2+2]=[4,4][22,22]=[0,0]

Ve sadece düzleştirilmiş sinyal üzerinde çalışan ikinci geçişte ne olur:

[4,4]ψϕ{[4+4]=[8][44]=[0]

288

Daha fazla okuma

Yukarıdaki tedaviyi erişilebilir kılmak için bir LOT detayın üzerine dokunuyorum. Aşağıdaki yazıda daha derin bir analiz yapılmıştır:

M. Unser ve T. Blu, JPEG2000 dalgacık filtrelerinin matematiksel özellikleri , IEEE Trans. Image Proc., Vol. 12, hayır. 9, Eylül 2003, s.1080-1090.

dipnot

Yukarıdaki makale JPEG2000 dalgacıkının Daubechies 9/7 olarak adlandırıldığını ve CDF 9/7 dalgacıktan farklı olduğunu gösteriyor gibi görünmektedir.

Daubechies8

[11] A. Cohen, I. Daubechies ve JC Feauveau, “Kompakt destekli dalgacıkların Biorthogonal tabanları” Comm. Saf Uygulama Math., Vol. 45, hayır. 5, sayfa 485-560, 1992.

Göz attığım JPEG2000 standardının taslağı ( pdf link ) ayrıca Daubechies 9/7 resmi filtresini de çağırıyor. Bu makaleye atıfta bulunur:

M. Antonini, M. Barlaud, P. Mathieu ve I. Daubechies, “Dalgacık dönüşümünü kullanarak görüntü kodlama” IEEE Trans. Görüntü Proc. 1, sayfa 205-220, Nisan 1992.

Bu kaynaklardan hiçbirini okumadım, bu yüzden Wikipedia'nın neden JPEG2000 dalgacık CDF 9 / 7'yi aradığını kesin olarak söyleyemem. İkisi arasında bir fark olabilir gibi görünüyor, ancak insanlar yine de resmi JPEG2000 dalgacık CDF 9 / 7'yi arıyor (çünkü aynı temele dayanıyor mu?). Adından bağımsız olarak, Usevitch'in yazdığı standartta kullanılan yazıyı.


@datageist Harika cevap! Ayrıca, ilk etapta 9 / 7'nin ortaya çıkmasının bir başka nedeni de, rekonstrüksiyon polinomunu etkilemenin alternatif bir yoluydu, filtrelerin simetrik olması kısıtıydı . Bu şekilde, faz cevabı doğrusal kalır. (Buna karşılık, bir daub4 dalgacık, bir FIR iken asimetriktir ve işlenmiş bir sinyalde doğrusal olmayan fazları indükler). Görüntülerde doğrusal olmayan çarpıtmalardan doğrusal olanı sevmemiz için öznel eğilim nedeniyle 9/7 JPEG'de kullanıldı.
Spacey

1
Güzel makale. Vikipedi makalesinde yer alan bilgiler kaynak gösterilmekte, özelikle Daubechies "10 Ders" yazmaktadır, bu yüzden JPEG2000 için modası geçmiş olabilir. Bir düzeltme: Biorthogonal gereksiz değildir. Biortogonality koşullar tam ters filtre sıraları empoze eder. Gereksiz dönüşümler çerçevelerle başlar.
Dr. Lutz Lehmann

10

Sinyal dönüşümlerinin kalitesi iki farklı ölçümde değerlendirilir: sıkıştırma ve kayıplı sıkıştırma durumunda kalite. Sıkıştırma, enerji sıkıştırması ile tanımlanır ancak kalite daha zordur.

Geleneksel olarak kalite ortalama kare hatası veya piksel başına ortalama SNR ile ölçülmüştür. Bununla birlikte, insanlar sinyalleri MSE veya SNR ile değerlendirme eğiliminde değildir. İnsanlar, MSE'nin olma eğiliminde olmadığı yapısal gürültüye çok duyarlıdır. İnsan benzeri kalite ölçümleri sunan algoritmalar geliştirmek, aktif bir araştırma alanıdır. Bovik'in Yapısal Simülasyon (SSIM) endeksi başlamak için iyi bir yer.


6

Çok kısa bir cevap olarak - herhangi bir dönüşüm, aşağıdaki gibi açıklandığı üzere, "enerji Sıkıştırma özelliği" olarak bilinen şeye sahip olduğunda diğer dönüşümden daha iyidir:

"Dönüşüm katsayılarının yalnızca küçük bir kısmı, yalnızca birkaçını verimli tutabilmek ve başkalarını elden çıkarmak veya nicelemeyi yeniden inşa etmenin hala mükemmel bir yapıya sahip olmasını sağlayacak şekilde büyük bir büyüklüğe sahip olduğunda". Bu özellik, üniter dönüşümlerin dekor ilişkisi ile ilgilidir. ”

Daha az enerji sıkıştırma özelliğine sahip olan dönüşüm, en az sayıda sembole ihtiyaç duyacak ve dolayısıyla daha az bit gerektirecek olandır.

En yüksek enerji sıkıştırma özelliğine sahip dönüşüm DCT'dir.

Dipan.


1
DCT, yalnızca bilinmeyen sinyal sınıfları için en yüksek enerji sıkıştırmasına sahiptir. Sinyal alanınızı niteleyebilirseniz, daha iyisini yapabilirsiniz.
totowtwo

@Totowtwo ile aynı fikirdeyim. Demek istediğim, “enerji kompaktlığı özelliği”, belirli bir dönüşümü yapan, onu codec motorları için tercih edilebilir kılan şeydir.
Dipan Mehta

5

Doğal görüntüler farklı görüntü özelliklerinden oluşur, bunları genel olarak pürüzsüz veya değişkenliği yavaş özellikler, dokular ve kenarlar şeklinde sınıflandırabiliriz. İyi bir sıkıştırma yöntemi, bir görüntüyü, bir sinyalin tüm enerjisinin yalnızca birkaç katsayıda korunduğu bir alana dönüştüren bir yöntemdir.

Fourier dönüşümü, sinüs ve kosinüs kullanarak bir görüntüye yaklaşmaya çalışır. Şimdi sinüsler ve kosinüsler, düzgün sinyalleri oldukça net bir şekilde yaklaşık değerlendirebilir; Gibbs fenomenine aşina iseniz, zaman içerisinde bir süreksizliğe yaklaşma artefaktlarından kaçınmak için kişinin çok sayıda fourier katsayısına ihtiyaç duyduğunu anlayacaksınız. Bununla birlikte, katsayıların sayısı ne kadar küçükse, sıkıştırma o kadar iyidir. Bu nedenle, katsayı sayısı ve sıkıştırma oranı sıkıntısı arasında genellikle hız bozulma sapması olarak adlandırdığımız bir içsel sapma vardır.

k2/3k1, sırasıyla. Aynı sayıda terimde hata dalgacıklarda daha hızlı azalır. Bu, görüntüler mükemmel şekilde pürüzsüz olmadığında (yavaşça değişen) ve tekillikler içerdiğinde dalgacıkların daha iyi enerji sıkışmasına sahip olduğu anlamına gelir.

Bununla birlikte, pürüzsüz özellikleri, nokta tekilliklerini, kenarları ve dokuları yaklaştırabilecek tek bir temele veya dönüşüme sahip değiliz.


4

DCT birçok ortak sinyal için çok iyi bir enerji sıkıştırmasına sahiptir ve kırınımın (görüntülemede temel fiziksel süreç) nasıl çalıştığı ile kırınım dört çekirdekli bir çekirdek olarak temsil edilebildiğinden oldukça iyi bir şekilde bağlanmaktadır. Bunlar ona birçok avantaj sağlar.

Buradaki sorun, DCT katsayılarının tüm dönüşüm alanı boyunca mutlaka yerinden ayrılmasıdır. Bu, birçok küçük dönüşüm alanının (bloklarının) oluşturulmasını gerektirir, böylece bir alandaki enerji dönüşüm sırasında bir diğerine dökülmez. Bu, her ikisinin de dönüşümün kompakt enerjiye olan yeteneğini sınırlandırır ve aynı zamanda birçok blok sınırında eserler sunar.

Dalgacıklarla fazla bir şey yapmadım, bu yüzden yanlış olabilirim, ancak farklı alan / frekans değişimlerini temsil eden farklı katsayılarla daha fazla dağıldılar. Bu, daha az sayıda eseri olan daha büyük blok boyutlarına izin verir. Uygulamada gerçekte ne kadar bir fark yarattığı kesin değil.


0

Daha iyi dalgacıklardan söz ederken, arkalarında aynı kodlayıcıya sahip olduklarını düşünmeliyiz: bir dönüşümün performansı büyük ölçüde niceleme ve kodlama ile iç içe geçmiştir. Genelde performans: aynı kalite için daha iyi sıkıştırma veya aynı sıkıştırma için daha iyi kalite. Sıkıştırma kolay bir ölçüdür, kalite değildir. Ama bir tane olduğunu varsayalım.

×124×4

Son olarak, bu, sıkıştırmak istediğiniz görüntülerin sınıfına bağlıdır: tıbbi amaçlarla veya sismik veri sıkıştırması gibi, tümüyle amaçlanmış veya odaklanmış, sınırlı, belirli veri türleriyle mi? Burada yine, dalgacıklar farklı olabilir.

Şimdi, görüntülerin ana morfolojik bileşenleri nelerdir ve dalgacıklar bunlarla nasıl başa çıkıyor:

  • yavaş trendler, gelişen arka planlar: dalgacık alt bantlarındaki polinomlardan kurtulan kaybolan anlar,
  • Tümsekler: Tamam, ölçekleme fonksiyonlarıyla birlikte
  • kenarlar: dalgacıkların türev yönü ile yakalanan,
  • dokular: dalgacıkların kıpırdayan yönü ile yakalanan salınımlar,
  • geri kalan, gürültülü olan, modellenmemiş olan: diklik (veya çok yakın) tarafından yönetilir.

Dolayısıyla, analiz tarafında, en iyi dalgacıklar yukarıdaki özellikleri küresel olarak güzel bir şekilde sıkıştırma konusunda iyidir. Sentez tarafında, en iyi dalgacıklar, ap hoş bir görünüm kazandırmak için sıkıştırma etkilerini, örneğin nicelemeyi azaltır. Analiz / sentezde gereken özellikler biraz farklıdır, bu nedenle biyortogonal dalgacıklar güzeldir: ortogonal olanlarla yapamayacağınız analiz (kaybolan anlar) / sentez (pürüzsüzlük) özelliklerini ayırabilir ve filtre uzunluğunda bir artışa neden olabilirsiniz , hesaplama performansına oldukça zararlıdır. Ek olarak, biorthogonal dalgalanmalar simetrik olabilir, kenarlar için iyidir.

Son olarak, kayıpsız sıkıştırma ister misiniz? O zaman "tamsayı" benzeri dalgacıklara (veya kütlelere) ihtiyacınız var.

Ve yukarıdakilerin hepsi hesaplama sorunları ile karıştırıldı: ayrılabilir dalgacıklar, çok uzun değil. Ve JPEG komitesinde standardizasyon süreci.

Son olarak, 5/3 kayıpsız, yeterince kısa için oldukça iyidir. 9/7 bazıları da iyi. 13/7 dalgacıktan çok daha iyi mi? Gerçekten değil ve bu PSNR'de olsa bile, görüntü kalitesi için en iyisi değil.

Bu yüzden en iyi dalgacıklar, geleneksel görüntüler ve yazarlarla kişisel iletişim için bir bıyık uzakta

M. Unser ve T. Blu, JPEG2000 dalgacık filtrelerinin matematiksel özellikleri , IEEE Trans. Image Proc., Vol. 12, hayır. 9, Eylül 2003, s.1080-1090.

Beni 7 / 7'nin "en iyi" yönünün tam olarak açıklanmadığını veya garanti edilmediğine inandırın.

M

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.