Audio-WestlakeU / FullSubNet

PyTorch implementation of "FullSubNet: A Full-Band and Sub-Band Fusion Model for Real-Time Single-Channel Speech Enhancement."
https://fullsubnet.readthedocs.io/en/latest/
MIT License
538 stars 153 forks source link

Training and Preprocessing related #8

Open yugeshav opened 3 years ago

yugeshav commented 3 years ago

Hi,

I tried preparing DNS Sample data for 50hours and got clean, noise, noisy folders which contains audio data by running noisyspeech_synthesizer_singleprocess.py

As per the code in config/common/fullsubnet_train.toml it requires below text files. Is there any code available to generate these files from audio data?

[train_dataset] path = "dataset.DNS_INTERSPEECH_train.Dataset" clean_dataset = "~/Datasets/DNS-Challenge-INTERSPEECH/datasets/clean_0.6.txt" noise_dataset = "~/Datasets/DNS-Challenge-INTERSPEECH/datasets/noise.txt" rir_dataset = "~/Datasets/DNS-Challenge-INTERSPEECH/datasets/rir.txt"

Regards Yugesh

Beninmiao commented 3 years ago

I also have this problem.

Hi,

I tried preparing DNS Sample data for 50hours and got clean, noise, noisy folders which contains audio data by running noisyspeech_synthesizer_singleprocess.py

As per the code in config/common/fullsubnet_train.toml it requires below text files. Is there any code available to generate these files from audio data?

[train_dataset] path = "dataset.DNS_INTERSPEECH_train.Dataset" clean_dataset = "~/Datasets/DNS-Challenge-INTERSPEECH/datasets/clean_0.6.txt" noise_dataset = "~/Datasets/DNS-Challenge-INTERSPEECH/datasets/noise.txt" rir_dataset = "~/Datasets/DNS-Challenge-INTERSPEECH/datasets/rir.txt"

Regards Yugesh

I also have this problem.

gooran commented 2 years ago

Hi,

I tried preparing DNS Sample data for 50hours and got clean, noise, noisy folders which contains audio data by running noisyspeech_synthesizer_singleprocess.py

As per the code in config/common/fullsubnet_train.toml it requires below text files. Is there any code available to generate these files from audio data?

[train_dataset] path = "dataset.DNS_INTERSPEECH_train.Dataset" clean_dataset = "~/Datasets/DNS-Challenge-INTERSPEECH/datasets/clean_0.6.txt" noise_dataset = "~/Datasets/DNS-Challenge-INTERSPEECH/datasets/noise.txt" rir_dataset = "~/Datasets/DNS-Challenge-INTERSPEECH/datasets/rir.txt"

Regards Yugesh

Hi, Did you find those text files?

danielemirabilii commented 2 years ago

Hi, maybe I am late but it could always be useful since I had the same problem.

The .txt files are merely a list of files in the dataset folders (clean and noisy), so they should be created according to the content of your dataset. You can create a list of files using a bash script or simply the following commands in Linux/macos terminal. Here is my suggestion, assuming that your clean, noise and rir datasets are in a folder like ~/Datasets/DNS-Challenge-INTERSPEECH/datasets/clean, /noise and /rir:

cd ~/Datasets/DNS-Challenge-INTERSPEECH/datasets/clean find "$PWD” -type f -name “*.wav” > clean_0.6.txt

and same for the noise

cd ~/Datasets/DNS-Challenge-INTERSPEECH/datasets/noise find "$PWD” -type f -name “*.wav” > noise.txt

and RIRs

cd ~/Datasets/DNS-Challenge-INTERSPEECH/datasets/rir find "$PWD” -type f -name “*.wav” > rir.txt

Be careful: some datasets contain hidden files, e.g., ._clean_fileid_0675.wav. Be sure to not include them in the txt files or the training will stop during the first epoch.

gooran commented 2 years ago

Thank you. Very helpful.