📕はじめに
CYBIRD Advent Calendar 2024の9日目は@CN_30371500さんの「コンピューターの思考」でした。10日目は@I_am_bakenekoがお送りいたします。
24新卒でCYBIRDに入社し、現在は情シス業務にあたりつつ、たまに自動化ツールやClaudeを使った社内チャットボットを作ったりしています。
本記事では、そんな素晴らしき業務効率化のお話…ではなく、「お絵かきド素人の僕が、Stable Diffusionを使って絵の練習をしてみた」というとてもライトな話題について書いてみます。
🪝きっかけ
X(旧Twitter)かなにかを眺めていたとき、とある記事が目に止まりました。それがこれ↓
記事を要約すると、「画像生成AIに、自分が描きたいイラストに近いイラストをたくさん作ってもらい、それを参考にイラストを描いたら、2時間でかなり上達した」という内容です。
これを読んで、「自分もやってみたい!」と思ったのがきっかけで今回の検証をやるに至りました。
実は、中学生くらいの頃はスケッチブックを持ち歩くくらいには絵を描く事自体大好きで、割と絵心には自信があったほうなのですが、「美術部に入って基礎から学んで描く」みたいなこともなければ、絵をうまくなるために練習をする…というほどでもなかったので、当然ある一定のラインから画力が向上せず、「描きたいと思っているものが描けない」となって以降、全く絵を描かなくなっていました。いつか、ちゃんと描けるようになりたいな~と思いつつも絵の描き方をどう勉強すべきかもよくわからず結局絵を描くこともなくなり、気がつけば数年が経ち、そもそもイラストってどうやって描くんだっけ…?な状況…。そんな中で見つけたこの記事だったので、「AIを使うと、2時間という短い時間でも絵がうまくなるかもしれない!」という期待が、僕の興味関心をブチ抜いてきたというのが素直な動機です。
🖊️AIに絵を教えてもらうやり方
記事では、以下のプロセスで絵を完成させています。
- まず、自力で描く
- 自分で描いたイラストをもとに、AIに「お手本」を描いてもらう
- 自分の絵とお手本を見比べながら絵を描く
- AIにアドバイスを貰って修正する
また、AIに絵を教わるポイントとして以下のような事も挙げています。
- 好みの絵を生成して模写する
- AIに客観的なフィードバックをもらう
もともと、記事の方は僕から見れば絵がうまい方なのでこの流れを2時間行って最終的に作品を完成させていますが、結果から言うと僕の場合は、「自分で書く→AIにお手本を生成」というのをずっと繰り返して、1枚絵を完成させることより、とにかく手を動かすことに重きを置くような練習になりました。正直、自分の実力では「1枚の絵を着色して微修正を重ね、しっかり完成させる」という体力がまだ無いようで、一枚の絵の完成度にこだわりすぎるのはモチベが下がる一方でした…。とはいえ、後にも書きますが、この辺の体力も取り組みの中で上がったように感じます。
🖥️環境構築
この取り組みで必要となるのは、画像生成をするためのAIと絵のフィードバックを行うAIの2つです。イラストを描く環境としては、大学の友人から譲り受けたワコムの液タブを持っているのでそれを使います。
ペイントソフトは無料で使えるMediBang Paintを使いました。
特に、僕の場合は、自身の性格がドケチであることに加え、将来イラストを仕事にしたいわけでもなく、単純に趣味として楽しく描きたいだけなので、すべての機材・ツールを全て完全に無料で実現することにこだわりました。
🤖AIツールの選定
まず、必要となるAIツールは画像生成AIと絵の評価・フィードバックのためのAIの2つです。後者については、無料で使えるChatGPTやGeminiが画像入力を受け付けるので一旦それを使えば良いですが、画像生成AIに関してはちょっと探す必要がありそうです。
画像生成AIと一口に言っても、世の中にはたくさんサービスがあります。
ざっとピックアップすると以下のようなものがあります。
サービス・ツール | 料金プラン | img2img機能の有無 |
---|---|---|
Midjourney | 月$10 | ◯ |
Leonardo AI | 毎月150トークンの無料枠あり | ◯(要課金) |
Copilot | 無料 | × |
Stable Diffusion(ローカル) | 無料 | ◯ |
もちろん探せばもっとありそうですが、先述の通り、ハナから課金する気のない僕です。もちろんStable Diffusionをローカルで動かすという一択です。
ちなみに、参考記事で使われているのはMidjourneyになります。もともとMidjourney自体は無料プランがあったので、それを使おうと思っていたのですが、いつの間にかなくなっていたようです。残念…。
Stable Diffusionについて軽く補足をすると、こちらはWEB上で提供されるAIサービスではなく、ローカル環境(自分のパソコン)で動作させるものになります。そのためある程度のスペックが要求されます(特にGPU)。
参考程度に自身のPCスペックを乗せておきます。
項目 | スペック |
---|---|
プロセッサ | Intel Core i7-12700F |
RAM | 48GB |
GPU | GeForce RTX3060Ti |
OS | Windows11 |
また、Stable Diffusionを利用する方法はいくつかあるのですが、僕の場合はStable Diffusion Web UI (Forge版)と呼ばれるものを使用しています。似たものでStable Diffusion Web UI (AUTOMATIC1111版)というものもあります。違いとしては、AUTOMATIC版が先発で開発されたもので、Forge版はVRAMが小さいマシンでStable Diffusionを動作させるために後発で開発されたものだそうです。僕のPCよりさらに高いスペックのPCをお持ちの場合はAUTOMATIC版を使ったほうが良いみたいですが、6~8GBくらいのVRAMであればForge版のほうが良いみたいです。ちなみに僕のPCのRTX3060TiはたしかVRAMが6GBだったと思います。
Forge版のセットアップ方法は下記の記事が参考になります。
⚙AIモデルの選定
次に、AIモデルの選定です。
「え?Stable Diffusionがモデルじゃないの?」ともしかしたら思われるかもしれませんが、Stable Diffusionはあくまでもツールであってモデルではないです。デフォルトでは「realisticVisionV51」という写実系を得意とする生成モデルがついてきて、実際に生成もできるので勘違いしやすいのですが、あくまでもStable Diffusionはただの操作盤であって、実際の生成AIモデルは別のものです。(…といいつつ、Stable Diffusionのアーキテクチャ自体をモデルと呼び、本記事でモデルと呼んでいるパラメータファイルのことをcheckpointと区別して呼んだりというのもあるので、あんまり正解はないかもしれない…自分がしっくり来ればなんでもy)
AIモデルには色々種類があって、写実的な画像生成を得意とするものや日本のアニメのようなテイストを得意とするものなどいろいろあり、生成したい画像にあったものを用意する必要があります。
僕としては、アニメのキャラクター、もっと言えば可愛い女の子が描きたいのでそれに合いそうなものを探して入れてみました。
生成モデル | 生成できるものの印象 | DLページ |
---|---|---|
99mix | カジュアルなアニメ系テイストで生成できる印象 | https://civitai.com/models/154289/99mix |
Agelesnate | 99mixより鮮明できれいな印象のアニメ系イラストが生成できる | https://civitai.com/models/91263/agelesnate |
anima-pencil-XL | Agelesnateと同じく複雑な描き込みが多いが、Agelesnateがやや神々しい綺麗さなのに対して、こちらは少し落ち着いた印象 | https://civitai.com/models/261336/animapencil-xl |
Live Anime Mix | 上記のモデルが多少奥行きあるタッチだったのに対して、平面的。アニメ版ラブライブ感がある気がする絵のテイスト※詳しくないけど… | https://civitai.com/models/105104/live-anime-mix |
Nostalgia-clear | 名の通り、線画がはっきりとしたノスタルジックな雰囲気のテイスト | https://civitai.com/models/17461/nostalgia-clear |
WAI-CUTE | 童顔キャラの生成に特化している印象 | https://civitai.com/models/451486/wai-cute |
一つ注意ですが、一つのモデルあたり最小でも2GB、大きいものだと6~7GBくらいのファイルサイズがあります。なのであれもこれもいれるのは避けたほうが良いです。←これのせいで今SSD空き容量が20GBくらいしかない…
個人的に気に入っているのはなんだかんだ言って99mixです。鮮明さや描き込みや塗りの複雑さ等では他のモデルのほうがいいなとも思うのですが、絵の先生として見ると、複雑すぎず雑すぎず、バランスが良いなと感じました。絵のテイストも結構好みで、今回のAI先生もこの99mixになります。
モデルの導入の仕方については下記の記事が参考になります。
モデルはcheckpointと呼ばれ、基本的にCIVITAIというサイトか、HuggingFaceで配布されています。
また、モデルごとにライセンスが定められており、商用利用の可否等がそれぞれで異なるので、生成物の公開や商用利用等を行う場合は必ずチェックしましょう。確認方法は以下のサイトが参考になります。
💪ようやく本題
オリジナルキャラを描いた割にはうまく描けてる方だとは思いたいですが…画伯ほど振り切れていないあたり、むしろ突っ込みづらい出来だなぁと思っています。
あと、顔に関してはまだ良いんですが、これまで全身を描いてこなかったこともあり、身体や服をどう描いていいかがわからず、お粗末な裸体かそもそも身体を描かないかの二択しかこれまでの僕には手札がありませんでした。さすがに描けるようになりたいです。服。
そこで目標は、今まで描けなかった「全身かつちょっとだけ複雑な服を描く」ということにしました。
服自体は別になんでもよかったんですが、なんとなく「萌え」から連想してパッと思いついた「メイド服」に決定しました。
✍️まず、自力で描く
ラフというか、途中で描ききる体力が尽きてしまって完成させたのが以下です。
ちなみに結構本気で描いてます。(だからこそ力尽きた)
で、早速AI先生に画像生成を頼みたいところなのですが、一つ問題が発生。画像生成には、文章(プロンプト)から画像を生成するtxt2imgとプロンプト+参考画像から画像を生成するimg2imgの2つの生成方法があるのですが、今回の場合は後者になります。その際、この画像だと色塗りを行っていないため画像生成をする際にメイド服ではなくワンピースになってしまったり、想定している配色とは違うメイド服が生成されてしまいました。そのため、ある程度は色を塗る必要があり、雑ですが急遽色塗りをしました。
※背景のオレンジは生成AIに突っ込む際には白にしてます。色塗り出来ていない部分を見やすくするために背景色を塗りつぶしていただけです。
これを参考画像にしてAIに新しい画像を生成してもらいます。
🖋️自分で描いたイラストをもとに、AIに「お手本」を描いてもらう①
先程の画像から新しく生成してもらった画像が以下です。
さすがうまい。雰囲気はや表情、構図、服の布感はバッチリです。ただ、ちゃんと生成出来ていないなぁという部分もいくつかあります。服装はメイド服というか創作衣装ですし、手の形がうまく生成できていなかったり、よーく見ると右腕は三本に見えるし、脚の位置、骨格的に長すぎでは…?などなど。とはいえ、「じゃあお前はタコみたいじゃないお手々描けるんか!!」「きれいな骨格で描けるのか!!」と言われるとそんなことはないし、そもそも僕の絵をもとにAIが描いているので、そんな中この完成度を出してくれるAI先生のほうがよっぽど上手です…
一応、僕はメイド服を描きたいので、完全な模写ではなく、学べるところは学びつつ、ある程度メイド服についてはネットで調べながら、新たに絵を描くことにしました。
✍️自分の絵とお手本を見比べながら絵を描く①
次にAI先生のお手本と見比べながら新しく描いた絵がこれです。
影を描き込むほどの体力はなく、ここまでで完成としてしまいましたが、それでも、一旦ベタ塗りまでできるくらいには体力がついたように感じました。この時点で7日間くらい経過していますが、かなり粘り強く描いたと思います。特に肌色は難しく、描いている間は気づかなくても完成させてみるとものすごく血色が悪くなっていたりしますが、今回はAI先生の使っている色をそのまま使うようにしているので、血色の良い肌色で健康そうに見えます。
🖋️自分で描いたイラストをもとに、AIに「お手本」を描いてもらう②
新しく描いた自分の絵をもとに、またAI先生にお手本を描いてもらいました。今度は、伸びをする女の子に限定せず、構図等はAI先生に自由に作成してもらいました。それが以下です。
「めちゃめちゃ可愛いが!?」
もちろん、プロンプトである程度調整を行ったとはいえ、設定次第でここまで破綻の少ない、かわいい絵を出してくるものなのかと驚きつつ今度はこれを参考にします。
ここまで続けていると、メイドっ子は全く癖ではなかったものの、若干癖に刺さり始めてきました。
✍️自分の絵とお手本を見比べながら絵を描く②
そして10日目、新しいお手本を参考に描いた絵が以下になります。
…どうでしょうか。
個人的にはかなり段違いで絵のクオリティが上がったように感じます。
ちなみに、大学の後輩にこれを見せたところ、「脇に愛を感じる」とコメントされ、「意識してなかったけどたしかに…」と、自分でも気にしていなかったこだわりポイントを発見しました。
もちろんクオリティもそうですが、何より影をつけるだけの体力がこの10日間でついたこと、それが一番成長したなと感じたところです。結局「ここまでやったけど、この後描き方わかんないなぁ…」が続くと、力尽きてしまうのですが、AI先生が無限に参考画像を生成してくれるので、それらを眺めつづけることで「もっとこうしたらいいかもしれない」みたいな部分が発見しやすいというのがあったかもしれないなと感じます。
また、1回目の模写では7日間前後を要したのに比べ、この模写は3日程度なのでその点もかなりスピードアップしています。
📕終わりに
検証結果としては、個人的には「かなり画力向上した」と言っていいかなと思います。今回の検証で「AI先生に自分専用の参考イラストを無限に描いてもらえる」というのはかなりのメリットがあるなと感じました。一般的には参考画像をGoogle画像検索やPinterestなどで探すと思うのですが、思った画像が出てこなかったり、近い画像はあってもちょっと腕を上げてみてほしいだとか、服の一部を変えてみてほしいだとか、そういった注文を付けることはできません。一方、生成AIではそれがいくらでも出来てしまうというのは…良い世の中になったものです。
また、絵を少しだけ修正する、ということもできるため、「何かが気に食わないけど何をどうしたら改善できるかがわからない」というとき、少しだけ修正を加えたイラストを生成する、みたいな使い方ができる点もとてもいいなと感じました。
参考にその時の画像を以下に示します。
モチベーションも闇雲に絵を描いていたときよりも段違いに高く保てているので、今後も続けていきたいです。
ライトな記事なはずがそこそこの文量となってしまったので、プロンプトの詳細や設定についてはまたなにかの機会に。
明日のCYBIRD Advent Calendar 2024 11日目は@gumitaさんの「ChatGPT APIを使用してゲームを作ってみた」です。
お楽しみに~~ノシ