Mengapa orang menggunakan jendela Hann atau Bartlett?

9

Misalkan kita sedang merancang filter FIR low-pass, dan saya ingin menggunakan salah satu dari tiga jendela ini: Bartlett, Hann atau Hamming. Dari Pemrosesan Sinyal Diskret-Waktu Oppenheim & Schafer , 2nd Ed , hlm. 471:}

masukkan deskripsi gambar di sini

Ketiganya memberikan lebar pita transisi yang sama:

Δω=8πN
dimana N adalah urutan filter dan dianggap cukup besar.

Namun, overshoot (sebut saja itu δ) berbeda untuk setiap jendela, ketidaksamaan berikut berlaku:

δHSebuahmmsayang<δHSebuahnn<δBSebuahrtlett

Jadi jika kita menggunakan jendela Hamming, kita mendapatkan overshoot terkecil dan pita transisi dengan lebar Δω. Jika kita menggunakan salah satu dari dua jendela lainnya, lebar pita transisi adalah sama, tetapi peningkatan overshoot.

Ini membuat saya berpikir bahwa tidak ada kasus di mana seseorang akan menggunakan Hann atau jendela Bartlett, karena yang Hamming lebih baik daripada mereka: itu meningkatkan satu aspek (δ), tetap sama di tempat lain (Δω).

Pertanyaannya adalah: mengapa seseorang memilih Hann atau jendela Bartlett jika Hamming selalu dapat digunakan?

Tendero
sumber
Bisakah Anda memberikan klarifikasi - apakah Anda memiliki referensi untuk persamaan itu? Apa yang Anda maksud dengan "overshoot" dalam konteks ini?
Martin Thompson
@ MartinThompson Saya baru saja menambahkan referensi. Yang saya maksud dengan overshoot adalah puncak dari respons frekuensi karena diskontinuitas dari filter low-pass yang ideal yang orang coba perkirakan.
Tendero

Jawaban:

10

Dalam mengkaji Angka-angka Merit dari Merit untuk berbagai jendela (Tabel 1 dalam tautan ini ), Hamming dibandingkan dengan Hanning (Hann) pada berbagai nilaiα dan dari situ jelas bahwa Hanning akan memberikan penolakan stopband yang lebih besar (The Hann klasik ada bersama α=2dan dari tabel sisi-lobus jatuh -18 dB per oktaf). Saya memberikan tautan karena Anda dapat melihat lebih banyak pertimbangan yang terlibat ketika memilih jendela untuk berbagai aplikasi.

Hasil ini jelas ketika membandingkan kernel untuk 51 sampel Hann dan jendela Hamming menggunakan Matlab / Oktaf. Perhatikan level sidelobe pertama yang lebih tinggi dengan Hann tetapi secara keseluruhan penolakan lebih besar secara keseluruhan:

Kernel

Secara pribadi, saya tidak akan menggunakan jendela untuk desain filter. Jika ada jendela, saya akan menggunakan jendela Kaiser, atau lebih disukai firls. Lihat desain Filter FIR: Window vs Parks-McClellan dan Least-Squares untuk diskusi terkait.

Saya menggabungkan 26 sampel Hann dengan 26 Hamming untuk menghasilkan 51 sampel alternatif "Hann-Hamming" dengan hasil sebagai berikut:

komparatif komparatif Hann-Hamming, Hann, Hamming

PEMBARUAN: Hann-Hamming ini (umumnya) tidak menampilkan jendela Kaiser dengan lebar lobus utama yang serupa:

Hann-Hamming vs Kaiser

