Dijital uygulamalarda sürekli ayetler ayrık dalgacık dönüşümü kullanma


14

Dalgacıkların arkasındaki matematiksel arka planın çoğunu tanıyorum. Bununla birlikte, dalgacıklara sahip bir bilgisayara algoritmalar uygularken, sürekli veya ayrık dalgacıklar kullanmam gerektiğinden emin değilim. Tüm gerçeklikte, bilgisayardaki her şey elbette ayrıktır, bu nedenle ayrık dalgacıkların dijital sinyal işleme için doğru seçim olduğu açıktır. Bununla birlikte , wikipedia'ya göre , öncelikle (dijital) görüntü sıkıştırmada ve çok sayıda diğer dijital veri işleme faaliyetlerinde kullanılan sürekli dalgacık dönüşümüdür. Dijital görüntü veya sinyal işleme için (kesin) ayrık dalgacık dönüşümü yerine (yaklaşık) sürekli dalgacık dönüşümü kullanılıp kullanılmayacağına karar verirken dikkate alınması gereken artı ve eksiler nelerdir?

PS (Burada bir varsayımın kontrol edilmesi) Sürekli dalgacık dönüşümlerinin, eşit aralıklı noktalarda sürekli dalgacık değerini alarak ve dalgacık hesaplamaları için elde edilen sekansı kullanarak dijital işlemede kullanıldığını varsayıyorum. Bu doğru mu?

PPS Genellikle wikipedia matematik konusunda oldukça hassastır, bu yüzden Sürekli Dalgacık Dönüşümleri makalesindeki uygulamaların aslında Sürekli Dalgacık Dönüşümünün uygulamaları olduğunu varsayıyorum. Elbette, özellikle CWT olan bazılarından bahsediyor, bu nedenle dijital uygulamalarda CWT'nin açık bir şekilde kullanımı var.

Yanıtlar:


10

Muhammed'in zaten belirttiği gibi, Sürekli Dalgacık Dönüşümleri (CWT) ve Ayrık Dalgacık Dönüşümleri (DWT) terimleri biraz yanıltıcıdır. Yaklaşık olarak (Sürekli) Fourier Dönüşümü (matematik integral dönüşümü) ile DFT'ye (Ayrık Fourier Dönüşümü) ilişkilidir.

Ayrıntıları anlamak için tarihsel bağlamı görmek iyidir. Dalgacık dönüşümü başlangıçta Morlet tarafından jeofizikte tanıtıldı ve temel olarak seçilen ölçek / frekansla birlikte büyüyen ve daralan bir Pencereli bir Gabor dönüşümüdür. Daha sonra Daubchies (Belçika'dan bir fizikçi-ett), özel dik dalgacık tabanlarını seçerek sonsuz yedekli CWT'nin ikili bir ızgarada kritik olarak örneklenebileceğini fark etti. Elde edilen DWT'den, karşılık gelen tam CWT, DWT'nin ilgili dalgacın çoğaltıcı çekirdeğiyle kıvrılmasıyla elde edilebilir. Üreme çekirdeği dalgacığın kendisinin CWT'sidir.

Daubchies bulguları 80'lerin başlarında dalgacık teorisine büyük destek verdi. Bir sonraki büyük sonuç, filtre bantları teorisindeki teknikler, yani dörtlü ayna filtreleri (QMF) ile birlikte aşağı örnekleme filtre bantları kullanılarak DWT'nin çok verimli bir şekilde hesaplanabilmesidir (buna bazen FWT [hızlı WT] de denir). Özel QMF'ler oluşturarak, karşılık gelen DWT, bugün DWT'leri hesaplamak için en son teknoloji algoritması olan filtreleme ve altörnekleme yoluyla hesaplanabilir. DWT'yi hesaplamak için ölçekleme işlevine ihtiyacınız yoktur, sadece FWT işleminin bir uygulama detayıdır.

Uygulama tarafı ile ilgili olarak, CWT daha ince taneli çözünürlüğü nedeniyle sinyal veya zaman serisi analizi için daha ideal bir adaydır ve genellikle birçok görevde (örneğin tekillik tespiti) seçilir. DWT, hızlı yedeksiz dönüşümler bağlamında daha fazla ilgi çekicidir. DWT, çok iyi bir enerji kompaktlamasına sahiptir ve bu nedenle kayıplı sıkıştırmalar ve sinyal iletimleri için iyi bir adaydır.


Umarım bu şeyleri açıklığa kavuşturur.


Adlandırma hakkındaki tarihsel perspektif ve açıklama için Andre'ye teşekkür ederiz. Bu isimlerden kaynaklanan karışıklıklar yüzünden tam olarak mücadele ediyorum!
Yanshuai Cao

Merhaba, açıkladığınızı gösteren makalelere bağlantı verebilir misiniz? Özellikle 2. paragrafınızla ilgileniyorum, yani Daubechies'in DWT'nin ikili bir ızgarada nasıl tamamlandığını gösterdiği ve CWT'yi yeniden üretilebilir bir çekirdek kullanarak yeniden oluşturabilir
yannick

6

Dalgacıklar alanında çok yaygın ama talihsiz bir yanlış kavrama, "Sürekli Dalgacık Dönüşümleri" nin kötü terim terminolojisiyle ilgilidir.

İlk şey: Sürekli Dalgacık Dönüşümü (CWT) ve Ayrık Dalgacık Dönüşümü (DWT), bir bilgisayara kolayca uygulanabilen noktadan noktaya, dijital dönüşümlerdir.

Dalgacık bağlamında bir "Sürekli" Dönüşüm ile bir "Kesikli" Dönüşüm arasındaki fark:

1) Bir sinyali dalgacınızla çapraz ilişkilendirdiğinizde atlanan örnek sayısı.

