This web companion page contains Matlab scripts
related to the paper J. Rämö, V. Välimäki, and B. Bank "High-Precision Parallel Graphic Equalier" submitted to the
IEEE/ACM Transactions on Audio, Speech and Language Processing.
Abstract |
This paper proposes a high-precision graphic equalizer based on second-order parallel filters. Previous graphic equalizers suffer from interaction between the adjacent band filters, especially at high gain values, which can lead to substantial errors in the magnitude response. The fixed-pole design of the proposed parallel graphic equalizer avoids this problem, since the parallel second-order filters are optimized jointly. When the number of the pole frequencies is twice the number of the command points of the graphic equalizer, the proposed non-iterative design matches the target curve with a high precision. In the three example cases presented in this paper, the proposed parallel equalizer clearly outperforms other non-iterative graphic equalizer designs while its maximum global error is as low as 0.00–0.75 dB when compared to the target curve. While the proposed design has superior accuracy, the number of operations in the filter structure is increased only by 23 % when compared to the second-order Regalia-Mitra structure. The parallel structure also enables the utilization of parallel computing hardware, which can nowadays easily outperform the traditional serial processing. The proposed graphic equalizer can be widely used in audio signal processing applications.
|
Matlab scripts |
Original Matlab codes and additional information about the fixed-pole parallel filter design can be found at http://home.mit.bme.hu/~bank/parfilt/
The Matlab scripts used in this paper:
- parfiltdesfr - Direct design of second-order parallel filters for a given pole set in the frequency domain
- freqpoles - Pole set generation for parallel filter design
- minphasen - Calculates the transfer function of a minimum phase system from its magnitude by Hilbert transform
- parfiltfresp - Computing the frequency response of second-order parallel filters
- parfilt - Filtering operation using the parallel filter structure
Example files that plot the figures shown in the paper and help understanding how to use the above functions:
All above example files in a single zip file:
|
|
|