A voice spoofing detection system, based on ECAPA-TDNN. This project mainly follow these project. If you want do some research or improve the architecture, you can refer this repo. It provides the way of augment and some tips to train a more robust network.
First, clone the repository locally, create and activate a conda environment, and install the requirements :
$ pip install -r requirements.txt
This project is for (LA) partition of the ASVspoof 2021 challenge, which can can be downloaded from here. Training data is ASVspoof 2019 here.
To get the feature data, you can follow the preprocess.py file, or you can use other tools such as torchaudio to get the LFCC feature. This method refers to ASVspoof 2019 baseline. After preprocess, put the feature_data folder in this project. (After preprocess, you can find it in LA folder in dataset folder(LA), if you don't want make preporcess before training, you can change dataset_loader.py in tools folder. You can compute LFCC feature while training)
To train the model run:
python main.py
All the scorefiles will be store in scores folder. This algorithm will test EER and min-tDCF of progres set in every epoch.
You should change the score_file_root in find_best.py to find the best checkpoints in progress phase. And you can test it in eval phase.
To test the model run:
python test.py --model_index $(best epoch)
The result of this project may not very well because the problem of codec transmisson and compression. There are many ways you can choose to solve it. This repo and can help you.