2) Dalgacınızı genişlettiğinizde atlanan örnek sayısı.

3) CWT yalnızca bir dalgacık kullanırken, DWT hem dalgacık hem de ölçek-izin kullanır. (Bu tartışma için önemli değil, tamlık için burada).

Ancak hata yapmayın - tıpkı bir DWT gibi bir CWT her zaman ayrı, dijital bir işlemdir.

Bu örnek bunu açıklasın: Haar Dalgacını düşünün [1 -1]. Haar Wavelet ile bir DWT yapmak istediğimizi söyleyelim. Böylece sinyalinizi, Haar ana dalgacıyla [1 -1], ancak sadece ikili gecikmelerde kıvırırsınız. Örneğin, sinyalinizin aşağıdaki vektör olduğunu söyleyelim:

x=[1 2 3 4 5 6 7 8]

Haar Dalgacınız ile DWT evrişiminin ilk sonucu:

1(-1)+2(1)

3(-1)+4(1)

Bir sonraki:

5(-1)+6(1)

Ve son olarak sonuncusu:

7(-1)+8(1)

Bir şey sana tuhaf geliyor mu? Sinyalin dalgacık ile konvülsiyonunu al dedim - peki nasıl olur da sadece dört değerle sonuçlanırım? Ben olmasıdır atlamak ben DWT ile helezonlar yaptığınızda örnekleri. Önce [1], bir nokta ürünü yaptım ve sonra [3 4] aldım. [2 3] 'e ne oldu? Ben atladım.

Ne zaman atlamıyorsun? Bir CWT yaptığınızda. Eğer bir CWT yapmış olsaydınız, Haar dalgacısıyla sinyalin 'normal' dijital dönüşümü olurdu.


İkinci şey, dalgacınızı genişletme şeklidir. Üst örnekte, Haar Dalgacı ilk seviye ayrışma için [1-1] dir. İkinci düzeyde, DWT Haar Dalgacık [1 1 -1 -1] olur. Bununla birlikte, CWT'de, ikinci seviye Haar dalgacı [1 -1] 'dir. Bir kez daha, DWT'de, nokta için noktayı genişletmiyorum - asla üç uzunluklu bir dalgacım yok. Ancak, CWT'de, uzunluk 2'den uzunluk 3'e giderim. DWT'de doğrudan uzunluk 2'den uzunluk 4'e gittim.

Bu uzun ve kısa, umarım bu yardımcı oldu.


1
Herhangi bir Wavelet dönüşümünün (CWT veya DWT) DSP gerçekleştirilmesinde, uygulamanın ayrı bir dalgacık fonksiyonu ile (DFT'nin formüle edilmesine benzer şekilde) nokta nokta ayrık olarak yapılması muhtemel olsa da, CWT'nin matematiksel tanımı süreklidir. DWT'nin ayrık veriler için geliştirilmiş sürümleri vardır, bu nedenle bazı DWT uygulamaları tanım gereği kesindir. Bir CWT'nin herhangi bir uygulaması, sürekli bir dalgacık fonksiyonu ile bir süreklilik işlemi (entegrasyon) ayrı bir işleme dönüştürülerek ulaşılan bir yaklaşımdır.
user2718

@BruceZenone Kesinlikle ve tanım kesinlikle bağlamdan alır. "CWT" hakkında konuşan iki matematikçi, integrallerle sürekli sürüm anlamına gelirken, uygulama hakkında mussing yapan iki mühendis "CWT" ve ayrı sürüm anlamına gelir (DWT ile aynı değildir), OP'nin kafası karışık.
Spacey

Yeterince doğru. Sürekli işlemlerin / işlevlerin ayrık işleme dünyasına nasıl dönüştürüldüğünün ayrıntılarını görmek için DSP için iyi belgelenmiş bir CWT uygulamasının (diyelim Morlet) görmek istiyorum. DFT ve Fourier dönüşümlerinin matematiksel olarak konuşan oldukça farklı canavarlar olduğuna dikkat edin.
user2718
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.