AIによる画像生成は、想像以上に簡単にできます。
自分の考えを表現したい人には、もってこいの技術かもしれません。
画力がなくても、プログラミングができればイメージで表現できます。
AIを育てて絵を描くというのは、新たなジャンルですよね。
今後、新たな趣味として、進化していくかもしれません。
Deep Dazeであれば、そんなAIによる画像生成を簡単に体験できます。
本記事の内容
- Deep Dazeとは?
- Deep Dazeのシステム要件
- Deep Dazeのインストール
- Deep Dazeの動作確認
それでは、上記に沿って解説しましょう。
Deep Dazeとは?
Deep Dazeとは、OpenAIのCLIPとSirenを組み合わせたモノです。
Pythonのライブラリとして、Deep Dazeをインストールすることができます。
Sirenは、Sinusoidal representation networksの略称です。
詳細は、下記の論文に記載されています。
https://arxiv.org/abs/2006.09661
Sirenを簡単に言うと、フーリエ変換の仕組みと言えます。
この考え方により、画像や音声などを効率良く生成できるとだけ覚えておきましょう。
CLIPに関しては、次の記事で解説しています。
そして、Deep Dazeの機能を説明しておきます。
Deep Dazeを利用すると、次のような画像を作成できます。
上の画像は、「a psychedelic experience on LSD」というテキストをもとに作成されています。
日本語だと、「LSDによる幻覚体験」ということですね。
LSDの経験がないので、実際はわかりません。
でも、それらしい感じはします。
Deep Dazeを使えば、言葉を画像にできます。
これは、今までにない体験であり感覚です。
一度は、実際に味わってみてほしい経験と言えます。
以上、Deep Dazeについて説明しました。
次は、Deep Dazeのシステム要件を確認します。
Deep Dazeのシステム要件
現時点(2021年9月)でのDeep Dazeの最新バージョンは、0.10.2となります。
この最新バージョンは、2021年4月8日にリリースされています。
サポートOSに関しては、以下を含むクロスプラットフォーム対応です。
- Windows
- macOS
- Linux
公式(GitHub)上には、特に記載はありません。
ただ、100%Pythonであり、OS依存の箇所は見当たりません。
サポート対象となるPythonのバージョンは、Python 3.6と記載されています。
しかし、setup.pyを見てもバージョンによる制約はありません。
このような場合、Python 3.6以降であれば問題ないでしょう。
私は、次のバージョンで検証しています。
>python -V Python 3.9.6
実際、上記バージョンにおける動作に問題はありません。
Deep Dazeで最も注意すべきは、PyTorchです。
GPU対応版のPyTorchを利用したいなら、事前にインストールする必要があります。
そうしないと、CPU版のPyTorchが自動でインストールされてしまいます。
Deep Dazeのsetup.py
install_requires=[ 'einops>=0.3', 'fire', 'ftfy', 'imageio>=2.9.0', 'siren-pytorch>=0.0.8', 'torch>=1.7.1', 'torch_optimizer', 'torchvision>=0.8.2', 'tqdm', 'regex' ],
上記の指定だと、CPU版のPyTorchがインストールされることになるからです。
それだと困るので、GPU版のPyTorchを事前にインストールします。
PyTorchのインストールは、次の記事で解説しています。
以上、Deep Dazeのシステム要件を説明しました。
次は、Deep Dazeをインストールしていきます。
Deep Dazeのインストール
まずは、現状のインストール済みパッケージを確認しておきます。
この時点では、GPU版のPyTorchをインストールしているだけです。
>pip list Package Version ----------------- ------------ numpy 1.21.2 Pillow 8.3.1 pip 21.2.4 setuptools 57.4.0 torch 1.9.0+cu111 torchaudio 0.9.0 torchvision 0.10.0+cu111 typing-extensions 3.10.0.2
次にするべきことは、pipとsetuptoolsの更新です。
pipコマンドを使う場合、常に以下のコマンドを実行しておきましょう。
python -m pip install --upgrade pip setuptools
では、Deep Dazeのインストールです。
Deep Dazeのインストールは、以下のコマンドとなります。
pip install deep-daze
インストールは、すぐに終わります。
では、どんなパッケージがインストールされたのかを確認しましょう。
>pip list Package Version ----------------- ------------ colorama 0.4.4 deep-daze 0.10.2 einops 0.3.2 fire 0.4.0 ftfy 6.0.3 imageio 2.9.0 numpy 1.21.2 Pillow 8.3.1 pip 21.2.4 pytorch-ranger 0.1.1 regex 2021.8.28 setuptools 57.4.0 siren-pytorch 0.1.5 six 1.16.0 termcolor 1.1.0 torch 1.9.0+cu111 torch-optimizer 0.1.0 torchaudio 0.9.0 torchvision 0.10.0+cu111 tqdm 4.62.2 typing-extensions 3.10.0.2 wcwidth 0.2.5
それなりの数のパッケージが、インストールされました。
やはり、画像を生成する以上は依存パッケージも多くなるでしょう。
このような場合には、Pythonの仮想環境の利用がおススメです。
Windowsなら、IDEにPyCharmを使えば簡単に仮想環境を利用できます。
プロジェクト毎に仮想環境となります。
また、以下のようにコマンドでも簡単に仮想環境を利用できます。
以上、 Deep Dazeのインストールについて説明しました。
最後は、 Deep Dazeの動作確認を行います。
Deep Dazeの動作確認
Deep Dazeには、以下の二つの利用方法があります。
- コマンドラインツール
- API
今回の動作確認は、コマンドラインツールで行います。
最初に、コマンドプロンプトかPowerShellを起動します。
画像にしたいテキストとともに、「imagine」コマンドを実行。
imagine "a house in the forest"
「”a house in the forest”」の部分は、他のテキストにしても問題ありません。
ただし、テキストによっては意味不明の画像になる可能性があります。
そのため、公式で記載のある「”a house in the forest”」を利用しています。
しかし、ここで注意すべきことを述べておきます。
それは、処理に時間がかかるということです。
以下は、検証で用いたマシンスペックです。
CPU | インテル Core i9 9900KF |
GPU | NVIDIA GeForce RTX 2060 SUPER |
メモリ | 16GB |
上記スペックでは、処理に約4時間かかりました。
CPU版のPyTorchを使ったら、一体どれほどの時間がかかるのでしょうか?
想像すると、ちょっと恐ろしいですね。
そして、約4時間かけて出来上がった画像は以下。
確かに、森の中に家のようなモノが見えます。
しかし、出来上がった画像の質は明らかに低いです。
他のテキストにしたら、結果は異なるのかもしれません。
でも、また4時間待つのはちょっと・・・・
それなら、Deep Dazeの代替品を試してみてはどうでしょうか?
と言うより、明らかに Big Sleepの方が質の高い画像を作成してくれます。
Big Sleepについては、次の記事で説明しています。
以上、Deep Dazeの動作確認を説明しました。