-
Notifications
You must be signed in to change notification settings - Fork 88
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
3 changed files
with
153 additions
and
63 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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) |