Saya kemudian mencoba apa yang saya sebut "SuperKaiser" di mana saya melilitkan dua jendela Kaiser yang lebih pendek untuk menghasilkan jendela ketuk 51 alternatif dengan hasil sebagai berikut. Hal ini dilakukan dengan menggabungkan Kaiser (26,5.5) dengan Kaiser (26,5,5) sehingga SuperKaiser (51,5,5) = conv (kaiser (26,5,5), kaiser (26,5,5). Sekilas tampaknya secara umum mengungguli kaiser (51,12), cocok dengan lebar lobus utama dan memberikan penolakan stopband superior atas sebagian besar stopband.Integrasi total stopband noise dengan asumsi AWGN menarik untuk melihat apakah jendela baru ini lebih unggul dalam kondisi itu (Apakah area relatif di bawah dua sidelobes pertama di mana SuperKaiser lebih rendah benar-benar mengimbangi semua peningkatan stopband yang tersisa?). Jika saya punya waktu saya akan menambahkan penilaian itu. Menarik! Seperti yang diceritakan oleh @A Citizen Concerned Citizen dengan cerdas,

SuperKaiser

Dan Boschen
sumber
Hai Dan, terima kasih atas jawaban Anda. Meja itu memiliki sesuatu yang terlihat aneh bagiku. Saya percaya bahwa jendela Hann didefinisikan secara univokal . Dalam makalah itu, tampaknya ia memiliki parameter variabelα. Dari mana asalnya? Jika kita berbeda-bedaα, apakah jendela masih berfungsi sebagai Hann?
Tendero
@Tendero fred harris menjelaskan secara rinci di halaman 181 di bagian tautan C untuk CHaisα(X) jendela, dan di sana dia mengatakan jendela Hann khusus dengan α=2. Saya membuatnya lebih jelas dalam jawabannya, terima kasih!
Dan Boschen
@Tendero Jadi intinya, apa yang saya pikir hilang dari tabel referensi Anda tetapi pertimbangan penting adalah sisi-lobus jatuh. Ini menjadi perhatian khusus dengan aplikasi multisampling karena mungkin ada banyak band alias lipat, sehingga roll-off cepat membantu meminimalkan pertumbuhan kebisingan. Juga dalam kepentingan meminimalkan kebisingan secara keseluruhan di hadapan AWGN (hanya) roll-off lebih cepat dengan mengorbankan lobus pertama yang lebih tinggi biasanya akan menang.
Dan Boschen
Perbandingan yang menarik itu membuat saya mengulanginya, tetapi saya tidak bisa mendapatkan hasil yang sama. Lalu saya melihat lebih dekat dan sepertinya Anda tidak cocok dengan parameter Kaiser. Menggunakan Asdesain, aku sangat dekat dengan As=108.5untuk N=32dan N[hann]=17, N[ham]=16, tapi sidelobes dari jendela convolved tidak sama dan mereka bergetar di atas Kaiser. Saya telah melihat orang "berbaur" dua jendela, atau lebih, tetapi baik sebagai aritmatika atau rata-rata geometris, tidak pernah berbelit-belit. Meski begitu, hasilnya mengesankan.
warga negara yang peduli
@aconcernedcitizen Ya ada sesuatu yang tidak beres tentang itu dan memang saya menggunakan terlalu cepat 30 dan 31 untuk membuat jendela "51" tap "setara": Apa yang saya lakukan adalah membandingkan sampel 60 sampel dengan Kaiser 51 tap - Tidak adil! Saya memperbarui pos dengan menggabungkan 26 dan 26 yang menghasilkan 51 sampel yang kemudian akan menjadi perbandingan yang adil, dan tentu saja Kaiser tampaknya menang untuk kinerja keseluruhan (walaupun saya tidak melalui kebisingan total stopband terintegrasi). Konvolusi tampaknya merupakan pilihan alami karena menghasilkan multiplikasi respons frekuensi, setara dengan cascading dua jendela.
Dan Boschen
2

Jika ada penyerang dengan pengetahuan tentang jendela dan mencoba memfokuskan spektrum noise untuk meminimalkan S / N Anda, maka solusi minimax, seperti jendela Hamming, mungkin merupakan penghitung yang optimal.

Kebanyakan noise cenderung tidak begitu berbahaya, menjadikan solusi minimax kurang optimal, setidaknya secara statistik.

hotpaw2
sumber