Ibu mana yang wavelet untuk skalogram?

8

Saya mencoba membuat skalogram waktu nyata (dari sinyal 1 dimensi) dengan gaya spektogram;

Melihat melalui berbagai makalah + buku; wavelet Gabor, atau Morlet kompleks tampaknya disukai untuk menjaga hubungan yang dekat dengan frekuensi.

Meskipun saya berharap untuk menggunakan wavelet bernilai nyata meskipun karena masalah kompleksitas komputasi ... wavelet apa yang akan direkomendasikan?

daurnimator
sumber
Saya tidak perlu memahami ini, tapi mungkin Anda bisa mendapatkan jawaban Anda dari kode sumber untuk ini, yang menghasilkan output yang Anda inginkan, meskipun tidak secara real-time: phy.uct.ac.za/courses/python/examples/ Wavelets.py flic.kr/p/7oXfbT
endolith

Jawaban:

3

Ibu wavelet skalogram Anda harus memiliki bentuk yang mirip dengan bentuk puncak biasa yang ingin Anda deteksi (saya kira Anda menggunakannya untuk mendeteksi puncak sinyal Anda). Namun, saya ingin bertanya kepada Anda untuk apa Anda menggunakan wavelet? Saya bisa memberikan jawaban yang lebih spesifik untuk pertanyaan Anda.

Luis Andrés García
sumber
1
Saya pada dasarnya ingin membuat spektrogram menggunakan wavelet, bukan STFT. Jadi 'bentuk' yang ingin saya deteksi hanya akan berupa sinusoid, kurasa ...
daurnimator
Saya akan menggunakan fungsi bentuk yang sama g (t) di wavelet daripada di STFT. Anda bisa menemukan perbedaan antara kedua transformasi ini di Doc .
Luis Andrés García
Apakah maksud Anda (misalnya) jika saya menginginkan sesuatu seperti STFT menggunakan jendela Hamming; wavelet saya harus menjadi jendela Hamming termodulasi?
daurnimator
1
itu dia. Ibu wavelet (fungsi bentuk) harus serupa dalam kedua kasus.
Luis Andrés García
Apakah itu memerlukan jendela yang rumit? (di mana nilai absolutnya adalah = ke jendela hamming) Atau bisakah saya lepaskan saja komponen imajiner?
daurnimator
2

Sayangnya ini untuk sinyal 2D (analisis gambar), tapi saya yakin kesimpulannya juga berlaku untuk sinyal 1D. JF Kirby, "wavelet mana yang paling baik mereproduksi spektrum kekuatan Fourier?", Computers & Geosciences 31 (2005) 846–864

Pada dasarnya, kesimpulannya adalah untuk pergi dengan wavelet Fan, yang merupakan versi rotasi 2D dari wavelet Morlet. Dalam 1D, saya akan menyarankan Morlet yang kompleks. Ini adalah campuran dari bagian nyata dan kompleks yang memungkinkan kesamaan yang baik dengan spektrum daya Fourier.

Dalam presisi yang lebih baik, di sini seperti apa bentuknya, dikonversi ke 1D dari Kirby (2005): mana adalah skala yang Anda lihat, dan adalah konstanta yang dipilih untuk memberikan yang terbaik "sampling skala" vs "sampling frekuensi". Saya tidak memasukkan konstanta normalisasi karena dalam setiap situasi komputasi, lebih baik membagi panjang gelombang akhir dengan nilai maksimumnya, dan kurangi rata-rata. Ini memberikan hasil yang hampir sama dengan sedikit sakit kepala.

Ψ=exp(ik0xλx22λ2),
λk0=5.336

Pada dasarnya, wavelet Morlet yang kompleks adalah gelombang "transformasi" Fourier ( ) yang dibatasi oleh kernel Gaussian ( ). Saya menduga Anda mungkin mendapatkan spektrum daya yang baik hanya menggunakan bagian nyata (menggunakan ), tetapi Anda akan kehilangan informasi fase.exp(ik0x/λ)exp(x2/2)cos(x)exp(x2/2)

Coba bandingkan spektrum yang diperoleh dari transformasi Fourier, dari Morlet kompleks dan dari Morlet nyata. Berhati-hatilah terhadap normalisasi buruk / non-standar yang ditemukan di banyak algoritma FFT.

PhilMacKay
sumber
Seperti disebutkan dalam pertanyaan; Saya membutuhkan nilai wavelet nyata. Saya akhirnya pergi dengan FWIW meyer diskrit.
daurnimator
Tentu saja, jika Anda tidak dapat menggunakan nilai kompleks dalam perhitungan Anda, wavelet Morlet kehilangan beberapa daya tariknya ... Namun, matematika tidak jauh lebih kompleks, jadi ketika memori dan daya komputasi bukan merupakan faktor pembatas, saya sarankan untuk pergi dengan Morlet. Salah satu teman / kolega saya membuat dirinya sendiri sebuah program untuk membandingkan, dan jika Anda mengambil nilai rata-rata dari transformasi wavelet pada setiap skala, Anda akan mendapatkan salinan yang tepat dari spektrum daya Fourier. Sayangnya, dia belum mempublikasikan hasilnya, jadi saya tidak punya sumber untuk mengutip (di samping Kirby (2005)).
PhilMacKay
0

Meyer yang diskrit adalah pilihan akhir saya; ini memberikan pemisahan sub-band yang relatif bersih.

daurnimator
sumber