Example program of ICASSP2010 proceedings: MUSIC DEREVERBERATION USING HARMONIC STRUCTURE SOURCE MODEL AND WIENER FILTER.
The author is using Mac OS 10.11, Python2.7 on Anaconda. Cython is also used for fast numerical computation.
-
Install homebrew (see: https://brew.sh/)
-
Install pyenv
$ brew install pyenv $ echo 'export PYENV_ROOT="${HOME}/.pyenv"' >> ~/.bash_profile $ echo 'export PATH="${PYENV_ROOT}/bin:$PATH"' >> ~/.bash_profile $ echo 'eval "$(pyenv init -)"' >> ~/.bash_profile
-
Install Anaconda 2.7
pyenv install anaconda2-4.1.1 pyenv global anaconda2-4.1.1
-
Install CMake (see: https://cmake.org/download/)
-
Build Cython C++ extension.
cmake ./ make
(If you see errors, please check how CMakeLists.txt works)
-
Prepare sample *.wav file and execute entry python script.
python prg/icassp2010.py sample.wav
Two output files will be generated. Both are given by inverse STFT of dereverberated spectrogram.
- sample_derev: dereverberated signal by using inverse linear filtering, which is mentioned at the last of section 2.2 in the proceedings
- sample_derev_wiener: dereverberated signal by using the proposed Wiener filtering, which is mentioned at section 3.1 in the proceedings