Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/pfnet-research/chainer-gogh
https://github.com/pfnet-research/chainer-gogh
artistic-style-transfer chainer
Last synced: 9 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/pfnet-research/chainer-gogh
- Owner: pfnet-research
- License: mit
- Created: 2015-09-03T05:31:37.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2019-06-07T08:36:40.000Z (over 5 years ago)
- Last Synced: 2024-07-08T16:38:25.687Z (4 months ago)
- Topics: artistic-style-transfer, chainer
- Language: Python
- Size: 15.2 MB
- Stars: 301
- Watchers: 18
- Forks: 58
- Open Issues: 7
-
Metadata Files:
- Readme: README-ja.md
- License: LICENSE
Awesome Lists containing this project
README
# chainer-gogh
## Implementation of "A neural algorithm of Artistic style" (http://arxiv.org/abs/1508.06576)
## 解説記事: https://research.preferred.jp/2015/09/chainer-gogh/
(VGG, lam=0.0075, after 5000 iteration)
## Usage:
### Chainerをインストール
```
pip install chainer
```
詳しくはhttps://github.com/pfnet/chainer### モデルをダウンロード
* NIN https://gist.github.com/mavenlin/d802a5849de39225bcc6お手軽。(`-m nin`)
* VGG https://gist.github.com/ksimonyan/211839e770f7b538e2d8#file-readme-mdきれいな絵がかけるがとても重い。(`-m vgg`, `-m vgg_chainer`)
vgg_chainerではモデルのダウンロードの必要はなく、初回を除いて非常に高速でロードできるようになります(chainer 1.19以降で動作)。* GoogLeNet https://github.com/BVLC/caffe/tree/master/models/bvlc_googlenet
NIN並に軽く、ポテンシャルもあるはずだが、最適なパラメタがわかっていない。(`-m googlenet`)
* illustration2vec http://illustration2vec.net/ (pre-trained model for tag prediction, version 2.0)
VGGより軽く、二次元画像にとても強いはずだが、最適なパラメタがわかってない。(`-m i2v`)
### CPU実行
```
python chainer-gogh.py -m nin -i input.png -s style.png -o output_dir -g -1
```### GPU実行
```
python chainer-gogh.py -m nin -i input.png -s style.png -o output_dir -g GPU番号
```### VGG実行サンプル
```
python chainer-gogh.py -m vgg_chainer -i input.png -s style.png -o output_dir -g 0 --width 256
```### モデルの指定方法
```
-m nin
```
のninを、vgg, vgg_chainer, googlenet, i2vに切り替えることが可能。
モデルファイルはディレクトリ直下に置いて、デフォルトの名前のまま変えないこと。### 複数枚同時生成
* まず、input.txtというファイル名で、以下の様なファイルを作る。
```
input0.png style0.png
input1.png style1.png
...
```
そして、chainer-gogh-multi.pyの方を実行
```
python chainer-gogh-multi.py -i input.txt
```
VGGを使うときはGPUのメモリ不足に注意## パラメタについて
* `--lr`: 学習速度。生成の進捗が遅い時は大きめにする
* `--lam`: これを上げるとinput画像に近くなり、下げるとstyle画像に近くなる
* alpha, beta: 各層から伝播させる誤差にかかる係数。models.pyの中でハードコードされている。## 注意
* 現在のところ画像は正方形に近いほうがいいです