Bagaimana Cara Meningkatkan Kinerja Filter Paling Rendah (LMS) / NLMS?

14

Apakah ada cara untuk meningkatkan kinerja komputasi dari filter kuadrat terkecil dinormalisasi (NLMS)? Filter-domain frekuensi blok multidelay (MDF) telah diusulkan untuk melakukan ini, tetapi filter-filter tersebut juga menghilangkan kecepatan dan akurasi konvergensi, karena filter hanya memperbarui respons impuls yang diperkirakan satu kali setiap blok, tidak setiap sampel. Apakah ada metode lain?

Phonon
sumber

Jawaban:

6

Jika Anda ingin menerapkan algoritma NLMS "standar" tanpa memotong sudut, maka Anda mungkin tidak akan menemukan struktur yang secara signifikan lebih efisien. Blok bentuk penyaringan LMS bertujuan untuk menggunakan teknik konvolusi cepat (seperti overlap-save atau overlap-add) untuk mempercepat bagian proses tersebut. Namun, seperti yang Anda perhatikan, koefisien filter hanya diperbarui per blok, karena filter harus konstan di atas blok untuk menggunakan pendekatan konvolusi cepat.

Sifat NLMS yang sangat rekursif akan membatasi Anda jika Anda ingin mempertahankan karakteristik pembaruan sampel-per-sampel. Sementara tindakan penyaringan adalah non-rekursif, koefisien filter pada waktu instan N adalah fungsi dari koefisien pada waktu instan N-1, yang membatasi kemampuan Anda untuk mempercepat proses dengan menggunakan paralelisme atau perhitungan berorientasi blok. Seperti dalam kebanyakan kasus, tidak ada makan siang gratis: jika Anda ingin NLMS murni, Anda sebaiknya menerapkannya saja.

Jason R
sumber