Signal and Noise Generation

ANF Generator — Arbitrary Noise Fields

Generates multi-channel noise signals with a predefined spatial coherence function. Supports spherically isotropic, cylindrically isotropic, and Corcos (wind-noise) coherence models. The mixing matrix is obtained by Cholesky or eigenvalue decomposition; three post-processing methods (smooth, balanced, balanced+smooth) based on the unitary Procrustes solution improve spectral smoothness and mix balance. Suitable for generating babble speech, factory noise, and wind noise in multi-sensor configurations.

The Python implementation is available here and can be installed via pip install anf-generator. The MATLAB implementation is available here.

  1. D. Mirabilii, S.J. Schlecht, E.A.P. Habets, Generating coherence-constrained multisensor signals using balanced mixing and spectrally smooth filters, Journal of the Acoustical Society of America, 149:1425, 2021.

INF Generator — Isotropic Noise Fields

Generates sensor signals for an arbitrary one- or three-dimensional array that result from a spherically or cylindrically isotropic noise field. Implements the algorithms described in Habets and Gannot (2007) and the associated internal report (2010).

The MATLAB implementation is available here.

  1. E.A.P. Habets and S. Gannot, Generating sensor signals in isotropic noise fields, Journal of the Acoustical Society of America, 122(6):3464–3470, 2007.

Wind Noise Generator

Generates multi-channel artificial wind noise signals. The MATLAB implementation models the complex spatial coherence of wind noise using the Corcos model, which depends on inter-microphone distance, airstream direction, and free-field flow velocity. The Python implementation extends this with wind speed profile-dependent characteristics, making it particularly suitable for generating training data for deep learning-based wind noise reduction systems.

The Python implementation is available here. The MATLAB implementation is available here.

  1. D. Mirabilii and E.A.P. Habets, Simulating multi-channel wind noise based on the Corcos model, Proc. International Workshop on Acoustic Signal Enhancement (IWAENC), 2018.

Anechoic Interferer Dataset Generator

A Python utility for generating mixtures of random, anechoic, non-stationary noise signals. Intended for use as interferer signals in speech enhancement and noise suppression experiments. The accompanying dataset as described in [4] is availbale on Zenodo.

The Python implementation is available here.

  1. P. Goetz, C. Tuna, A. Walther and E.A.P. Habets, AID: Open-source anechoic interferer dataset, Proc. International Workshop on Acoustic Signal Enhancement (IWAENC), 2022.