Skip to content

Commit

Permalink
english readme
Browse files Browse the repository at this point in the history
  • Loading branch information
Hiroshiba committed Jun 22, 2019
1 parent c3a9576 commit 12404a7
Show file tree
Hide file tree
Showing 3 changed files with 153 additions and 63 deletions.
56 changes: 56 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# Become Yukarin: Convert your voice to favorite voice
Become Yukarin is a repository for voice conversion with a Deep Learning model.
By traingin with a large amount of the original and favorite voice,
The Deep Learning model can convert the original voice to the favorite voice.

[Japanese README](./README_jp.md)

## Supported environment
* Linux OS
* Python 3.6

## Preparation
```bash
# install required libraries
pip install -r requirements.txt
```

## Training
To run a Python script for training,
you should set the environment variable `PYTHONPATH` to find the `become_yukarin` library.
For example, you can execute `scripts/extract_acoustic_feature.py` with the following command:

```bash
PYTHONPATH=`pwd` python scripts/extract_acoustic_feature.py ---
```

## First Stage Model
* Prepare voice data
* Put input/target voice data in two directories (with same file names)
* Create acoustic feature
* `scripts/extract_acoustic_feature.py`
* Train
* `train.py`
* Test
* `scripts/voice_conversion_test.py`

## Second Stage Model
* Prepare voice data
* Put input/target voice data in two directories
* Create acoustic feature
* `scripts/extract_spectrogram_pair.py`
* Train
* `train_sr.py`
* Test
* `scripts/super_resolution_test.py`
* Convert other voice data
* Use SuperResolution class and AcousticConverter class
* [sample code](https://github.com/Hiroshiba/become-yukarin/blob/ipynb/show%20vc%20and%20sr.ipynb)

## Reference
* [ipynb branch](https://github.com/Hiroshiba/become-yukarin/tree/ipynb): Other sample code
* [Commentary Blog (Japanese)](https://hiroshiba.github.io/blog/became-yuduki-yukari-with-deep-learning-power/)
* [Realtime Yukarin](https://github.com/Hiroshiba/realtime-yukarin): Real-time voice conversion system

## License
[MIT License](./LICENSE)
55 changes: 55 additions & 0 deletions README_jp.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# Become Yukarin: 誰でも好きなキャラの声に
Become Yukarinは、機械学習(ディープラーニング)で声質変換を実現するリポジトリです。
元の声と好きな声の音声データを大量に用いて機械学習することで、
元の声を好きな声に変換することができるようになります。

[English README](./README.md)

## 推奨環境
* Linux OS
* Python 3.6

## 準備
```bash
# 必要なライブラリをインストール
pip install -r requirements.txt
```

## 学習させる
学習用のPythonスクリプトを実行するには、`become_yukarin`ライブラリをパス(PYTHONPATH)に通す必要があります。
例えば`scripts/extract_acoustic_feature.py`を以下のように書いて、パスを通しつつ実行します。

```bash
PYTHONPATH=`pwd` python scripts/extract_acoustic_feature.py ---
```

### 第1段階の学習
* 音声データを用意する
* 2つのディレクトリに、入出力の音声データを置く(ファイル名を揃える)
* 音響特徴量を作成する
* `scripts/extract_acoustic_feature.py`
* 学習を回す
* `train.py`
* テストする
* `scripts/voice_conversion_test.py`

### 第2段階の学習
* 音声データを用意する
* 1つのディレクトリに音声データを置く
* 音響特徴量を作成する
* `scripts/extract_spectrogram_pair.py`
* 学習を回す
* `train_sr.py`
* テストする
* `scripts/super_resolution_test.py`
* 別の音声データを変換する
* SuperResolutionクラスとAcousticConverterクラスを使うことで変換できます
* [サンプルコード](https://github.com/Hiroshiba/become-yukarin/blob/ipynb/show%20vc%20and%20sr.ipynb)

## 参考
* [ipynbブランチ](https://github.com/Hiroshiba/become-yukarin/tree/ipynb)に大量にサンプルが置いてあります
* [解説ブログ](https://hiroshiba.github.io/blog/became-yuduki-yukari-with-deep-learning-power/)
* [Realtime Yukarin](https://github.com/Hiroshiba/realtime-yukarin)を使うことで、リアルタイムに声質変換することができます

## License
[MIT License](./LICENSE)
105 changes: 42 additions & 63 deletions readme.md
Original file line number Diff line number Diff line change
@@ -1,77 +1,56 @@
# 使い方
# Become Yukarin: Convert your voice to favorite voice
Become Yukarin is a repository for voice conversion with a Deep Learning model.
By traingin with a large amount of the original and favorite voice,
The Deep Learning model can convert the original voice to the favorite voice.

## 推奨環境
* Unix系のPython3.6.3
[Japanese README](./README_jp.md)

## 必要なライブラリのインストール
## Supported environment
* Linux OS
* Python 3.6

## Preparation
```bash
# install required libraries
pip install -r requirements.txt
```

## 学習させる
学習用のPythonスクリプトを実行するには、`become_yukarin`ライブラリをパス(PYTHONPATH)に通す必要があります。
例えば`scripts/extract_acoustic_feature.py`を以下のように書いて、パスを通しつつ実行します。
## Training
To run a Python script for training,
you should set the environment variable `PYTHONPATH` to find the `become_yukarin` library.
For example, you can execute `scripts/extract_acoustic_feature.py` with the following command:

```bash
PYTHONPATH=`pwd` python scripts/extract_acoustic_feature.py ---
```

## 第1段階の学習
* 音声データを用意する
* 2つのディレクトリに、入出力の音声データを置く(ファイル名を揃える)
* 音響特徴量切り出しをする
* scripts/extract_acoustic_feature.py
* 学習を回す
* train.py
* 実際に使用する
* scripts/voice_conversion_test.py

## 第2段階の学習
* 音声データを用意する
* 1つのディレクトリの超大量の結月ゆかり音声データを置く
* 音響特徴量切り出しをする
* scripts/extract_spectrogram_pair.py
* 学習を回す
* train_sr.py
* 実際に使用する
* scripts/super_resolution_test.py
* 実際に使う
* SuperResolutionクラスとAcousticConverterクラスを使ってモデルを読み込ませればいい
* [サンプルコード](https://github.com/Hiroshiba/become-yukarin/blob/ipynb/show%20vc%20and%20sr.ipynb)

## 参考
* [ipynbブランチ](https://github.com/Hiroshiba/become-yukarin/tree/ipynb)に大量にサンプルが置いてある
* [解説ブログ](https://hiroshiba.github.io/blog/became-yuduki-yukari-with-deep-learning-power/)

## ファイル構造
```
├── become_yukarin # このディレクトリは外から使えることを想定
│   ├── __init__.py
│   ├── config.py # 学習の設定パラメータ
│   ├── data_struct.py # データ構造の定義
│   ├── dataset
│   │   ├── __init__.py
│   │   ├── dataset.py # データ処理
│   │   └── utility.py
│   ├── model.py # ニューラルネットワーク構造
│   ├── param.py # 音声パラメータ
│   ├── updater.py # chainerのUpdater
│   └── voice_changer.py # 学習済みモデルを使って声質変換
├── recipe
│   ├── config.json # 学習の設定パラメータ
│   └── recipe.json # 複数の学習を回す時のパラメータ
├── requirements.txt # 依存関係のあるライブラリ
├── scripts
│   ├── extract_acoustic_feature.py # 音響特徴量切り出し
│   ├── launch.py # 複数の学習を回す
│   ├── ln_apply_subset.py
│   ├── ln_atr503_to_subset.py
│   ├── ln_jnas_subset.py
├── tests
│   ├── __init__.py
│   └── test_dataset.py
└── train.py # 学習用のスクリプト
```
## First Stage Model
* Prepare voice data
* Put input/target voice data in two directories (with same file names)
* Create acoustic feature
* `scripts/extract_acoustic_feature.py`
* Train
* `train.py`
* Test
* `scripts/voice_conversion_test.py`

## Second Stage Model
* Prepare voice data
* Put input/target voice data in two directories
* Create acoustic feature
* `scripts/extract_spectrogram_pair.py`
* Train
* `train_sr.py`
* Test
* `scripts/super_resolution_test.py`
* Convert other voice data
* Use SuperResolution class and AcousticConverter class
* [sample code](https://github.com/Hiroshiba/become-yukarin/blob/ipynb/show%20vc%20and%20sr.ipynb)

## Reference
* [ipynb branch](https://github.com/Hiroshiba/become-yukarin/tree/ipynb): Other sample code
* [Commentary Blog (Japanese)](https://hiroshiba.github.io/blog/became-yuduki-yukari-with-deep-learning-power/)
* [Realtime Yukarin](https://github.com/Hiroshiba/realtime-yukarin): Real-time voice conversion system

## License
[MIT License](./LICENSE)

0 comments on commit 12404a7

Please sign in to comment.