Underwater single-channel acoustic source separation with unknown numbers using autoencoder nerual networks. Using keras-gpu 2.2.4 with tensorflow-gpu 1.12.0 backend.
This is the official code of the blow article. Please cite this work in your publications as :
@misc{sun2022source, title={Source Separation of Unknown Numbers of Single-Channel Underwater Acoustic Signals Based on Autoencoders}, author={Qinggang Sun and Kejun Wang}, year={2022}, eprint={2207.11749}, archivePrefix={arXiv}, primaryClass={cs.SD} }
1. Download and organize data files as "data_dir_tree.md". The official website of the shipsEar database is https://atlanttic.uvigo.es/underwaternoise/ . Users may contact the author David Santos Domínguez through email [email protected] to get the database. 2. Install dependent packages in the "requirements.txt" file. 3. Run prepare_data_shipsear_recognition_mix_s0tos3.py recognition_mix_shipsear_s0tos3_preprocess.py prepare_data_shipsear_separation_mix_s0tos3.py separation_mix_shipsear_s0tos3_preprocess.py to preprocess datas. 4. Experiments: (0) Known numbers of source separation with multiple autoencoders. train_separation_multiple_autoencoder.py (1) Known numbers of source separation with multiple output autoencoders. train_separation_known_number.py (2) Algorithm 1. train_separation_one_autoencoder.py (3) Algorithm 2. train_single_source_autoencoder_ns.py train_single_source_autoencoder_ns_search_encoded_dense.py (4) Algorithm 3. train_single_source_autoencoder_ns.py train_separation_one_autoencoder_freeze_decoder.py
Please cite the original work as :
Generative sourceseparation with GANs
Two-Step Sound Source Separation: Training on Learned Latent Targets
Dual-Path RNN for Single-Channel Speech Separation
Dual-Path RNN for Single-Channel Speech Separation (in Keras-Tensorflow2)
Conv-TasNet: Surpassing Ideal Time–Frequency Magnitude Masking for Speech Separation
conv-tasnet
Deep Learning for Blind Source Separation
Conv-TasNet
Conv-TasNet
Wave-U-Net
Wave-U-net-TF2
Sound Separation
bsseval