UCバークレーが開発したディープラーニングによる画像変換手法CycleGANで、クマの画像を突っ込むと、パンダに変換してくれるモデルを作りました。どうしてもクマをパンダに変換したい時って結構あるものですよね。
CycelGANとは
ざっくり言うと、入力画像と出力すべき画像のペア無しに良い感じに画像を変換してくれる手法です。CycleGAN(論文)では元の画像とそれに対応する変換の見本となる画像のペアは必要なく、例えば「りんご」と「オレンジ」のように2つのドメインに分けた画像を訓練データとして利用することが可能です。これによって、訓練データを集めるのが容易になります。
具体的には、以下のように分類したものを訓練データとして利用します。
元ドメイン
ターゲットドメイン
bear2panda
クマ画像とパンダ画像をそれぞれ約1000個ほど突っ込んでモデルを作りました。Tesla K80を24時間ほど走らせています。
左が元の画像で、右がCycleGANによる変換後の画像です。
良い感じに仕上がってますね。ただこれらは良い例で、上手く行かないとDeep Dream的な不気味さを味わえます。
モデルの使い方
CycleGANのインストールについては公式に丸投げですすみません。
こちらのレポジトリに学習済みモデルが入っています。
詳しくはREADMEに記載していますが、CycleGANの学習済みモデルとしてbear2pandaを、テストデータとして任意のクマ画像を指定することで利用できます。
以上です。