|
# Resemble Enhance |
|
|
|
|
|
|
|
|
|
[](https://www.resemble.ai/enhance/) |
|
|
|
https://github.com/resemble-ai/resemble-enhance/assets/660224/bc3ec943-e795-4646-b119-cce327c810f1 |
|
|
|
Resemble Enhance is an AI-powered tool that aims to improve the overall quality of speech by performing denoising and enhancement. It consists of two modules: a denoiser, which separates speech from a noisy audio, and an enhancer, which further boosts the perceptual audio quality by restoring audio distortions and extending the audio bandwidth. The two models are trained on high-quality 44.1kHz speech data that guarantees the enhancement of your speech with high quality. |
|
|
|
## Usage |
|
|
|
### Installation |
|
|
|
Install the stable version: |
|
|
|
```bash |
|
pip install resemble-enhance --upgrade |
|
``` |
|
|
|
Or try the latest pre-release version: |
|
|
|
```bash |
|
pip install resemble-enhance --upgrade --pre |
|
``` |
|
|
|
### Enhance |
|
|
|
``` |
|
resemble_enhance in_dir out_dir |
|
``` |
|
|
|
### Denoise only |
|
|
|
``` |
|
resemble_enhance in_dir out_dir --denoise_only |
|
``` |
|
|
|
### Web Demo |
|
|
|
We provide a web demo built with Gradio, you can try it out [here](https://huggingface.co/spaces/ResembleAI/resemble-enhance), or also run it locally: |
|
|
|
``` |
|
python app.py |
|
``` |
|
|
|
## Train your own model |
|
|
|
### Data Preparation |
|
|
|
You need to prepare a foreground speech dataset and a background non-speech dataset. In addition, you need to prepare a RIR dataset ([examples](https://github.com/RoyJames/room-impulse-responses)). |
|
|
|
```bash |
|
data |
|
βββ fg |
|
βΒ Β βββ 00001.wav |
|
βΒ Β βββ ... |
|
βββ bg |
|
βΒ Β βββ 00001.wav |
|
βΒ Β βββ ... |
|
βββ rir |
|
Β Β βββ 00001.npy |
|
Β Β βββ ... |
|
``` |
|
|
|
### Training |
|
|
|
#### Denoiser Warmup |
|
|
|
Though the denoiser is trained jointly with the enhancer, it is recommended for a warmup training first. |
|
|
|
```bash |
|
python -m resemble_enhance.denoiser.train --yaml config/denoiser.yaml runs/denoiser |
|
``` |
|
|
|
#### Enhancer |
|
|
|
Then, you can train the enhancer in two stages. The first stage is to train the autoencoder and vocoder. And the second stage is to train the latent conditional flow matching (CFM) model. |
|
|
|
##### Stage 1 |
|
|
|
```bash |
|
python -m resemble_enhance.enhancer.train --yaml config/enhancer_stage1.yaml runs/enhancer_stage1 |
|
``` |
|
|
|
##### Stage 2 |
|
|
|
```bash |
|
python -m resemble_enhance.enhancer.train --yaml config/enhancer_stage2.yaml runs/enhancer_stage2 |
|
``` |
|
|
|
## Blog |
|
|
|
Learn more on our [website](https://www.resemble.ai/enhance/)! |
|
|