This web companion page contains Matlab scripts
related to the paper J. Rämö, V. Välimäki, and B. Bank "HighPrecision Parallel Graphic Equalier" submitted to the
IEEE/ACM Transactions on Audio, Speech and Language Processing.
Abstract 
This paper proposes a highprecision graphic equalizer based on secondorder 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 fixedpole design of the proposed parallel graphic equalizer avoids this problem, since the parallel secondorder 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 noniterative 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 noniterative 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 secondorder RegaliaMitra 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 fixedpole 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 secondorder 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 secondorder 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:


