https://github.com/fgnt/nara_wpe
Different implementations of "Weighted Prediction Error" for speech dereverberation
Science Score: 41.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
○.zenodo.json file
-
○DOI references
-
✓Academic publication links
Links to: ieee.org -
✓Committers with academic emails
3 of 11 committers (27.3%) from academic institutions -
✓Institutional organization owner
Organization fgnt has institutional domain (nt.uni-paderborn.de) -
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (15.5%) to scientific vocabulary
Keywords
Keywords from Contributors
Repository
Different implementations of "Weighted Prediction Error" for speech dereverberation
Basic Info
- Host: GitHub
- Owner: fgnt
- License: mit
- Language: Python
- Default Branch: master
- Size: 3.86 MB
Statistics
- Stars: 534
- Watchers: 18
- Forks: 165
- Open Issues: 12
- Releases: 0
Topics
Metadata Files
README.rst
========
nara_wpe
========
.. image:: https://readthedocs.org/projects/nara-wpe/badge/?version=latest
:target: http://nara-wpe.readthedocs.io/en/latest/
:alt: Documentation Status
.. image:: https://github.com/fgnt/nara_wpe/actions/workflows/tests.yml/badge.svg?branch=master
:target: https://github.com/fgnt/nara_wpe/actions/workflows/tests.yml
:alt: Tests
.. image:: https://img.shields.io/pypi/v/nara-wpe.svg
:target: https://pypi.org/project/nara-wpe/
:alt: PyPI
.. image:: https://img.shields.io/pypi/dm/nara-wpe.svg
:target: https://pypi.org/project/nara-wpe/
:alt: PyPI
.. image:: https://img.shields.io/badge/license-MIT-blue.svg
:target: https://raw.githubusercontent.com/fgnt/nara_wpe/master/LICENSE
:alt: MIT License
Weighted Prediction Error for speech dereverberation
====================================================
Background noise and signal reverberation due to reflections in an enclosure are the two main impairments in acoustic
signal processing and far-field speech recognition. This work addresses signal dereverberation techniques based on WPE for speech recognition and other far-field applications.
WPE is a compelling algorithm to blindly dereverberate acoustic signals based on long-term linear prediction.
The main algorithm is based on the following paper:
Yoshioka, Takuya, and Tomohiro Nakatani. "Generalization of multi-channel linear prediction methods for blind MIMO impulse response shortening." IEEE Transactions on Audio, Speech, and Language Processing 20.10 (2012): 2707-2720.
Content
=======
- Iterative offline WPE/ block-online WPE/ recursive frame-online WPE
- All algorithms implemented both in Numpy and in TensorFlow (works with version `1.12.0`).
- Continuously tested with Python 3.7, 3.8, 3.9 and 3.10.
- Automatically built documentation: `nara-wpe.readthedocs.io `_
- Modular design to facilitate changes for further research
Installation
============
Install it directly with Pip, if you just want to use it:
.. code-block:: bash
pip install nara_wpe
If you want to make changes or want the most recent version: Clone the repository and install it as follows:
.. code-block:: bash
git clone https://github.com/fgnt/nara_wpe.git
cd nara_wpe
pip install --editable .
Check the `example notebook `_ for further details.
If you download the example notebook, you can listen to the input audio examples and to the dereverberated output too.
Citation
========
To cite this implementation, you can cite the following paper::
@InProceedings{Drude2018NaraWPE,
Title = {{NARA-WPE}: A Python package for weighted prediction error dereverberation in {Numpy} and {Tensorflow} for online and offline processing},
Author = {Drude, Lukas and Heymann, Jahn and Boeddeker, Christoph and Haeb-Umbach, Reinhold},
Booktitle = {13. ITG Fachtagung Sprachkommunikation (ITG 2018)},
Year = {2018},
Month = {Oct},
}
To view the paper see
`IEEE Xplore `__ (`PDF `__)
or for a preview see `Paderborn University RIS `__ (`PDF `__).
Comparision with the NTT WPE implementation
===========================================
The fairly recent John Hopkins University paper (Manohar, Vimal: `Acoustic Modeling for Overlapping Speech Recognition: JHU CHiME-5 Challenge System `_, ICASSP 2019) reporting on their CHiME 5 challenge results dedicate an entire table to the comparison of the Nara-WPE implementation and the NTT WPE implementation.
Their result is, that the Nara-WPE implementation is as least as good as the NTT WPE implementation in all their reported conditions.
Development history
====================
Since 2017-09-05 a TensorFlow implementation has been added to `nara_wpe`.
It has been tested with a few test cases against the Numpy implementation.
The first version of the Numpy implementation was written in June 2017 while
Lukas Drude and Kateřina Žmolíková resided in Nara, Japan. The aim was to have
a publicly available implementation of Takuya Yoshioka's 2012 paper.
Owner
- Name: Department of Communications Engineering University of Paderborn
- Login: fgnt
- Kind: organization
- Location: Paderborn, Germany
- Website: http://nt.uni-paderborn.de
- Repositories: 37
- Profile: https://github.com/fgnt
GitHub Events
Total
- Issues event: 2
- Watch event: 45
- Issue comment event: 1
- Push event: 1
- Pull request event: 1
- Fork event: 2
Last Year
- Issues event: 2
- Watch event: 45
- Issue comment event: 1
- Push event: 1
- Pull request event: 1
- Fork event: 2
Committers
Last synced: 5 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Christoph Boeddeker | c****j@m****e | 70 |
| Lukas Drude | m****l@l****e | 70 |
| danielha | d****r@g****e | 44 |
| Lukas Drude | l****e@m****e | 17 |
| danielhkl | d****a@m****e | 11 |
| Jahn Heymann | h****n@n****e | 8 |
| sibange | s****e@m****e | 7 |
| Christoph Boeddeker | b****r@u****m | 6 |
| Juan Azcarreta | j****o@g****m | 4 |
| jheymann85 | j****n@g****m | 3 |
| Allan | l****c@1****m | 2 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 7 months ago
All Time
- Total issues: 38
- Total pull requests: 39
- Average time to close issues: 2 months
- Average time to close pull requests: 28 days
- Total issue authors: 32
- Total pull request authors: 9
- Average comments per issue: 2.71
- Average comments per pull request: 0.69
- Merged pull requests: 33
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 1
- Pull requests: 2
- Average time to close issues: about 4 hours
- Average time to close pull requests: 7 days
- Issue authors: 1
- Pull request authors: 1
- Average comments per issue: 1.0
- Average comments per pull request: 0.0
- Merged pull requests: 2
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- Sciss (4)
- YongyuG (2)
- sw005320 (2)
- asadullah73-ce (2)
- 0ifeng0 (1)
- Rodolfo-S (1)
- pzelasko (1)
- MMingabc (1)
- xdcesc (1)
- khejd (1)
- djo-koconi (1)
- maelp (1)
- benbro (1)
- gralear (1)
- liziru (1)
Pull Request Authors
- boeddeker (20)
- danielhkl (13)
- jazcarretao (2)
- sibange (2)
- lzljbsc (2)
- khejd (2)
- LukasDrude (1)
- TeaPoly (1)
- jackdeadman (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 2
-
Total downloads:
- pypi 20,806 last-month
- Total docker downloads: 157
-
Total dependent packages: 4
(may contain duplicates) -
Total dependent repositories: 8
(may contain duplicates) - Total versions: 13
- Total maintainers: 4
pypi.org: nara-wpe
Weighted Prediction Error for speech dereverberation
- Homepage: https://github.com/fgnt/nara_wpe
- Documentation: https://nara-wpe.readthedocs.io/
- License: MIT
-
Latest release: 0.0.11
published over 1 year ago
Rankings
Maintainers (3)
spack.io: py-nara-wpe
Background noise and signal reverberation due to reflections in an enclosure are the two main impairments in acoustic signal processing and far-field speech recognition. This work addresses signal dereverberation techniques based on WPE for speech recognition and other far-field applications. WPE is a compelling algorithm to blindly dereverberate acoustic signals based on long-term linear prediction.
- Homepage: https://github.com/fgnt/nara_wpe
- License: []
-
Latest release: 0.0.7
published over 3 years ago
Rankings
Maintainers (1)
Dependencies
- bottleneck *
- click *
- numpy *
- pathlib2 *
- soundfile *
- tqdm *
- actions/checkout v2 composite
- actions/setup-python v2 composite