ニューラルネットワーク(深層学習)で実写をアニメ化!:実写からアニメ画を自動生成

課題

日本はアニメ先進国として世界的に有名です。ロボットアニメや少年漫画など、全世界で認められてきた実績があります。中でも美少女のアニメ画には熱狂的なファンが多く、全世界にアニメ文化が広まったきっかけであると言っても過言ではないでしょう。アニメファンの一人であるYanghua Jin氏は現実世界にいる美女をアニメのキャラクターに変換できないかと考えました。

今日紹介するのは、Yanghua氏が開発したニューラルネットワークにより実写を人間が書いたのと同様なアニメ風の画像に変換するシステムです。

解決方法

人工知能の中でも今回のように画像を生成するタスクは、生成モデルを利用する必要があります。ニューラルネットワーク(Deep Learning)により本物と区別のつかない画像などを生成するモデルとしてGAN(Generative Adversarial Network)が最注目されています。中でもCycle GANと呼ばれる手法は、例えば、ウマの画像をシマウマの画像に変換するようなテクスチャの変換やスタイルの変換に強みがあります。

GANモデルの説明では、偽札を作る人と偽札を暴く人の例がよく利用されています。具体的には、2つのニューラルネットを利用して、片方が本物(実際の学習データ)と自身が生成する偽物(生成データ)の区別がつけられないことを目標に生成モデルを学習し、もう一方が偽物と本物を正しく区別することを目標に識別モデルを学習します。この2つのモデルを同時に学習して行くことで、生成モデルは本物と見分けのつかないデータを生成できるようになります。

Cycle GANは、皆さんが例えば、Google翻訳を利用するときに、日本語を英語に翻訳したのち、翻訳の正しさを確認するために英語を日本語に翻訳し直すように、元に戻した時も元のデータの意味が保持されるように学習するモデルです。つまり、実写画像を元にアニメ画像をGANで生成した後、そのアニメ画像を元に実写画像を生成した場合にも実写風な画像の雰囲気を保持するようにします。

Jin氏の方法はさらにStackと呼ばれる技法を施すことで、さらに精度を上げることができました。

どうなったか

以前の手法では生成されたアニメ画像に違和感が残っていましたが、この手法では違和感がほとんど残らない画像を生成することができています。

一方で、学習データに依存した女の子の特徴が生成されてしまう問題もあります。今回は、実写では存在しなかった前髪がアニメ画像では出現しており、データセット上のアニメのキャラがいかに前髪を重要としているかが確認される面白い結果となりました。

自分好みの画風を学習データとするためには実写とアニメの対となる画像データを用意する必要があり、今後はこのようなデータセットがどんどん作られていくことでしょう。

まとめ

Cycle GANと呼ばれる生成モデルにStackと呼ばれる技術を利用することで、実写画像からアニメ画像を違和感のない精度で生成することが可能となりました。このモデルの学習には実写画像とアニメ画像の双方のデータセットを用意する必要があるため、今後はこのようなデータセットをいかに集めていくかが課題となります。

Cycle GANはその対称性から、アニメ画像から実写画像を生成するネットワークを同時に獲得するため、アニメの実写化イメージを生成することも可能になります。例えば、アニメの実写化で成功した作品のデータセットを利用することで、成功しやすい実写化のイメージ画像を生成することが可能となり、実写化による「ガッカリ感」を払拭する時代がくるかもしれません。

参考資料

(H.S)