Skip to content

Shimamura-Lab-SU/SGV

Repository files navigation

スターGAN ボイスコンバージェンス メモ

StarGAN VC(pytorch版)リポジトリの日本語による説明. あとソースコードの微修正.

[Original Paper]
StarGAN-VC: Non-parallel many-to-many voice conversion with star generative adversarial networks.

変換音声はconvertedディレクトリに保存される.

Dependencies

  • Python 3.6 (or higher)
  • pytorch 1.1.0 (see https://pytorch.org/)
  • tensorflow 2.0 (Be careful! Not use tensorflow 1.X)
  • librosa
  • pyworld
  • tensorboard 2.0
  • scikit-learn 0.21.3 (or higher)

NOTE:According to some feedbacks, we recommend to use tensorflow version 1.8 exactly. (Tensorflow 1.11 generate nonsense results)

Usage

Download dataset

vcc 2016データセットはここからダウンロードできるよ!

Data Share - SUPERSEDED - The Voice Conversion Challenge 2016
https://datashare.is.ed.ac.uk/handle/10283/2042

  1. 訓練データセット: ここからデータセットZIPファイルをダウンロードVCC training data: source and target evaluation data (7.357Mb)して解凍する.解凍して出てきたvcc2016_trainingdataフォルダ内に保存.

  2. テストデータセット: ここからデータセットZIPファイルをダウンロードVCC training data: evaluation data released to participants during the challenge (3.576Mb)して解凍する.解凍して出てきたevaluation_alldataフォルダ内に保存.

保存したデータの一部を以下の訓練セットフォルダとテストセットフォルダに保存する.

  1. 訓練セット: ./data/vcc2016_trainingから4人のスピーカ(SF1,SF2,TM1,TM2)を選んで./data/speakersに保存する.
  2. テストセット ./data/evaluation_allから4人のスピーカ(SF1,SF2,TM1,TM2)を選んで./data/speakers_testに保存する.

↓↓ 以下はフォルダ構成をまとめたもの.

data
├── speakers  (training set <  vcc2016_trainingから4つのフォルダをコピーしてぶち込む)
│   ├── SF1
│   ├── SF2
│   ├── TM1
│   └── TM2
├── speakers_test (testing set <  evaluation_allから4つのフォルダをコピーしてぶち込む)
│   ├── SF1
│   ├── SF2
│   ├── TM1
│   └── TM2
├── vcc2016_training (vcc2016_training.zipを解凍したときに出てくるフォルダ)
│   ├── SF1
|   ├── SF2
|   ├── SF3
│   ├── ...
├── evaluation_all (evaluation_all.zipを解凍したときに出てくるフォルダ)
│   ├── ...

Preprocess

はじめにpreprocess.pyを実行して音声クリップから特徴量(mcep:メルケプストラム,f0:基本周波数,ap:非周期性指標)を抽出する.それらの特徴量は.npyファイルにソートして保存される.preprocess.pyの実行コマンドは以下の通り.

python preprocess.py

約5~10分ぐらいかかるよ! テスト時はpreprocessが必要ない!

Train

学習実行時,何エポックごとかにresult_***ディレクトリに学習データに対する処理結果が保存される. result_***にテストデータに対する処理結果(たぶん?)が保存される.実行コマンドは以下の通り.

python main.py

Convert

python main.py --mode test --test_iters 200000 --src_speaker TM1 --trg_speaker "['TM1','SF1']"

Summary

The network structure shown as follows:

Snip20181102_2

Reference

CycleGAN-VC code

pytorch StarGAN-VC code

StarGAN code

StarGAN-VC paper

StarGAN paper

CycleGAN paper

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages