irisuinwl’s diary

サークル不思議(略)入巣次元の、数学や技術的なことを書きます。

AIを使ったお絵かきをした

こんにちは。いりすです。

最近、拡散モデルによる画像生成AIを使った話題が豊富で、自分でも様々なことを試してきました。

実際にStable Diffusionを自分で動かせる環境を作ったりして試しました。

stable diffusionをwsl2でやるメモ - irisuinwl’s diary

stable diffusionを試した & 雑感 - irisuinwl’s diary

今回、拡散生成モデル(Stable Diffusion, Waifu Diffusion, TrinArt)を使って、絵を描いてみたので、0から描いたその証跡(トレース)を残したいと思います。

描いた絵は以下です:

自分の描いた絵の中で一番上手くできたんじゃないかとおもいます

前提

環境

使った拡散生成モデル

  • Stable Diffusion

huggingface.co

  • Waifu Diffusion

huggingface.co

  • TrinArt

ai-novel.com

絵を描く過程

概要

どのように絵を描いたかの概略です

  • DesignDollで描きたいポーズを決める
  • キャラクターのラフを描く
  • 背景の雑なラフを描く
  • キャラクターのラフに色を塗る
  • 背景ラフを拡散モデルに与えて、よさげな背景が出るまで試行錯誤する
  • ラフを拡散モデルに与えて、良さげな配色を選ぶ
  • ラフを仕上げる
  • 良さげな光源を考えて加工する
  • 拡散モデルに結果を与えて、良さげなアウトプットの部分部分を参考にして修正する
  • ひたすら満足するまで修正する

何を描きたいかを考える

これが一番大事な感じですが、

今回は「いりすちゃん(自分のオリキャラバ美肉アバター)が良い感じにサイバーな感じの空間にいて、見る人を魅了されるようなもの」を描きたいとしました。

雑すぎるだろって思いますが、まあまずはそんなものです。

ポーズを決める

こういう絵が描きたいなーって頭に浮かべながら、

DesignDollを使って良いポーズを選びます。

DesignDollとは3Dのデッサン人形で、人形の操作性がよく、カメラアングルの指定もしやすいツールとなっております:

terawell.net

今回は以下のポーズを選択しました:

(模写なのになんかずれてる? はい…)

アイレベルがあるので、それに合わせて背景も描いて、描きたい絵をデザインするのが正しいやり方だと理解してますが、そこまでの計画性はなかったです(雑)

ラフを描く

ポーズに合わせて人体のラフを描きます

どんなキャラデザで、このポーズだったらどんな感じになるかを描きます

以下のようになりました:

この際に人体を見たときの視線誘導を考えて髪とか考えました。

今回はS字に視線が動くことを期待してラフに起こしました。

視線誘導とデザインについては、ジャックハムの風景画の描き方や、ルーミスのクリエイティブイラストレーションなどを見たり、さいとうなおきさんの動画を見るとなんとなくわかる気がします。

(ルーミスのクリエイティブイラストレーションは難しいのでジャックハムの風景画の描き方が個人的にはオススメ)

背景のラフを描く

人体だけの絵でも良いんですけど、いりすちゃんのサイバーさを強調させたい、そのための背景を描きたいので、描きます。

当方、Ken IshiiのExtraのMVとかAkiraのオタクなので、サイバーパンクな空間でネオンサインばばばーってある感じの一点透視の背景っぽいものをラフで書きました。

合わせるとこんな感じ

まあ、どういうことを描きたいかわかるけど、背景がいまいち定まってないので、拡散モデルを使って良い感じに補正していきます。

(改めて見ると、ポーズの浮遊感と背景の具象さに乖離を感じるのでラフ段階ではあまりよくない)

ここでも意識したことは見た人が絵をどういった見方をするかです。

一点透視の背景なので、消失点に向かって視線が誘導されて、人体に目がいく、そして、S字に流れていくという感じになると思います。

ここらへんはさいとうなおきさんのポジティブシェイプ/ネガティブシェイプの説明がしっくりくるんじゃないかなと思います。

youtu.be

拡散モデルを動かす準備

Stable Diffusionをはじめとする拡散生成モデルを動かす準備をします。

自分で環境を作ったり、Colabを使ったりしてましたが、結局はAUTOMATIC1111/Stable Diffusion Web UIが一番使いやすかったです。

github.com

これのREADMEに従ってインストールします。

またTrinArtは課金します

背景AIガチャ

背景をひたすらAIに書いてもらって、修正して良さげなものをみつけます。

背景はStable Diffusionのimg2imgを使いました。

promptはLexicaとか、MidjourneyのTrendから良さそうなものを見つけます

https://lexica.art/

生成してもらう:

色々生成してもらった結果を組み合わせる:

また生成して良さそうなものを選ぶ:

最終的なpromptは以下です:

background illustration, cyberpunk, architecture, trending on artstation, highly detailed, line drawing, manga, bande dessinée, colorful minimalist industrial interior massive hallway with monolithic pillars in the style of ridley scott and stanley kubrick

背景はそのまま使うのではなく部分的に修正しながら、グラデーションマップを使いました。

キャラクターの書き込み

ラフを生成モデルにぶちこんでラフに書き込みを加えます

AI Gen:

ここから色や線を参考にしつつラフを仕上げます:

うーん、むずい

背景と組み合わせると…

うーん、背景の暗さとマッチしないですね

何故良くないか

何故パッとしないか、グレースケールでみると分かりやすいです。

人物主体なのに全体的にメリハリがなくパッとしないからだと考えました。

なので、パッとさせるために光源を考えて影のメリハリをつけます。

今回は逆光で描きました。

乗算レイヤーとリニアライトレイヤーを使って影と光を描きました。

その後、色調補正レイヤー、グラデーションマップレイヤーを使ってメリハリを付けました

グレースケールで見るとよくなったことが分かります

グレーで考えるという方法も先述したルーミスやジャックハムに言及されている話でもあります。

また、絵の印象を良くする方法として、遠くから見て何が描いてるかすぐわかるというのも一つの基準としても良さそうに思いました。

さらにAIに食わせてより良くする

この描いた結果をAIに入力して、さらに完成度を上げていきます。

ここでTrinArtを使いました、アウトプットの結果例は以下です:

プロンプト:

vtuber girl, long hair two tone color black and silver, blue skirt, cyan suit and elbow gloves, arms raised above her head, pixiv ranking

このアウトプットから、

  • 「この絵は目が良いから参考にしよう」
  • 「服の質感が良いから近くなるようにしよう」
  • 「髪の感じがいいので真似てみよう」
  • 「影の境界を参考にしよう」

といった部分部分で補正する形で描いていきます

結果は一番最初に載せた絵となります:

絵の上手い人たちの暗黙知を良い感じに吸収できるように思えました。

まとめ

今回描いた絵の過程から、拡散生成モデルをどのように用いたかを解説しました。

結果としては完成度を高めたり、雑に描いたもののデザインの提案に役に立てそうだと感じました。

ただ、(当たり前かもしれませんが)自分の表現したいものに対して、AIのアウトプットを取捨選択し反映することは、絵が上手くないと難しいと感じました。

絵画の基礎能力がないとAIのアウトプットを十分に効果を発揮できないなと、自分の絵画に対する能力不足と共に感じました

基礎能力とは例えば以下のようなものが考えられました:

  • パース
  • 構図
  • 光源の設定
  • 美術解剖学(AIがアウトプットした正当でない人体を補正したりなど)

AIに仕事が奪われると言われる昨今ですが、AIもとい技術の発展により、まずは

  • 絵を描けない人はtxt2imgによって自分の作品(文章・ゲーム・音楽など)に絵を付与することで幅を広げることができる
  • 絵を描ける人は生成モデルによって自分の作品をアップデートしたり、アイデアの創出、さらに自分の技術を高めることができる

といった関係になるのではないかと思っております。

(それまで、DeepL, Github Copilotが出てきた結果、ビギナーは敷居が下がり、エキスパートは自分の仕事をより高度なものにする使い方がされていってる流れから、帰納的にそうなっていくのではないかなと感じます)