Applies to version: 1.0.0

View the code

Go to function

KING2019 - Modulation filterbank (based on nonlinear processing)


outsig = king2019(insig,fs,basef)
[outsig, fc, mfc, step] = king2019(insig,fs,varargin)
[outsig, fc, mfc, step]= king2019(insig,fs,flow,fhigh,parameters)


Input parameter:
insig : input acoustic signal. fs : sampling rate (Hz). basef : base frequency of the analysis (Hz).
Output parameter:
outsig : output signal fc : center frequencies filterbank mfc : center frequencies modulation filterbank step : struct containing intermediate model outputs

king2019(insig,fs,basef) computes the internal representation around the frequency basef of the signal insig sampled with a frequency of fs Hz. outsig is a matrix of size [length fc mfc].

[outsig,fc,mfc,step]=king2019(...) additionally returns the centre frequencies of the filter bank and the center frequencies of the modulation filterbank, and 'steps' is a structure containing the intermediate model outputs.

The model consists of the following stages:

  1. a gammatone filter bank with 1-erb spaced filtes.
  2. a compression (exponential or broken-stick) stage applied to each individual gammatone filter. In these stages is extremely relevant to use the correct calibration level (default is dboffset = 100), given that the keyval 'compression_knee_dB' is referenced to the dboffset. Note that if other dboffset values are used (e.g., dboffset=94 dB), the knee point will in fact start compressing at higher levels.

  3. an envelope extraction stage done by half-wave rectification followed by low-pass filtering to 1500 Hz.
  4. an simplified adaptation stage simulated as a first-order high-pass filter
  5. a modulation filterbank

Many parameters (keyvals) and flags can be optionally changed and/or switched


A. King, L. Varnet, and C. Lorenzi. Accounting for masking of frequency modulation by amplitude modulation with the modulation filter-bank concept. J. Acoust. Soc. Am., 145(2277), 2019. [ www: ]