CycleGAN and pix2pix in PyTorch
https://github.com/junyanz/pytorch-CycleGAN-and-pix2pix
GWで時間ができたので、東京タワーからエッフェル塔を生成してみる。
普段使いのMacでもなんとか動いたが、自前で用意したデータセットの学習には結構な時間を要する。 その間、メインのPCが使えないとなると、不便この上ない。
そんなわけで、少々お金はかかるが、AmazonのEC2環境(Ubuntu)を使用して生成。
使用したインスタンスは t2.xlarge。本当はGPUモードで動かしたいが、うまくいかなかったので、CPUモードで実行した。CROP_SIZE は 128 として 2日ぐらいでなんとかここまでたどり着いた。
どことなく東京タワーなエッフェル塔
どことなくエッフェル塔な東京タワー
2枚目は結構うまくできている感じがする。
エッフェル塔と、東京タワーの写真はそれぞれグーグルの画像検索から拾ったものを拝借しているので、元画像は割愛させていただく。
もしかすると、画像はそれぞれ1毎づつでも良いのかもしれないが、仕組みを十分に理解していないので、それぞれ10〜20毎程度を入れて実行。
やってみた感想としては、エッジを使って反対側の色つけを持ってきてくれる感じ。
実際の原理などは、よく調べてないので、興味のある方はご自身で調べてみてください。
形状が似たものを、別の着色をする事で、別物に変わる。
小学生の夏の自由研究に、なかなか良さそうな題材だと思う。
EC2を使う時の注意点としては、立ち上げっぱなしだと、どんどん課金されるので、自動停止の設定することと、ちゃんと手動で停止を実行、さらに課金状況やアラート設定もしっかり確認しましょう。