waifu2xで動画を処理する


激アツ

waifu2x、激アツですね。
可愛い娘に画像を見つけたら即waifu2xに突っ込むwaifuerとかも登場しそうな勢いです。 登場してるのかな?

waifu2x

それで、今回は動画をwaifu2xに突っ込んでみよう!!ということです。


面倒

面倒だなぁとかおもってましたが、先人が居ました。

waifu2xでアニメをアップコンバートする - unsuitanの日記

先人の知恵をお借りし、Amazon Web Serviceのg2.2xlarge(スポットインスタンス)を使おうとしたものの、希望額で入札できそうになかったので断念。
CUDAコア数とかを見る限り、自宅のGTX970とほぼ同等(?)かと思うので自宅で行うことにしました。

因みに、AWSのg2.2xlargeのCUDAコア数は1,536で、GTX970のCUDAコア数は1,664らしいです。

参考

今回は、Adobe製のAdobe Media Encoder CS6と、FFmpegwaifu2x-caffeを使用しました。


れっつとらい

Adobe Media Encoder CS6で、mp4の動画をPNGファイル(960x540へ縮小)に変換します。
無事書き出せたら、音声ファイルも抜いておきます。Wave形式なりMP3形式なりお好きな形式でどうぞ。

waifu2x-caffeはディレクトリの指定だけでディレクトリ内の画像をすべて処理してくれるっぽいので、ひたすら処理をします。

11,400フレーム近くを並列処理をして、GTX970 + Core i7 2600Kの環境で5時間30分ちょいでした。

waifu2x-caffe

処理が全て終わったら、お楽しみ(?)の結合タイムです。H.265とかを使っても良かったのですが、面倒だったのでMotionJPEGを使用しました。

ffmpeg -r 24.00 -i "D:\Temp\ME!ME!ME! feat.Daoko - TeddyLoid (HD)_1920x1080\images_%05d.png" -i "D:\Temp\ME!ME!ME! feat.Daoko - TeddyLoid (HD).wav" -vcodec mjpeg -qscale 0 "D:\Temp\ME!ME!ME! feat.Daoko - TeddyLoid (HD).avi"

とくに迷うところもないとは思いますが、結合するのなら上記のオプションで十分だと思います。
気をつけて欲しいのはフレームレートの指定くらいです。


比較

書くだけ書いて、比較画像なしっていうのも酷いものなので一応載せておきます。
今回はPC内にキャッシュが残っていたME!ME!ME!を使用しました。

ME!ME!ME! - 日本アニメ(ーター)見本市

処理前 : 1280x780の画像ファイルをSpline36を用いて1920x1080に拡大したもの
処理後 : 1280x780の画像ファイルをSpline36を用いて960x540に縮小後、2倍にwaifu2xで拡大 & ノイズ除去

1 処理前 / 処理後

images_02161

2 処理前 / 処理後

images_02234

3 処理前 / 処理後

images_02762

4 処理前 / 処理後

images_02918

5 処理前 / 処理後

images_02918


結論

手間が掛かり過ぎな上、HalfHDからFullHDへの変換はあまり恩恵を受けられない気がする。