最近よく聞きますよね。AIって。それに画像生成を加えてAI画像生成なんてものも...!
この章を興味本位で開いてしまったそこのあなた。
せっかくなので一緒に画像生成AIの凄さについて触れていきましょう。
マイクロビットのプログラムをして更に情報について興味が湧きましたので色々試してみました!
〜茶番〜
「絵描いたことある人います?お!佐藤守さん描いたことあるんですね!どれどれ...?おー!結構上手ですね!ムンクの叫びを描くなんて流石画力ありますね!他にはいますか?おお!藤井のNeoくん!どれどれ...?ええやん!推しの絵を描いたんだね!めっちゃ上手じゃーん!!木下先生の絵は明日ルーブル美術館に持っていきましょう。」
じゃあ私が"出力した"絵も見せますね!
はいドーン!!!
〜画像生成AI〜
もうお分かりかと思います。これら画像はAIで書かせた画像です。
画像生成AIとは何か知らない人もいるかと思います。
この後に少しだけ説明を入れますね。
〜どういうことをして作ってるの?(プログラミング編)〜
画像生成AIは、入力されたテキスト(プロンプト)から元々学習済みのデータを元にその作りたい画像の特徴を学習済みのデータから探して、その入力されたテキストの雰囲気に一致する特徴から画像を生成する仕組みです。
「画像生成AI」と検索すると沢山画像生成ができるサイトが見つかります。しかしそれらはどれも低クオリティであったり、クオリティ重視でもめっちゃ高い年会費を支払って使用するなど、惹かれるものはありません。これらはWebを用いて実行していますので、手間は掛かりますがその元となるプログラムを自分のパソコン(ローカル環境)構築してしまえば好き放題、無制限で使えます。使用するプログラムはオープンソースAI (stable diffusion)を使います。(オープンソースソフトウェアとは、ソースコードが公開されており、誰でも無償または廉価で改変・再配布できるソフトウェアのことです。)
プログラミングと言ってもC言語みたいなあんな激ムズなものはしません。超簡単にサクッと...!?
案外いかないものなんですよね。。。
〜どうやってパソコンにAI環境を構築するか(ローカル環境)〜
しかしまだ諦めるには早いです。
説明はもうほぼ除外しますが、画像生成AIをパソコン内部に構築するのは意外と簡単なのです。
Mac OSでの説明になりますが、私はこのようにローカル環境に構築しました。
① Macのターミナルから以下のコードを実行し、必要になるHomebrewをインストール
[/bin/bash -c "$(curl -fsSL (https)://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"]
(https)の部分はリンクにならないようわざと()をつけています。
↓
② ターミナルでコマンドを実行
[export PATH="$PATH:/opt/homebrew/bin/"]
↓
③ ターミナルでコマンドを実行し必要なライブラリをインストール
[brew install cmake protobuf rust python@3.10 git wget]
↓
④ stable diffusion web UIのリポジトリをローカルPCにcloneします。cloneは、指定したディレクトリに既存のリポジトリを複製できるコマンドです。
[git clone (https)://github.com/AUTOMATIC1111/stable-diffusion-webui]
↓
⑤ ターミナルで次のコマンドを実行して[webui-macos-env.sh]のファイルの編集を行う。
[nano stable-diffusion-webui/webui-macos-env.sh]
ファイルの編集画面はこのような感じになります。
この[export COMMANDLINE_ARGS=]の後に "--no-half"と "--medvram"を追加します。これらコードはパソコンのメモリ不足の解消や、画像生成速度の向上のために入れておく必要があります。※編集後は[ctrl] + [O]を押し、[ctrl] + [X]で直ちに編集画面から脱出してください。何もいじってはいけません。
↓
⑥ 次のコマンドで画像生成AIを実行します
[bash stable-diffusion-webui/webui.sh]
〜どういうことをして作ってるの?(生成編)〜
起動するとこのような画面が出ます。
上の枠にはプロンプト(描いて欲しい内容)を入力します。
下の枠にはネガティブプロンプト(描いてほしくない内容)を入力します。
これで生成ボタンを押すと...!
このような画像が生成されます!綺麗でかわいいですね!!
しかし、このように綺麗な画像は一発では中々生成してくれません。試行錯誤してプロンプトとネガティブプロンプトを書き込んで、何回も生成ガチャを回していきます。ソシャゲのガチャなんかよりこっちのガチャまわしましょう。
〜まさかの他の活用方法〜
「所詮画像生成AIなんてただのお絵描きでしょ?」
実は結構使える場面はあるんです...!どんな場面?
Q. スマホで写真を撮って、上手くいかなくてもう一枚写真を撮る?
A. 好きなようにいじれます。
Q. 綺麗な写真を撮りたいから高いカメラを買う?
A. スマホの写真でもこの魔法をかければ、ほぼ同レベル!?
Q. カメラ独特の雰囲気があるでしょう。それはカメラにしか出せませんよね?
A. カメラ独自の雰囲気も再現できます。
Q. 自分のイラストが欲しいから絵師さんに頼む?
A. それは正解です。しかし画力が無い人でも肩を並べられる絵が作れます。
Q. 実写もいける?
A. 実写、イラスト、水彩画、3dcg、漫画調、プロンプト次第で色々作れます。
Q. 元々ある画像を思い通りにしたい
A. なんでもできますが限度は守りましょう。
パシャっと写真を撮ったのに監督が邪魔をしてきた時。とても良い写真なのにピントが合っていなかったりブレてしまった時。そんな時に画像を思い通りに編集できます。
他にも、解像度が低い画像を4K画像のように超高解像度にしたり、体の一部のポーズだけを変えたり、服の色を変えたり、書き込めないほど画像に関することならアイディア次第で様々な可能性を広げられます。
〜注意点〜
Webで使える画像生成AIにはリミッターが掛けられていますが、ローカル環境ではリミッターはありません。
適切な指示しないと、あまりにも怖い画像やよろしくない画像、善良の心に反する画像も生成される危険もあるようです。沢山の可能性を秘めている反面、使い方を誤ってしまわないようにするのが当たり前になってきますね。
ちなみに、もし夜中に画像生成を行う際には、ネガティブプロンプトに「nsfw(職場や学校などのフォーマルな環境下での閲覧に注意を促す)」や「horror(怖い画像)」,「zombie(ゾンビ)」,「grotesque(グロテスク)」,「noise(ノイズ)」などを入れておくと良いそうです。
〜感想〜
画像生成AIは最近よく聞きますが、かなり奥が深いものだと感じました。また、オープンソースコードを用いるので、ファイル編集などパソコンのプログラムの仕組みについて少し理解が深まったと感じました。また、画像生成AIの特徴を知れるため、snsなどで投稿されているイラストや写真はAI生成によるものなのか否か区別できる判断基準を得られたと感じました。
まじか。ローカル環境に生成AIを構築できるなんて初耳!私もMACだからやってみます!!
まもるの「叫び」