読者です 読者をやめる 読者になる 読者になる

waifu2x の ami を spot instance で動かして遊んだ話

動画を高解像度にしたいんじゃ! というモチベーションで http://waifu2x.udp.jp/ で ポチポチ画像を変換していたのだけれども, 流石に人手では辛いので, 課金で何とかしようということにしました


ec2 あまり知らない勢なのですが, 最近の ec2 では gpu インスタンス(スポット)が 一時間あたり0.07ドル弱ぐらいで 利用出来るんですね...(安スギィ)


parallel 入れる

とりあえず, parallel で起動したいので入れる

$ sudo apt-get install parallel
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
E: パッケージ parallel が見つかりません

$ wget http://ftp.gnu.org/gnu/parallel/parallel-20150522.tar.bz2
$ tar jxf parallel-20150522.tar.bz2
$ cd parallel-20150522
$ ./configure --prefix=$HOME/local
$ make install

apt-update するのも...と思ったので手動で

動画をばらす

$ ffmpeg -i path/to/video -r 50 input_dir/%04d.png

parallel る

$ find ~/input_dir | \
 ~/local/bin/parallel -j2 -k \
 th waifu2x.lua -m noise_scale -noise_level 2 \
 -i {} -o ~/output_dir/{/}
 
$ find ~/input_dir | \
~/local/bin/parallel -j2 -k \
~/.pyenv/shims/python x2.py {} /output_dir_2/{/}
"""x2.py"""
import sys
from PIL import Image

_, input_path, output_path = sys.argv

img = Image.open(input_path)
x, y = img.size
img2 = img.resize((x*2, y*2))
img2.save(output_path)

アニメーションGIFにする

$ convert -delay 2 -layers optimize input_dir/*.jpg output_org.gif
$ convert -delay 2 -layers optimize output_dir/*.png output_waifu2x.gif
$ convert -delay 2 -layers optimize output_dir_2/*.png output_2x.gif

ここで,スパロボBXに参戦するゴーグのOPの1カットを見てみましょう

  • orginal (を gif にした)
  • 2x
  • waifu2x

の順に並んでます

org 2x waifu2x

waifu2x がきれいな感じがしますね

(まあ,waifu2x 適用して,くっつけているだけなので当然といえば当然なんだけど...)


本当は肌色動画でやりたかったのだけれど, DMM のサンプル動画をダウンロードする力が低くて 出来なかったのです...

参考文献

github.com

github.com


巨神ゴーグ DVD-BOX

巨神ゴーグ DVD-BOX