タグ: プロンプト

  • [ComfyMaster14]ComfyUIでのTextToImageを極める!!(4)複数キャラを同時に制御する

    ComfyUIで「思い通りの画像を生成したい!けど思うようにいかない…」という方、TextToImage(t2i)を使いこなせていますか?
    Stable Diffusionの内部の仕組みを理解し、ComfyUIでのText to Imageテクニックを身につけて、思い通りの画像を生成できるようになりましょう!

    画像
    制御したいですよね

    こんにちわ、AICU media編集部です。
    ComfyUI マスターガイド」第14回目になります。

    前回「ComfyUIでのTextToImageを極める!! (3)Concatで複数CLIPをつなぐ」で
    は、Conditioning(Concat)ノードと複数CLIPを結合して「プロンプトの限界」を超え、その内部動作をソースコードから確認しました。
    今回は実験を通して確認していきたいと思います。

    長いプロンプトを使った実験

    前回、Concatをつかうことで、長いプロンプト中の「緑の森」「赤い城」といった背景/世界と建築物での「色分け」を紹介しました。

    CLIP1「a red castle on a hill」(1344×768, seed:13)
    CLIP2「A fantasy landscape, overlooking a vast green forest」

    画像

    さらに Conditioning(Concat)のToとFromはToがベースプロンプトで、Fromが追記であることを解説しました。でも短いプロンプトで入れ替えてみても絵に変化はなく、どちらがベースなのかは確認できなかったという結論になっていました。
    今回はキャラクターイラストを使って、ものすごく長いプロンプトで実験してみましょう。
    AICUで生成AIを使ってキャラクターデザインやイラストレーションを担当している犬沢某先生に相談して長めのプロンプトをいただきました。

    face focus, dog ears, 1boy, best quality, 16K, eating hair, dog nose, looking at looking at viewer, short hair, skinny, big eyes, dark skin, tall, naked overalls, 20-year-old,

    beautiful, bold black outline, pink, pastel colors, Light Pink, scowl, brown hair, golden eyes, simple line drawing, animal ears, solo, brown hair, overalls, cat ears, dark skin, short hair, dark-skinned female, simple background, choker, sweater, yellow shirt, long sleeves, pink choker, white background, closed mouth, extra ears, animal ear fluff

    これは2つのキャラクターを表現する2つのプロンプトを貼り付けたものです。途中に「髪を食べる(eating hair)」という謎の単語を含めて合計78ワードあります。

    画像

    Concatを使った実験:単純な結合

    まずは実験として、「Load Default」をつかって初期のワークフローにして、モデルをSDXL(sd_xl_base_1.0.safetensors)に変更し、, seed=13 fixed, 1344×768にして、CLIPひとつでそれぞれ生成してみます。

    「face focus, dog ears, 1boy, best quality, 16K, eating hair, dog nose, looking at looking at viewer, short hair, skinny, big eyes, dark skin, tall, naked overalls, 20-year-old, beautiful, bold black outline, pink, pastel colors, Light Pink, scowl, brown hair, golden eyes, simple line drawing, animal ears, solo, brown hair, overalls, cat ears, dark skin, short hair, dark-skinned female, simple background, choker, sweater, yellow shirt, long sleeves, pink choker, white background, closed mouth, extra ears, animal ear fluff」、ネガティブプロンプトは「text, watermark」(2トークン消費)で生成してみます。

    画像

    さすが!!かわいい!
    男性と女性が混ざった雰囲気ですね。長いプロンプトが結合できていることが確認できました。

    プロンプトの整理

    次にこの2人分のプロンプトを前半と後半に分けて生成してみます。

    画像

    前半「face focus, dog ears, 1boy, best quality, 16K, eating hair, dog nose, looking at looking at viewer, short hair, skinny, big eyes, dark skin, tall, naked overalls, 20-year-old」
    Negative 「text, watermark」, SDXL, 1344×768, seed=13

    (顔の焦点, 犬の耳, 1boy, 最高品質, 16K, 髪を食べる, 犬の鼻, 見る人を見ている, 短い髪, 痩せている, 大きな目, 浅黒い肌, 背が高い, 裸のオーバーオール, 20歳)

    画像

    顔に焦点を当てた半裸でオーバーオールを着た20歳の青年が生成されました。続いて後半です。

    後半「beautiful, bold black outline, pink, pastel colors, Light Pink, scowl, brown hair, golden eyes, simple line drawing, animal ears, solo, brown hair, overalls, cat ears, dark skin, short hair, dark-skinned female, simple background, choker, sweater, yellow shirt, long sleeves, pink choker, white background, closed mouth, extra ears, animal ear fluff」
    Negative 「text, watermark」, SDXL, 1344×768, seed=13

    (美しい, 太い黒の輪郭, ピンク, パステルカラー, ライトピンク, しかめっ面, 茶色の髪, 金色の目, シンプルな線画, 動物の耳, ソロ, 茶色の髪, オーバーオール, 猫耳, 浅黒い肌, 短い髪, 浅黒い肌の女性, シンプルな背景, チョーカー, セーター, 黄色のシャツ, 長袖, ピンクのチョーカー, 白背景, 閉じた口, 余分な耳, 動物の耳の綿毛)

    画像

    Concatを使った実験:整理と結合

    これらを Conditioning(Concat)を使って繋いでみます。

    画像

    CLIP1-Conditioning_to「face focus, dog ears, 1boy, best quality, 16K, eating hair, dog nose, looking at looking at viewer, short hair, skinny, big eyes, dark skin, tall, naked overalls, 20-year-old」
    CLIP2-Conditiong_from「beautiful, bold black outline, pink, pastel colors, Light Pink, scowl, brown hair, golden eyes, simple line drawing, animal ears, solo, brown hair, overalls, cat ears, dark skin, short hair, dark-skinned female, simple background, choker, sweater, yellow shirt, long sleeves, pink choker, white background, closed mouth, extra ears, animal ear fluff」
    Negative 「text, watermark」, SDXL, 1344×768, seed=13

    画像

    1boyとdark-skinned femaleが混ざっていますので、難しいと思います。中性的ではありますが、どちらかというと男性っぽいですね。
    まずはConcatで結合が機能していると考えられます。

    FromとToはどっちがベースなのか実験的に確認する

    さてFromとToはどっちがベースなのか実験的に確認していきましょう。
    さきほどの中性的なイラストの前後半を入れ替えてみます。

    画像

    CLIP1-Conditioning_to「beautiful, bold black outline, pink, pastel colors, Light Pink, scowl, brown hair, golden eyes, simple line drawing, animal ears, solo, brown hair, overalls, cat ears, dark skin, short hair, dark-skinned female, simple background, choker, sweater, yellow shirt, long sleeves, pink choker, white background, closed mouth, extra ears, animal ear fluff」
    CLIP2-Conditiong_from「face focus, dog ears, 1boy, best quality, 16K, eating hair, dog nose, looking at looking at viewer, short hair, skinny, big eyes, dark skin, tall, naked overalls, 20-year-old」
    Negative 「text, watermark」, SDXL, 1344×768, seed=13

    画像

    たしかに同じではなさそうです。toとfromは英語的な意味とは逆で、「toがベースでfromが追加条件」という説が実証できているようにも見えます。

    キャラクターの描き分け実験:空白CLIP、クオリティプロンプト

    実はこのプロンプト、2つのキャラクターが混ざっています。1boyとfemale、Dog earsと Cat ears、「髪の毛を食べる」と「口を閉じる」という破綻しやすそうなキーワードが混在していますので、これを整理してみます。

    混ざっているプロンプトをわかりやすく、キャラクター1,2と演技、画風やクオリティプロンプト、と分けて入れ替えてみます。

    キャラクター1「1girl, pink, pastel colors, Light Pink, scowl, golden eyes, animal ears, solo, overalls, cat ears, dark skin, short hair, dark-skinned female, choker, sweater, yellow shirt, long sleeves, pink choker, closed mouth, extra ears, animal ear fluff」(1girl、ピンク、パステルカラー、ライトピンク、しかめっ面、金色の目、動物の耳、ソロ、オーバーオール、猫耳、黒い肌、ショートヘア、肌の黒い女性、チョーカー、セーター、黄色のシャツ、長袖、ピンクのチョーカー、口を閉じた、余分な耳、動物の耳の綿毛)

    これをConditioning_toに設定して、Conditioning_fromを空白する例と、それを入れ替えた例、さらにクオリティプロンプトと背景設定を入れ替えた例を実験します。

    画像

    やはり空白のような極端に短いCLIPでは効果は確認できないようです。クオリティプロンプトを加えてみます。

    画像

    Conditioning_to「1girl, pink, pastel colors, Light Pink, scowl, golden eyes, animal ears, solo, overalls, cat ears, dark skin, short hair, dark-skinned female, choker, sweater, yellow shirt, long sleeves, pink choker, closed mouth, extra ears, animal ear fluff」
    Conditioning_From「beautiful, bold black outline, simple line drawing, simple background, white background, best quality, 16K」

    画像
    画像

    Conditioning_to「beautiful, bold black outline, simple line drawing, simple background, white background, best quality, 16K」
    Conditioning_from「1girl, pink, pastel colors, Light Pink, scowl, golden eyes, animal ears, solo, overalls, cat ears, dark skin, short hair, dark-skinned female, choker, sweater, yellow shirt, long sleeves, pink choker, closed mouth, extra ears, animal ear fluff」

    画像

    たしかに、ベースプロンプトがConditioning_toではありそうです。長いプロンプトでの実験は効果ありそうです。画風とキャラクターについての実験を続けます。

    続いてキャラクター2のプロンプトを設定します。もともと頂いたプロンプトからキャラクターとして一貫性がありそうな「1boy, dog ears, dog nose, short hair, skinny, big eyes, looking at viewer, dark skin, tall, naked overalls, 20-year-old, brown hair」(1boy、犬耳、犬鼻、短髪、痩せ型、大きな目、視聴者を見ている、黒い肌、背が高い、裸のオーバーオール、20歳、茶髪)として、先程のキャラクター1の代わりに入れてみます。

    画像

    Conditioning_to「1boy, dog ears, dog nose, short hair, skinny, big eyes, looking at viewer, dark skin, tall, naked overalls, 20-year-old, brown hair」
    Conditioning_from「beautiful, bold black outline, simple line drawing, simple background, white background, best quality, 16K」

    画像

    入れ替えてみます。

    画像

    Conditioning_to「beautiful, bold black outline, simple line drawing, simple background, white background, best quality, 16K」
    Conditioning_from「1boy, dog ears, dog nose, short hair, skinny, big eyes, looking at viewer, dark skin, tall, naked overalls, 20-year-old, brown hair」

    画像

    たしかに、ベースプロンプトがConditioning_toではありそうです。

    実験:多段Concat

    それではConcatを多段にするとどうなるでしょうか?
    接続としては以下のようになります。
    Concat1(To:画風 + From: キャラクター1boy)
    Concat2(To:Concat1の結果+Form:キャラクター2girl)

    画像
    画像

    多段Concatは問題なく接続されますし、結果も良好です。
    さて次は問題です。

    Concat1(To:画風 + From: キャラクター2girl)
    Concat2(To:Concat1の結果+Form:キャラクター1boy)

    このようなネットワークを組んだときに、boyが出るのかgirlが出るのか、皆さんはどう考えますか?

    画像
    画像

    結果は「入れ替えても変わらない」です。Conditioningの多段、特にFromを多段Concatで入れ替えても結果は変化ありませんでした。
    シードによって描かれる結果は変わりますが、Fromを入れ替えても変化はないのです。これは便利ですね。

    画像
    画像

    Concat1(To:キャラクター1boy+ From: 画風
    Concat2(To:Concat1の結果+Form: キャラクター2girl

    画像

    Concat1(To:キャラクター1boy+ From: キャラクター2girl
    Concat2(To:Concat1の結果+Form: 画風

    画像

    ComfyUIにおいて強調構文は平均ではなく、Fromは掛け算のように働くと覚えておくと良いのかもしれないですね。

    実験:Combineでの融合と入れ替え

    同じようにConditioning(Concat)ではなく、Conditioning(Combine)で融合と入れ替えをしてみます。こちらも全く変化なしです。

    画像
    画像
    画像
    画像
    画像
    画像

    複数の異なる特徴を持ったキャラクターを描くには?

    さて、Concatの理解は進みましたでしょうか?
    では複数の異なる特徴を持ったキャラクターを描くにはどうやったら良いのでしょうか?

    ポイントは、まず「大事なものはToに設定」そして「それぞれのCLIPにも設定」しましょう。
    複数のキャラクターの画風の統一を図りたい、同じ空間や世界に配置したいときはToに書きます。これをベースとして、このように2人の人物が出てくれば、あとは詳細を75トークン以内で表現するだけで2人以上のキャラクターの画像をそれぞれ生成することができるようになります。

    CLIPを2つでConcatだけで構成する場合にはこんな感じです。
    [CLIP1] best quality, beautiful, 1girl and 1boy,
    [CLIP2] best quality, beautiful, 1girl and 1boy,
    ここまでいれる、というテクニックが非常に重要です。
    こんな絵も作れるようになります。

    画像

    [CLIP1]
    best quality, beautiful, 1girl and 1boy, 1girl, female, 20-year-old, cat ears, pink choker, sweater, yellow shirt, long sleeves, white background, closed mouth, extra ears, animal ear fluff, solo, brown hair, overalls, pink, pastel colors, Light Pink, face focus,

    [CLIP2]
    best quality, beautiful, 1girl and 1boy, blue choker, eating hair, dog ears,16K, dog nose, looking at looking at viewer, short hair, skinny, big eyes, dark skin, tall, naked overalls, bold black outline, scowl, brown hair, golden eyes, simple line drawing, animal ears, simple background, dark skin, short hair, dark-skinned

    多段Concatを使った作例

    実際にはCLIP2つだけで複数キャラクターと世界や画風を設定するよりも、多段のConcatを使ったほうが楽かもしれません。
    一連の流れを出力例からおさらいします。

    画像

    ベースになる画風を1段目のConditiong_toに設定します。

    Conditiong_to「1boy and 1girl, beautiful, bold black outline, simple line drawing, simple background, white background, best quality, 16K」

    画像

    二人がどんな演技をしているか、共通で維持したいものはすべてのCLIPに入れておけば強調されます。

    画像

    conditioning_fromとconditioning_toに共通に「1girl and 1boy」を入れて、それぞれの特徴をCLIP1とCLIP2で詳細に描写していくことができます。

    画像

    このあたりで一度、シードをfixedからIncrementに変更して、Queue Prompt Extra Options▶Batch countを20として、20枚、シードを増やしながら一気に生成してみます。

    画像
    画像
    美しい結果はメンバーシップエリアに置いておきます…!

    肌の褐色をプロンプトで強調していくか、いろんな方向性があり得ると思いますが、ここまで制御性が高くなっていると、好きなテイストを選ぶことも難しくないと思います。

    この段階では画風、肌の色やレイアウトのほうが表情や指といった細かいところよりも重要です。画面比率を変えると大幅に変わってしまいますので今回は1344×760で固定しておいたほうが良いでしょう。
    SDXLの場合、テキスト以外にも画像解像度等の条件が加えられる場合はconditioning_toの方を使います。

    表情や指がおかしいところはImageToImageで修正できますが(次回以降)、今回はネガティブプロンプトやembeddingで仕上げていきます。

    プロンプトだけのSDXL、TextToImageで完成させた作品がこちらです。
    便宜上、CLIP0、CLIP1、CLIP2と呼んでいますが、いままでの2段構成のConditioning(Concat)によって実装しています。

    画像

    CLIP0(conditioning_to) : 1boy and 1girl looking each other, beautiful, bold black outline, simple line drawing, simple background, white background, best quality, 16K

    CLIP1(Conditiong_from) : 1boy and 1girl looking each other,1boy face focus, dog ears, 1boy, best quality, 16K,, dog nose, looking at looking at viewer, short hair, skinny, big eyes, dark skin, tall, naked overalls, 20-year-old

    CLIP2(Conditioning_from) : 1boy and 1girl looking each other, 1girl , pink, pastel colors, Light Pink, scowl, golden eyes, animal ears, solo, overalls, cat ears, dark skin, short hair, dark-skinned female, choker, sweater, yellow shirt, long sleeves, pink choker, closed mouth, extra ears, animal ear fluff

    Negative: text, watermark, embeddings:negativeXL_D

    まとめ:conditioning

    これまで4回にわたってComfyUIでSD1.5およびSDXLを使ってプロンプトの基本的な方法から、応用的なテクニックまでを紹介してきました。今回はイラストレーションで「複数のキャラクターを同時制御する」という実験を行いましたが、プロンプトだけでなく、CLIPの内部やConditioningを使ってComfyUIならではの絵作りを探求していくベースになったようであれば幸いです。実はconditioningにはたくさんあり、今回紹介したCombine、Concatの他にはAverage、 Set Areaなど複数存在します。例えばAverageは結合ではなく線形補間します。

    画像

    次回は、image-to-imageの方法を紹介します。乞うご期待!

    X(Twitter)@AICUai もフォローよろしくお願いいたします!

    画像生成AI「ComfyUI」マスターPlan

    画像生成AI「Stable Diffusion」特に「ComfyUI」を中心としたプロ向け映像制作・次世代の画像生成を学びたい方に向けたプランです。最新・実用的な記事を優先して、ゼロから学ぶ「ComfyUI」マガジンからまとめて購読できます。 メンバーシップ掲示板を使った質問も歓迎です。

    • メンバー限定の会員証が発行されます
    • 活動期間に応じたバッジを表示
    • メンバー限定掲示板を閲覧できます
    • メンバー特典記事を閲覧できます
    • メンバー特典マガジンを閲覧できます
    • 動画資料やworkflowといった資料への優先アクセスも予定

    ゼロから学ぶ「ComfyUI」マガジン

    https://note.com/aicu/m/md2f2e57c0f3c

    マガジン単体の販売は1件あたり500円を予定しております。
    2件以上読むのであればメンバーシップ参加のほうがお得です!というのもメンバーシップ参加者にはもれなく「AICU Creator Union」へのDiscordリンクをお伝えし、メンバーオンリー掲示板の利用が可能になります。

    https://note.com/aicu/membership/boards/61ab0aa9374e/posts/db2f06cd3487?from=self

    もちろん、初月は無料でお試しいただけます!
    毎日新鮮で確かな情報が配信されるAICUメンバーシップ。
    退会率はとても低く、みなさまにご満足いただいております。
    ✨️オトクなメンバーシップについての詳細はこちら

    本編で2人以上のキャラクターをそれぞれ描くことができるようになりましたね。ここではシードを変えた問のさまざまな中間生成画像を紹介します。


    この記事の続きはこちらから https://note.com/aicu/n/nacf66b92d2d5

    Originally published at https://note.com on Sept 4, 2024.

  • [12]ComfyUIでのTextToImageを極める!!(2)Combineでプロンプト融合

    「思い通りの画像を生成したい!けど思うようにいかない…」という方、TextToImage(t2i)を使いこなせていますか?
    Stable Diffusionの内部の仕組みを理解し、ComfyUIでのText to Imageテクニックを身につけて、思い通りの画像を生成できるようになりましょう!

    こんにちわ、AICU media編集部です。
    ComfyUI マスターガイド」第12回目になります。
    この記事では、ComfyUIを始めたばかりの方向けに、プロンプトの基本から応用、そしてComfyUI特有のテクニックまでを、実用的なプロンプト例を交えながらわかりやすく解説します。

    前回は「ComfyUIでのTextToImageを極める!!(1)プロンプトの基本文法」と題してプロンプトの基本文法について解説いたしました。

    前回はこちら

      複数CLIPの活用: Combine

      ComfyUIでは、複数のCLIPTextEncodeノードとConditioning(Combine)ノードを組み合わせることで、複数のプロンプトを同時に使用できます。例えば「龍」と「虎」を別々のCLIPTextEncodeノードに指定すると、「龍」と「虎」を組み合わせた画像を生成することができます。

      使用方法

      標準ワークフローを改造し、「龍」と「虎」を組み合わせた画像を生成してみます。

      • メニューの「Load Default」をクリックし、標準のワークフローをロードした状態にします。
      • モデルがSDXLの場合は「Empty Latent Image」を「1024, 1024, 1」
      • ポジティブプロンプト用のCLIP Text Encode (Prompt)ノードを1つ追加します。なにもない場所をダブルクリックして「CLIP」と打ちます。
      • 追加したノードの入力「clip」には、Load Checkpointの出力「CLIP」を接続します。
      画像
      • 1つ目のCLIPTextEncodeノードのプロンプトに「tiger」と入力します。
      • 2つ目のCLIPTextEncodeノードのプロンプトに「dragon」と入力します。
      画像
      • Conditioning(Combine)ノードを作成し、2つのCLIPTextEncodeノードの出力を接続します。

      なにもない場所をダブルクリックして「combine」と打つと現れます

      画像
      • Conditioning(Combine)ノードの出力をKSamplerpositive入力に接続します。
      画像

      概念図としては以下のような接続になります。

      画像
      • 最終的なワークフローは以下になります。
      画像

      このようにすることで、「龍」と「虎」を組み合わせた画像を生成することができます。以下が生成した画像です。

      画像
      画像
      画像
      画像
      画像

      この記事では、ComfyUIでSDXLのプロンプトを記述する基本的な方法から、応用的なテクニックまでを紹介してまいります。

      次回は、プロンプトテクニックの第3弾で、『プロンプトのバッチ分割: Concat』について解説をしていきたいと思います!こうご期待ください!

      X(Twitter)@AICUai もフォローよろしくお願いいたします!

      画像生成AI「ComfyUI」マスターPlan

      画像生成AI「Stable Diffusion」特に「ComfyUI」を中心としたプロ向け映像制作・次世代の画像生成を学びたい方に向けたプランです。最新・実用的な記事を優先して、ゼロから学ぶ「ComfyUI」マガジンからまとめて購読できます。 メンバーシップ掲示板を使った質問も歓迎です。

      • メンバー限定の会員証が発行されます
      • 活動期間に応じたバッジを表示
      • メンバー限定掲示板を閲覧できます
      • メンバー特典記事を閲覧できます
      • メンバー特典マガジンを閲覧できます
      • 動画資料やworkflowといった資料への優先アクセスも予定

      ゼロから学ぶ「ComfyUI」マガジン

      https://note.com/aicu/m/md2f2e57c0f3c

      マガジン単体の販売は1件あたり500円を予定しております。
      2件以上読むのであればメンバーシップ参加のほうがお得です!というのもメンバーシップ参加者にはもれなく「AICU Creator Union」へのDiscordリンクをお伝えし、メンバーオンリー掲示板の利用が可能になります。

      https://note.com/aicu/membership/boards/61ab0aa9374e/posts/db2f06cd3487?from=self

      もちろん、初月は無料でお試しいただけます!
      毎日新鮮で確かな情報が配信されるAICUメンバーシップ。
      退会率はとても低く、みなさまにご満足いただいております。

      ✨️オトクなメンバーシップについての詳細はこちら


      この記事の続きはこちらから https://note.com/aicu/n/n39bfb3e55468

      Originally published at https://note.com on Sept 2, 2024.

    1. [11]ComfyUIでのTextToImageを極める!!(1)プロンプトの基本文法

      「思い通りの画像を生成したい!けど思うようにいかない…」という方、TextToImage(t2i)を使いこなせていますか?
      Stable Diffusionの内部の仕組みを理解し、ComfyUIでのText to Imageテクニックを身につけて、思い通りの画像を生成できるようになりましょう!

      こんにちわ、AICU media編集部です。
      ComfyUI マスターガイド」第11回目になります。
      この記事では、ComfyUIを始めたばかりの方向けに、「text to image」プロンプトによる画像生成の基本から応用、そしてComfyUI特有のテクニックまでを、実用的なプロンプト例を交えながら数回に分けて解説していきます。

      前回はこちら

        1. 今回の対象とするモデル

        今回は、SDXLを対象にプロンプトテクニックを解説します。特定のモデルに焦点を当てて話す理由としては、プロンプトの書き方や使用するノードがモデルの種類やバージョンにより異なるためです。ここでは、複雑性を減らして解説するために、メジャーなモデルのSDXLを利用します。各種モデルの評価については、別記事にて解説予定です。

        ユーザーが知っておくべき「モデルとの対話」について簡単に図解しておきます。

        画像

        ここからの画像生成では、モデル(checkpoint)としてstable-diffusion-xl-base-1.0を使用します。

        • メニューから「Manager」を選択します。
        画像
        • ComfyUI Manager Menuが開きます。ここで「Model Manager」を選択します。
        画像
        • モデルの検索画面が表示されます。
        • 上部の検索バーに「sd_xl_base_1.0.safetensors」と入力すると、モデル一覧にsd_xl_base_1.0.safetensorsが表示されます。
        • sd_xl_base_1.0.safetensors「Install」をクリックしてください。
        画像
        • しばらくすると、インストールが完了し、Refreshを求められます。
        画像
        • トップ画面に戻り、メニューの「Refresh」をクリックしてください。
        画像
        • Load Checkpointsd_xl_base_1.0.safetensorsを設定できるようになります。
        画像

        2. プロンプトと画像サイズ、シードの基本をおさらいしよう

        プロンプトとは、AIモデルに画像を生成させるための指示文のことです。人間が言葉でAIに指示を出すための手段とも言えます。例えば、「夕焼けのビーチで遊ぶ子供たち」というプロンプトを入力すると、SDXLはそのような画像を生成しようとします。プロンプトが具体的であればあるほど、思い通りの画像が生成されやすくなります。

        プロンプト例

        A photo of a cat wearing a Santa hat, sitting on a Christmas present

        このプロンプトは、クリスマスのプレゼントの上に座っている、サンタの帽子をかぶった猫の写真を生成するようにSDXLに指示します。「Santa hat」や「Christmas present」といった具体的な単語を追加することで、よりクリスマスらしい画像が生成されやすくなります。

        画像

        画像サイズとシードを固定して実験

        [TIPS] SD1.5系からSDXLに切り替えたときは、「Empty Latent Image」を[512, 512]から[1024, 1024]に切り替えるのを忘れずに。SDXLは1024×1024に最適化されているので、生成するLatent画像のサイズが小さいと本来の能力が発揮されません。
        なお 1024×1024=1,048,576で必要なピクセル幅で割れば高さが求められますが、例外もあります。特に注意したいのは「16:9」で、割り算するとwidth:1365, height:768が最適…と思いきや、実はSDXL自体がこのサイズで学習をしておらず、推奨の16:9設定は「”1.75″: (1344, 768)」、もしくは「”1.91″: (1344, 704)」(nearly 16:9)となります。

        画像

        実験のためにseedを1234, control_before_generateをfixedにして実験してみます。

        画像

        1368×768 (seed:1234)

        画像

        1344×768 (seed:1234)

        画像

        1344×704 (seed:1234)

        画像

        あんまりわかりやすい違いはありませんが、実用的には以下のようにおぼえておくと良いかもしれませんね!

        ■ComfyUI SDXLでのHDTV(16:9)最適画像サイズ

        1368×768: 非推奨 (AS比1.77) 最適解像度より2,048ピクセル多い
        1344×768: 学習済 (AS比1.75) 最適解像度より16,384ピクセル少ない
        1344×704: 学習済 (AS比1.91) 最適解像度より102,400 ピクセル少ない。noteカバーアートにぴったりサイズ

        画像

        AICU mediaでの実験によると、Google ColabのT4 GPU, RAM13GB, GPU RAM 15GB環境でのSDXLにおいて、1344×768、1344×704が平均23秒/生成(1.15s/it)であるところ、1368×768は28秒/生成(1.27s/it)というところです。なおs/itという単位はiterationといって、1ステップあたりの処理時間であるようです。この場合の設定はstep=20なので、ちょうど計算があいます。

        生成時間が気になるひとは、ぜひログを見てみてください!

        画像
        Google Colab上で確認できます

        3. 基本的なプロンプトの書き方

        SDXLのプロンプトは、基本的に英語で記述します。シンプルな英語で記述しても高品質な画像が生成されますが、より詳細な指示を与えることで、より思い通りの画像を生成できます。

        3.1 プロンプトの構成要素

        プロンプトは、以下の要素を組み合わせて文章形式で記述します。

        • 芸術スタイル: 画像の雰囲気や画風(例:写真、絵画、アニメなど)
          • 例1: oil painting(油絵)
          • 例2: Pencil drawing(鉛筆画)
          • 例3: Concept art(コンセプトアート)
        • 主題: 描写したいもの(例:猫、風景、人物など)
          • 例1: Lion(ライオン)
          • 例2: Panda(パンダ)
          • 例3: A warrior with a sword(剣を持った戦士)
        • 色とトーン: 画像の全体的な色彩や雰囲気を指定
          • 例1: Vibrant colors(鮮やかな色彩)
          • 例2: Monochrome(モノクロ)
          • 例3: Warm tones(暖かい色調)
        • ディテールと複雑さ: 画像の細部の精密さや全体的な複雑度を指定
          • 例1: Highly detailed(非常に詳細)
          • 例2: Intricate patterns(複雑な模様)
          • 例3: Minimalist(ミニマリスト)
        • 技術的特性: 画像の技術的な側面や品質に関する指定
          • 例1: High resolution(高解像度)
          • 例2: Photorealistic(写真のようにリアル)
          • 例3: 8K(8K解像度)

        プロンプト例

        以下にこの構成に従って作成したプロンプトと生成画像を示します。

        oil painting, majestic lion, golden sunset hues, Highly detailed, photorealistic, 8K
        画像

        これらの要素を組み合わせて、より複雑なプロンプトを作成できます。

        3.2 単語の区切りと記号

        • 単語は空白で区切ります。
        • `,`などの記号は、単語区切りとなる場合があります。

        プロンプト例

        A cat, black and white, sleeping on a red, fluffy rug
        画像

        3.3 コメント

        プロンプトにコメントを追加したい場合は、C言語のような記法が使えます。`//` で行末まで、`/* */` で囲まれた部分がコメントになります。

        プロンプト例

        A portrait of a man with a beard // ひげを生やした男性の肖像画
        /* 年齢は30代くらい */ wearing a suit, photorealistic style
        画像
        画像
        イケメンです

        4. プロンプトの強調

        特定の単語やフレーズを強調したい場合は、括弧で囲みます。

        • (単語): 1.1倍強調
          • 例: A portrait of a woman with (green) eyes
        • ((単語)): 1.21倍強調
          • 例: A portrait of a woman with ((long)) blonde hair
        • (単語:数値): 数値で任意の倍率を指定
          • 例: A landscape with a (bright:1.5) blue sky

        プロンプト例

        A fantasy landscape with a (red:1.5) castle on a hill, overlooking a vast forest

        この例では、「red」が強調され、より赤が強調された描画がされやすくなります。以下の画像は、強調前と強調後の比較画像です。両方とも同じシード値を利用して生成しています。強調後は、全体的に赤くなっており、赤が強調されていることが分かります。

        画像
        画像

        5. ComfyUIでのプロンプト入力

        ComfyUIでは、CLIPTextEncodeノードでプロンプトを入力します。このノードは、プロンプトをSDXLが理解できる形式に変換する役割を果たします。

        ComfyUIでのSDXL環境では、ポジティブプロンプトとネガティブプロンプトの両方を同じCLIPTextEncodeノードで指定できます。

        画像
        • ポジティブプロンプト: 生成したい画像の特徴を記述します。
        • ネガティブプロンプト: 生成したくない画像の特徴を記述します。

        それぞれのプロンプト用にCLIPTextEncodeノードを用意し、KSamplerノードの対応する入力に接続します。詳細は、以下の記事をご覧ください。

        6. embeddingでの品質向上

        embedding(エンベッディング)は、特定の概念やオブジェクトを表現する埋め込みベクトルを学習したファイルで、非常に小さなファイルなのですが、これをComfyUIで読み込むことで、画像生成の際に特定のスタイルや要素を反映させたり、ネガティブプロンプトを簡略化することができます。
        例えば、ネガティブプロンプトをまとめたembeddingを使うと、たくさんのネガティブプロンプトを指定する必要がなくなります。

        使用方法

        冒頭で紹介した通り、ComfyUI Manager → Model Manager →検索窓に入れる方法でインストールできるものはそちらの方法がオススメです。例えばSD1.5でよく使われる「EasyNegative」は簡単にインストールできます。

        画像

        今回は、「negativeXL_D」というSDXLで人気の複数のネガティブプロンプトが埋め込まれているembeddingを使用します。ComfyU Manager経由でのインストールではない方法を紹介します。

        https://civitai.com/models/118418/negativexl

        https://huggingface.co/gsdf/CounterfeitXL/blob/main/embeddings/negativeXL_D.safetensors

        • negativeXL_D.safetensorsをダウンロードし、ComfyUI/models/embeddingsフォルダに格納してください。

        このリンクからいったんPC/Macのストレージにダウンロードし、Google ColabかGoogle Driveを使って、アップロードします。

        画像

        メニューの「Refresh」すると反映されます。「Restart Required」と表示された場合は、ComfyUI Managerからの再起動で問題なく利用できますが、それ以外の問題が起きた場合は、念の為Google Colabを再起動しましょう。

        • embeddingを使用するには、プロンプトに「embedding:[embeddingの名前]」を含めます。今回の場合は、ネガティブプロンプトに「embedding:negativeXL_D」を含めます。ポジティブプロンプトは「1girl」のみとします。
        画像

        以下が生成結果です。embeddingありの場合は、リアル調で細部がはっきり描かれています。

        画像

        1344×704 (seed:3) “1girl”のみ

        画像

        1344×704 (seed:3) “1girl” +  ネガティブプロンプトに「embeddings:EasyNegative」を指定

        画像

        1344×704 (seed:3) “1girl” +  ネガティブプロンプトに「embeddings:negativeXL_D」を指定

        画像

        1344×704 (seed:3) “1girl” +  ネガティブプロンプトに「embeddings:EasyNegative, embeddings:negativeXL_D」を指定

        画像

        EasyNegativeとnegativeXL_Dは同じ作者・rqdwdw 氏によるembeddingsであり、近い特性を持っていますが、混ぜて使うことは必ずしも良い結果を産まないようです。¥

        AUTOMATIC1111では「Textual Inversion」という機能で扱われていたembeddingですが、かつてのテクニックもモデルさえ同じであればそのまま使うことができます。 embedding、negative XLについての混合実験についてはこちらの記事もご参照ください。

        https://note.com/aicu/n/n1ebba31e4514

        中間まとめ

        この記事では、ComfyUIでSDXLのプロンプトを記述する基本的な方法をまとめました続いて、応用的なテクニックを紹介していきます。

        <次回に続きます!>

        X(Twitter)@AICUai もフォローよろしくお願いいたします!

        SDXLによる画像生成AIについてしっかり学びたいひとはこちらの書籍「画像生成AI Stable Diffusionスタートガイド」(通称「#SD黄色本」)がオススメです。

        https://j.aicu.ai/SBXL

        画像生成AI「ComfyUI」マスターPlan

        画像生成AI「Stable Diffusion」特に「ComfyUI」を中心としたプロ向け映像制作・次世代の画像生成を学びたい方に向けたプランです。最新・実用的な記事を優先して、ゼロから学ぶ「ComfyUI」マガジンからまとめて購読できます。 メンバーシップ掲示板を使った質問も歓迎です。

        • メンバー限定の会員証が発行されます
        • 活動期間に応じたバッジを表示
        • メンバー限定掲示板を閲覧できます
        • メンバー特典記事を閲覧できます
        • メンバー特典マガジンを閲覧できます
        • 動画資料やworkflowといった資料への優先アクセスも予定

        ゼロから学ぶ「ComfyUI」マガジン

        https://note.com/aicu/m/md2f2e57c0f3c

        マガジン単体の販売は1件あたり500円を予定しております。
        2件以上読むのであればメンバーシップ参加のほうがお得です!というのもメンバーシップ参加者にはもれなく「AICU Creator Union」へのDiscordリンクをお伝えし、メンバーオンリー掲示板の利用が可能になります。

        https://note.com/aicu/membership/boards/61ab0aa9374e/posts/db2f06cd3487?from=self

        もちろん、初月は無料でお試しいただけます!
        毎日新鮮で確かな情報が配信されるAICUメンバーシップ。
        退会率はとても低く、みなさまにご満足いただいております。
        ✨️オトクなメンバーシップについての詳細はこちら


        この記事の続きはこちらから https://note.com/aicu/n/n93bac52cfcf5

        Originally published at https://note.com on Sept 1, 2024.

      1. 【超入門 Stability AI API】「モデルとの対話」実習編。Stable Diffusion 3 時代に知っておきたいプロンプトの新常識

        こんにちは、AICU代表の しらいはかせ です。
        本日は重大ニュースがありますので、最後までしっかりお読みください。

        前回、Stability AI API Guideの「超入門」としてライターのRUNO.さんに基本となるGenerate APIと「TextToImageの最近の文法」を総ざらいしていただきました。

        Google Colabを使って、基本的な操作に慣れたところだと思います。

        この記事ではこの先の画像生成の時代に長く役に立つ「モデルとの対話テクニック」とStable Diffusion 3時代に知っておきたいプロンプトの新常識についてお伝えします。

          「Stable Diffusion 3」の時代に知っておきたいプロンプトの新常識

          モデル、TextToImage、プロンプト、CLIP…

          画像生成AI「Stable Diffusion」の最大の特徴は、テキストを入力することで単語をもとに画像を生成できる機能です。これを「TextToImage(t2i)」、AIに対する指示を行うテキストを「プロンプト」と呼びます。その後も多様な画像生成AIが登場していますが、多くはCLIPという画像と言語の対を学習したモデルが内部に使われており、現在も様々な言語理解を特徴として有したモデルが提案・開発されています。新しい画像生成AIサービスやモデルに出会った時に、まずはモデルと対話して、効率的なプロンプトの構造を理解することが重要です。またモデルや、それを利用したネットワーク、学習方法が多様にあり、多くはそのモデルを調教した側のノウハウにもなるため公開はされていません。想像や噂がネット上にたくさんあるのですが「これが完璧」という方法を一様に宣言することは難しいです。最近のモデルはプロンプトを短くすることに努力が割かれていますし、一方では簡単なキーワードで美麗な結果が出すぎるモデルは「過学習」と言えるかもしれません。

          重要なのは「制御性」と仮説検証テクニック

          画像生成の使い手にとって重要なのは品質や速度、簡単さに加えて「意のままに操れること」つまり「制御性」が重要になります。いくつかのポイントをおさえて仮説検証を行いながらモデルと対話すると、短時間でその特徴を理解して制御することが可能になってきます。

          「モデルとの対話」と実用的で再現可能な実験手法

          また公式情報として提供されているStability AI 公式のAPIガイド、そしてサンプルに散りばめられたプロンプトテクニックを読むことも重要なヒントになります。さらにコミュニティの開発者や探求者による情報も重要なヒントがあります。大事なポイントは、噂や推測でなく、自分で手を動かして、それを検証しなが「モデルと対話」していくことです。実用的で再現可能な実験手法です。ここでは、いくつかの実践的な例や実験手法を通して、最新のStable Diffusion 3時代の文法や表現力を引き出すコツをお伝えします。

          例:ネガティブプロンプトの位置づけの変化

          たとえばこちらに、海外で書かれたStable Diffusion 3 Medium (SD3M)に関する検証記事があります。
          How to get the best results from Stable Diffusion 3
          Posted June 18, 2024 by @fofr
          https://replicate.com/blog/get-the-best-from-stable-diffusion-3

          コミュニティのDELLさんが日本翻訳を公開してくれています。
          ■あなたはStable diffusion 3 の真の性能を発揮できていない

          https://qiita.com/nqdior/items/bd980e2664966871272e

          従来のStable Diffusionと SD3Mが異なる要素として、

          1. プロンプトの長さの制限が大幅に緩和され、より詳細な指示が可能になったこと
          2. 3つのテキストエンコーダーが採用され、表現力とメモリ効率のバランスを取れるようになったこと
          3. ネガティブプロンプトが効果を持たなくなり、詳細なポジティブプロンプトと適切な設定が重要になったこと

          などが挙げられています。SD3Mはオープンモデルなので実際にComfyUI等を使ってより詳細に対話することができます。ネガティブプロンプトはノイズを与える程度の意味しかなくなっています。さらにポジティブプロンプトはより具体性が求められ、従来あったCLIP テキストエンコーダーの77トークンの制限を気にする必要はなく、プロンプトは10,000文字、または1,500語以上といった、従来のプロンプトの常識とは異なるモデルになっています。

          前回の復習「プロンプトの文法:モデルとの対話ポイント」

          Stability AI API で提供されている各種モデル(Ultra, Core, SD3Large等)は、上記のSD3Mと同じではなく、上位のSD3を使ってより使いやすくトレーニングされたモデルになっています。
          前回のポイントを復習しながら、実際に手を動かしながら理解を深めてみたいと思います。同じプロンプト、同じシードを設定すると同様の結果画像が出力されますので、是非お手元で試してみてください。

          画像

          それでは実際に、公式で提供されているGoogle Colabサンプルを用いて、
          画像生成してみましょう!

          Stability AI 提供の公式サンプルへのショートカット
          https://j.aicu.ai/SAIci

          APIリファレンスから参照する場合はこちらから
          https://platform.stability.ai/docs/api-reference

          気になるAPI費用も最高画質のUltraでも1枚10円前後ですから文房具代感覚で使っていくと良いと思います。
          加えて、今回の復習でSD3時代の新常識を身につけると、効率よく画像生成ができるので「GPUやそれを運用する電気代より安い…」という感覚がでてくると思います。

          ポイント①:「生成したい画像のイメージを的確にする」

          画像のイメージ、とはなかなか難しいのですが、「主題・背景・その他」と整理しました。わかりやすく表現すれば単に「女の子」ではなく「女の子、どこで?何着ている?どんな画風で?どんなポーズで?どんな表情をしているの?」といった、主題に続く場面、画風、演出を具体的に意識しましょう。
          逆にモデルと対話したい場合は1語「girl」とだけ打ってみて、Seedや画面の縦横比を変えてみると良いです。具体的な指示がなかったときに何が起きるかを把握できるからです。

          ▼「girl」(seed:39, aspect ratio 1:1)Ultraにて生成

          画像

          ▼「girl」(seed:40, aspect ratio 1:1)Ultraにて生成

          画像

          ▼「girl」(seed:39, aspect ratio 16:9)Ultraにて生成

          画像

          どれも美麗な出力結果ですが、具体的に「どこで、どんな画風で、何を着ているの…?」といった対話するための「画像のイメージ」を持つことが大切です。

          ポイント②:「知っておくべきルール」

          • 英語で書く
          • 単語もしくは 文の区切りにカンマ(,)を入れる

          このあたりは基本として変わらないようです。こういうときも「日本語で書いてみると反応するかも?」という視点で試しておくと良いでしょう。

          ▼「日本人」(seed:39, aspect ratio 16:9)Ultraにて生成

          画像

          ▼「日本人」(seed:40, aspect ratio 16:9)Ultraにて生成

          画像

          日本語をある程度解釈していることがわかります。
          フランス語で「フランス人(les Français)」も試してみましょう。

          ▼「les Français」(seed:38, aspect ratio 16:9)Ultraにて生成

          画像

          ▼「les Français」(seed:39, aspect ratio 16:9)Ultraにて生成

          画像

          想像したような画像が出力されておりますでしょうか?
          フランスの法律によれば、「フランス人」は『すべて個人的にフランス国籍を享受する人々であり、また集団として主権領土として、自由な国民または国家としてフランスを享受する人々』ですが、なかなか「人々」を描いてくれません。日本語の学習と他の言語の学習を比較すると一様ではないということでもあります。

          具体的に英語で「人々(people)」を表現してみましょう。

          ▼「French people」(seed:39, aspect ratio 16:9)Ultraにて生成

          画像

          ▼「Japanese people」(seed:39, aspect ratio 16:9)Ultraにて生成

          画像

          ステレオタイプを強化する意図はないですが、「具体的に、英語で指示する」ことが重要なポイントであることが検証できました。

          カンマや順番についても実験しておきます。

          ▼「Japanese, people」(seed:39, aspect ratio 16:9)Ultraにて生成

          画像

          ▼「people, Japanese」(seed:39, aspect ratio 16:9)Ultraにて生成

          画像

          カンマで区切ったり、順番を入れ替えたりすることで、同シード・同じアスペクト比でも全く異なる画像が出る可能性があることがわかりました。

          ロケ地が近いことはなんとなく想像できるのですが、やはり「プロンプトの具体性がないと、画像として美しい絵はしっかり出るけれども、制御が難しい」という「ルール」が体感できたようであればまずは十分です。

          ポイント③:「クオリティプロンプトを使用する」

          過去、Stable Diffusion 1.x時代、Stable Diffusion XL (SDXL)時代に画像生成界隈で言及されてきたプロンプトの常識として「クオリティプロンプト」がありました。例えば、傑作(masterpiece)、高クオリティ(high quality, best quality)、非常に詳細(ultra detailed)、高解像度(8k)といった「定型句」を入れるとグッと画質が上がるというものです。これは内部で使われているCLIPやモデル全体の学習に使われた学習元による「集合知(collective knowledge/wisdom of crowds/collective knowledge)」なのですが、「それがなぜ画質を向上させるのか?」を説明することは難しい要素でもあります。
          Stability AI APIでも上記のクオリティプロンプトは効果があり、意識して使ったほうが良いことは確かですが、過去と同じ使い方ではありません。
          実験的に解説してみます。

          ultra detailed, hires,8k, girl, witch, black robe, hat, long silver hair, sitting, smile, looking at viewer, full body, flower garden, blue sky, castle, fantasy, vivid color, noon, sunny

          #SD黄色本」からの引用です

          上記のプロンプトをクオリティプロンプトとしての「ultra detailed, hires, 8k,」を変更して、同じシード(seed:39)を使って Stability AI Generate Ultraによる比較をしてみました。

          ▼(seed:39), Stability AI Generate Ultraによる比較

          「girl, witch, black robe, hat, long silver hair, sitting, smile, looking at viewer, full body, flower garden, blue sky, castle, fantasy, vivid color, noon, sunny」

          実は合成魔法なの…!? 過去と異なるクオリティプロンプト

          最近のモデルの言語理解力は「単語単位ではない」ようです。例えば今回の実験で与えた{hires, 8k, ultra detailed}をそれぞれバラバラに与えた場合、ほんの少し画像への影響はありますが、どれも同程度の変化です。

          しかし、「ultra detailed, hires, 8k」という形で3ワード同時に与えた場合は大きく画風が変わります。

          またベースになっているプロンプトにおいても、どこにも『アニメ絵で描いて』という指定は入っていません。{fantasy, witch} といったワードを外しても、プロンプト全体の雰囲気でファンタジーイラストを生成します。

          ▼「girl, black robe, hat, long silver hair, sitting, smile, looking at viewer, full body, flower garden, blue sky, castle, vivid color, noon, sunny」(seed:39) Stability AI Generate Ultraによる生成

          画像

          ▼「girl, black robe, hat, long silver hair, sitting, smile, looking at viewer, full body, flower garden, blue sky, castle, vivid color, noon, sunny」(seed:40) Stability AI Generate Ultraによる生成

          画像

          ここで公式のAPIガイドを確認しておきましょう。

          What you wish to see in the output image. A strong, descriptive prompt that clearly defines elements, colors, and subjects will lead to better results.
          To control the weight of a given word use the format (word:weight), where word is the word you’d like to control the weight of and weight is a value between 0 and 1. For example: The sky was a crisp (blue:0.3) and (green:0.8) would convey a sky that was blue and green, but more green than blue.

          出力画像で表示させたいもの。 要素、色、主題を明確に定義するわかりやすい説明的なプロンプトを使用すると、より良い結果が得られます。
          特定の単語の重みを制御するには、(単語:重み)という形式を使用します。単語は重みを制御したい単語、重みは0から1の間の値です。例えば、「空は晴れやかだった(青:0.3), (緑:0.8)」は、青と緑の空を表現しますが、青よりも緑が強調されます。

          という1文があります。
          要素、色、主題、そしてカッコを使った重み構文についての実験と検証もしてみましょう。

          vivid color,を外して、代わりに「(photoreal:1.0)」を入れてみます。

          ▼(photoreal:0.5), girl, black robe, hat, long silver hair, sitting, smile, looking at viewer, full body, flower garden, blue sky, castle, noon, sunny (seed:40)

          画像

          この構文の数値は「0-1の間をとる」とのことですので、増減させることで、フォトリアル度を制御できます。この数字を減らすことで、アニメ絵に寄せることができるなら便利です。

          (photoreal:0.5), girl, black robe, hat, long silver hair, sitting, smile, looking at viewer, full body, flower garden, blue sky, castle, noon, sunny (seed:40)

          画像

          (photoreal:0.1), girl, black robe, hat, long silver hair, sitting, smile, looking at viewer, full body, flower garden, blue sky, castle, noon, sunny (seed:40)

          画像

          上手くフォトリアル-アニメ度を制御できました。

          逆に、1を超えて大きな値をいれるとどうなるでしょうか。

          (photoreal:2), girl, black robe, hat, long silver hair, sitting, smile, looking at viewer, full body, flower garden, blue sky, castle, noon, sunny (seed:40)

          画像

          うまくリアル度が上がっていきます。
          「さらに大きな値を…」と欲張ってみましたが、ここから先は絵が破綻します。あまりにお見苦しいので興味があるひとはご自身で試してみてください。
          仕様から読み取ることができる使い方としては、複数のワード間の重み付けに使えるので、バランスを取ったり、色指定や表情の指定に使うと良さそうです。

          ▼(photoreal:1) a 10 years old child looks (girl:0.5) (boy:0.5), black robe, hat, long silver hair, sitting, smile, looking at viewer, flower garden, blue sky, castle, noon, sunny (seed:40)

          画像

          男児か女児か微妙な「10歳の子供」が見事に表現できました。

          ポイント④:「ポーズを指定しよう」

          人物画などを生成したいときは、ポーズを指定してみましょう。

          • sitting (座る)
          • raise hands (手を上げる)
          • looking back (振り返る)
          • jumping (ジャンプ)

          こちらも、より深い言語理解を想定して、きちんと人物に係る場所に入れるのが大事です。さらに複数語に渡るワードの強調構文も有効で(AICUの独自実験によると)スペースでもハイフンも認識されるようです。

          (photoreal:1), a10 years old child looks (girl:0.5) (boy:0.5), (hands-on-own-cheeks:1), black robe, hat, long silver hair, sitting, smile, looking at viewer, full body, flower garden, blue sky, castle, noon, sunny (seed:39)

          画像

          (photoreal:1), a10 years old child looks (girl:0.5) (boy:0.5), (hands on own cheeks:1), black robe, hat, long silver hair, sitting, smile, looking at viewer, full body, flower garden, blue sky, castle, noon, sunny (seed:39)

          画像

          男児か女児かわからない10歳ぐらいの子供が、「頬に手を当てこっちをみている」が表現できました。

          ポイント⑤:「構図を指定しよう」

          ポーズを指定しても、思ったような絵が出ない場合は、構図を指定すると効果的です。構図を後から変えると絵全体が変わることがあるので、初めからある程度決めておくのがおすすめです。

          • from above (上から)
          • from below (下から)
          • face focus (顔のアップ)
          • from side (横顔)

          さきほどのプロンプトから「looking at viewer, full body」を外して「(from side:1)」を入れてみます。

          ▼(photoreal:1), a10 years old child looks (girl:0.5) (boy:0.5), (hands on own cheeks:1), black robe, hat, long silver hair, sitting, smile, (from side:1) ,flower garden, blue sky, castle, noon, sunny (seed:39)

          画像

          ▼(photoreal:1), a10 years old child looks (girl:0.5) (boy:0.5), (hands on own cheeks:1), black robe, hat, long silver hair, sitting, smile, (from side:1), (face focus:1) ,flower garden, blue sky, castle, noon, sunny (seed:39)

          画像

          いい感じに顔に注目が当たりました。さらに目線をがんばってみたい。

          ▼(photoreal:1), a10 years old child looks (girl:0.5) (boy:0.5), (hands on own cheeks:1), black robe, hat, long silver hair, sitting, smile, (from side:1), (eyes focus:1) ,flower garden, blue sky, castle, noon, sunny (seed:39)

          画像

          顔や目だけでなく、指にも気遣いたいのでバランスを取っていきます。

          ▼(photoreal:1) (from side:1), a10 years old child looks (girl:0.5) (boy:0.5), (hands on own cheeks:1), black robe, hat, long silver hair, sitting, smile, (finger focus:0.5), (eyes focus:0.5) ,flower garden, blue sky, castle, noon, sunny (seed:39)

          画像

          良いプロンプトができました。
          念のため、シードも複数で試しておきますね。

          ▼(photoreal:1) (from side:1), a10 years old child looks (girl:0.5) (boy:0.5), (hands on own cheeks:1), black robe, hat, long silver hair, sitting, smile, (finger focus:0.5), (eyes focus:0.5) ,flower garden, blue sky, castle, noon, sunny Seed:40

          画像
          指もいいかんじですね

          ▼(photoreal:1) (from side:1), a10 years old child looks (girl:0.5) (boy:0.5), (hands on own cheeks:1), black robe, hat, long silver hair, sitting, smile, (finger focus:0.5), (eyes focus:0.5) ,flower garden, blue sky, castle, noon, sunny Seed:41

          画像
          画像
          Seed 42
          画像
          Seed 43

          「中性的な魅力を持った子供っぽい魔法使い」を制御性高く表現できるようになりました。

          まとめ

          Stable Diffusion 3時代に知っておきたいプロンプトの新常識と、その検証方法を整理しました。ファンタジーイラストからフォトリアルまで、完璧に制御できるプロンプトの文法、さらに画風や性別なども数字で表現できるテクニック、シードを使った制御方法やその確認など、今までのTextToImageよりもさらに深い世界が広がっていることを感じていただけたようであれば幸いです。
          これらのテクニックやモデルとの対話方法により、従来のホビー向けイラスト表現や「一発出し」のフリー画像素材的な使い道を超えて、商業広告やグラフィックデザイン、動画制作のようなプロフェッショナル用途に使用できる可能性が大きく拡がっています。しかもライセンス的にもすべて商用利用可能です。

          AICUもさまざまなAI時代のクリエイターとともに、AI時代の商業映像開発、パイプライン開発、教育マテリアル開発などを行っています。

          Stability AI APIは手軽に使えて高機能で、こんなに美麗なグラフィックスが作れるのに、使いこなしのための情報が少ない!
          AICU media編集部ではこれからも Stability AIさんやクリエイティブAIコミュニティのみなさんと協力して、各種読み物メディアで日々APIガイドの日本語情報を発信していきます。

          記事はこちらに集約されています
          マガジン「Stability AI Fan!」
          ▶Stability AI APIガイド(インデックスページはこちら

          https://note.com/aicu/n/n4eda1d7ffcdf

          そして品質の高い技術を開発していただいている、Stability AIさんありがとうございます!

          https://corp.aicu.ai/ja/stability-ai

          そして「ワタシはこんな風に使いこなしてる!」という方、ぜひAICUでクリエイターとして活躍しませんか?ライターや案件など X@AICUai のDMやメンバーシップ、コミュニティDiscordにて随時お話お聞きしております。

          重大ニュース!「Coloso」とのコラボ講座
          超入門: Stable Diffusionではじめる画像生成AI」開講!!

          さて、誰もが簡単に出せるt2iから、プロフェッショナル向け、商業向けレベルの生成AIクリエイティブの新時代もやってきています。
          これはCGの歴史を振り返ってみても確実な流れです。
          ここで重大ニュースの発表です。

          画像
          https://coloso.global/

          世界中のトップクラスのコンテンツばかりを集めたオンライン講座の国際企業「Coloso」(コロッソ)とAICUが一緒に企画した、初めてのクリエイティブAIに関する専門講座「超入門: Stable Diffusionではじめる画像生成AI」が7日後(2024年8月23日)に公開されます!

          画像
          このシリーズ「超入門 Stability AI API」と同じなのでは…?いえいえ違います!

          講座内容はAICU mediaで人気の日々お送りしている生成AIクリエイティブの情報、画像生成AIの歴史や文化、GPU不要・Macでも安心な環境構築、Google Slidesを使ったオリジナルツール、そして「超入門 Stability AI API」でもお送りしている「Stability AI API」を使って基礎の基礎から丁寧に学ぶ「基礎編」、さらに美麗なファッションデザインを自分で制作する「応用編」、広告業界やクリエイティブ業界にとって気になる「広告バリエーション」を生成AIだけで制作する「活用編」、そして画像生成AIにおける倫理など広範になる予定です。

          画像
          受講者はオリジナルファッションブランドのルックブックを作りあげることができます

          全20講座超え、総プログラム時間10時間を超える豊富なカリキュラムで構成されています。
          (AICUクリエイターの夏休みのすべてが凝縮されています!!)

          【代表からのメッセージ】
          世界の動画ラーニングプラットフォームのトップブランド「Coloso」で、AICUから今回の講座を発表できることを嬉しく思います。
          今回、準備しながら感じたこととして。日々の読み物メディアで発信をしつつ、企業向けコンサルティング大企業向けワークショップで数多くのトップクリエーターさん向けにレクチャーを提供させていただいているAICUですが、今回はさらに広い方々向けに動画メディアで短期集中で実用的なテクニックを確実に学べる講座を企画いたしました。このような企画が短時間で実現できたのは、画像生成AI分野を長年研究し「つくる人をつくる」をビジョンに活動するデジタルハリウッド大学発の国際スタートアップ企業「AICU Inc.」と、国際ラーニングメディア「Coloso」とのコラボならでは!と感じています。
          世界を舞台に日々進化する画像生成AIの分野。長期に活用できるようなテクニックを、従来の画像生成の常識を揺さぶりながら、最新のテクニックを短い時間で丁寧に、楽しく集中して学べる良質コンテンツになっておりますので、「これからはじめてみたい」という方々も、画像生成に詳しい方々も、「最先端の使いこなしを知りたい」「社内教育に使いたい」といった方々にもご活用いただければ幸いです。

          講座のカリキュラムが確認できる詳細ページは、7日後
          8月23日に公開される予定ですのでもう少しお待ちください!

          実は今、Colosoで講座の事前通知申請を申請すると
          6,000円の割引クーポンがもらえるので、お得な特典をお見逃しなく!
          ▶事前通知を申請する>> https://bit.ly/3YGSNda

          以上、AICU media編集部・および代表のしらいはかせがお送りしました。
          🙇今後とも皆さんの応援をよろしくお願いいたします🙇

          最後まで読んでいただきありがとうございました!

          Originally published at https://note.com on Aug 16, 2024.

        1. 【超入門】Stability AI API 公式サンプルで「TextToImageの最近の文法」を総ざらい!

          こんにちは、AICU media編集部です。ライターのRUNO.がお送りします!

          今回は、Stability AI API Guideの「超入門」!
          Generate APIと「TextToImageの最近の文法」を総ざらいします。

            Stability AI APIとは?

            Stability AI APIは、Stability AIが提供するクラウドベースのAPIサービスです。後述のGoogle Colabでの実験環境だけでなく、Google Slidesや独自のアプリなどで、画像生成をはじめとしたパワフルな機能を利用することができます。ユーザーはGPUやサーバーといった演算環境をはじめ、何も用意する必要はありません。
            そして、とても重要な特徴なのですが、Stability AIのAPIはすべて「商用利用可能な画像生成が可能」なのです。これはあまり知られていないことなのですが、後々のトラブルを防ぐためにもプロフェッショナル向けの画像生成において意識しておきたいポイントです。

            APIの種類と特徴について

            Stability AI公式ページでは、2024年8月現在全部で16個の画像系モデルが存在しています(coming soonと記載されたものを含めると18個)。

            https://note.com/aicu/n/n4eda1d7ffcdf

            動画生成、言語、3D、オーディオを含めると23種類となります。

            画像

            画像系は大きくは「Generate」「Upscale」「Edit」「Control」の4つに大別され、それぞれ次のような特徴があります。

            • 「Generate」:いわゆる「TextToImage」です
              • プロンプト(テキスト)によって画像生成を行う
              • 現在6つのモデルが提供されている
            • 「Upscale」:高解像度化
              • ベースとなる画像を入力し、そこにプロンプト(テキスト)で指示を追加し画像生成を行う
              • 現在{Creative, Conservative}という2つのモデルが提供されている(加えて、Standardがcoming soonとして予告されている)
            • 「Edit」いわゆるImageToImageです
              • ベースとなる画像を入力し、そこにプロンプト(テキスト)で指示を追加し画像再生成を行う
              • 現在{Search and Replace, Inpaint, Outpaint, Remove Background, Erase Object}5つのモデルが提供されている
            • 「Control」こちらも いわゆる ImageToImage です
              • ベースとなる画像を入力し、そこにプロンプト(テキスト)で指示を追加し画像再生成を行う
              • 現在{Sketch, Structure, Style}3つのモデルが提供されている(加えて、 Recolorがcoming soonとして予告されている)

            https://platform.stability.ai

            今回は最も基本的な「Generate API」について解説していきます。

            Generate APIとは

            新しい画像や既存の画像のバリエーションを生成するためのツールです。
            TextToImage(テキストから画像を生成する)の根幹を担いますが、最高品質の画質と文字を書く能力(タイポグラフィー)、照明、色合い、構成力などに優れています。特にStable Diffusion 3世代のモデルから作られた Ultraは特筆に値します。

            Stable Image Ultra
            Stability AIの最も先進的な「Text to Image」画像生成サービスであるStable Image Ultraは、前例にないほど迅速な言語理解と最高品質の画像を作成します。Ultraは、タイポグラフィー、複雑な構成、ダイナミックな照明、鮮やかな色合い、そしてアート作品全体のまとまり(cohesion)と構成力に優れています。Stable Diffusion 3をはじめとする最先端のモデルから作られたUltraは、Stable Diffusionエコシステムにおける最高のサービスです。

            https://platform.stability.ai/docs/api-reference#tag/Generate  より人力翻訳

            Stable Diffusion 3時代のプロンプトの文法

            まず、Stable Diffusionではテキストを入力することで単語をもとに画像を生成し、これを「TextToImage(t2i)」と呼びます。このAIに対する指示を行うテキストを「プロンプト」と呼びます。
            モデルによって様々な言語理解が特徴としてありますが、まずはモデルと対話して、効率的なプロンプトの構造を理解することが重要です。

            画像

            モデルが多様にあるため「これが完璧」という方法を一様に宣言することは難しいです。想像や噂がネット上にたくさんあるのですが、最近のモデルはプロンプトを短くすることに努力が割かれていますし、一方では簡単なキーワードで美麗な結果が出すぎるモデルは「過学習」とも言えるかもしれません。画像生成の使い手にとって重要なのは品質や速度、簡単さに加えて「意のままに操れること」つまり「制御性」が重要になります。いくつかのポイントをおさえてモデルと対話すると、その特徴を理解して制御が可能になってきます。
            Stability AI 公式のサンプルに散りばめられたサンプルプロンプトを読んでいると、最新のStable Diffusion 3時代の文法や表現力を引き出すコツが見えてきます。ポイントを整理して、実際に手を動かしながら理解を深めてみたいと思います。

            ポイント①:「生成したい画像のイメージを的確にする」

            例として「遠くに小さな小屋の前で、少女が青い小鳥と仲良く遊んでいる」といったイメージがあったとします。これを細部を深めつつ分解して考えてみましょう。

            • 主題:少女、赤いワンピース、赤い靴、三つ編み、青い小鳥…
            • 背景:小屋・青空・草原・森・木々・差し込む光
            • その他:ファンタジー・落ち着いた雰囲気・昼間・晴れている

            ビジュアルを構成する要素を大きく分けると「主題」と「背景」、そしてアニメ風やファンタジーイラスト、フォトリアルなどの「画風」、さらに構図、表情、雰囲気といった演出の要素になります。

            画像

            ポイント②:「知っておくべきルール」

            • 英語で書く
            • 単語もしくは 文の区切りにカンマ(,)を入れる

            例:ルール通りにプロンプトを書く

            • 主題:1girl, red one-piece dress, red shoes, braided hair, a bluebird
            • 背景:a cottage, blue sky, meadow, forest, trees, rays of sunlight
            • その他:fantasy, calm atmosphere, daytime, sunny

            ポイント③:「クオリティプロンプトを使用する」

            これまで画像生成界隈で言及されてきたプロンプトの常識として「クオリティプロンプト」がありました。例えば、傑作(masterpiece)、高クオリティ(high quality, best quality)、非常に詳細(ultra detailed)、高解像度(8k)といった「定型句」を入れるとグッと画質が上がるというものです。Stability AI APIでもクオリティプロンプトは効果があります。

            画像

            ultra detailed, hires, 8k, girl, witch, black robe, hat, long silver hair, sitting, smile, looking at viewer, full body, flower garden, blue sky, castle, fantasy, vivid color, noon, sunny

            上記のプロンプトをクオリティプロンプトとしての「ultra detailed, hires, 8k,」を変更して、同じシード(seed:39)を使って Stability AI Generate Ultraによる比較をしてみました。

            画像

            なお最近のモデルでは既にこのような常識も学習済みであったり、モデルや出力する画風によっては逆効果になる場合もあります。
            Stability AI API の公式情報によると、

            出力画像で表示させたいもの。 要素、色、主題を明確に定義するわかりやすい説明的なプロンプトを使用すると、より良い結果が得られます。
            特定の単語の重みを制御するには、(単語:重み)という形式を使用します。単語は重みを制御したい単語、重みは0から1の間の値です。例えば、「空は晴れやかだった(青:0.3)」と「(緑:0.8)」は、青と緑の空を表現しますが、青よりも緑が強調されます。

            という指摘があります。AICUでは日々、このような制御構文は研究を進めており、詳しくは別の機会に実験方法とともに解説したいと思います。

            ポイント④:「ポーズを指定しよう」

            画像

            人物画などを生成したいときは、ポーズを指定してみましょう。

            • sitting (座る)
            • raise hands (手を上げる)
            • looking back (振り返る)
            • jumping (ジャンプ)

            ポイント⑤:「構図を指定しよう」

            画像

            ポーズを指定しても、思ったような絵が出ない場合は、構図を指定すると効果的です。構図を後から変えると絵全体が変わることがあるので、初めからある程度決めておくのがおすすめです。

            • from above (上から)
            • from below (下から)
            • face focus (顔のアップ)
            • from side (横顔)

            【実践:基礎】 Google Colabサンプルの動かし方

            それでは実際に、公式で提供されているGoogle Colabサンプルを用いて、
            画像生成してみましょう!

            Stability AI 提供の公式サンプルへのショートカット
            https://j.aicu.ai/SAIci

            APIリファレンスから参照する場合はこちらから
            https://platform.stability.ai/docs/api-reference

            ステップ1:公式Colabにアクセスする

            APIリファレンスを開くと、公式Colabが次のように提供されています。

            画像
            ピンクの枠部分をクリックすると、公式が提供しているColabに飛ぶことができます
            画像

            実際のリンクはこちらになります。

            https://colab.research.google.com/github/stability-ai/stability-sdk/blob/main/nbs/Stable_Image_API_Public.ipynb#scrollTo=yXhs626oZdr1

            ステップ2:画像生成を始めるための準備

            クリックしてColabに飛ぶと、このような画面になります。

            画像生成を始める準備として、上から3つの操作を順番に実行する必要があります。

            画像
            まずはInstall requirementsを実行しましょう

            警告が表示されますが、今回は公式が提供しているColabになるので、
            「このまま実行」をクリックします。

            画像
            青い字で書かれた「このまま実行」をクリックします

            これが完了したら、次にConnect to the Stability APIを実行します。

            画像
            このピンクの枠部分がConnect to the Stability APIの実行ボタンです

            実行すると、このようにAPIキーの入力を求められます。

            画像

            APIキーは、Stability AIにアクセスし、右上のアカウントアイコンをクリックすることで取得することが可能です。

            画像
            右上のアカウントアイコンをクリックしましょう
            画像
            こちらの API key のリンクからでも取得可能です

            https://platform.stability.ai/account/keys

            画像
            ピンクの枠内にAPIキーが表示されています(※マスキングしております)

            「sk-… 」で始まる文字列がAPIキーです。

            これを先ほどのColabの枠内に入力し、Enterを押しましょう。

            完了したら、最後にDefine functionsを実行しましょう。

            画像
            ピンクの枠に示すボタンをクリックし、Define functionsを実行します

            ここまで完了したら、それより下に続くモデルをどれでも利用可能な状態になります。

            ステップ3:モデルを選んで、いざ画像生成!

            今回は、Stable Image Ultraを使って、画像生成をしてみましょう!

            サンプルでは、はじめからこのようなプロンプト例と実行例が表示されています。

            画像
            はじめはこの状態

            既に入力されているプロンプトを削除し、生成したい画像を示すプロンプトを「prompt」箇所に入力します。

            今回は、上で例にとった「遠くに小さな小屋の前で、少女が青い小鳥と仲良く遊んでいる」を生成してみます。

            実際はプロンプトは一行で書きますが、見やすいように要素ごとに分けて記載します。

            prompt:

            • best quality(クオリティプロンプト)
            • 1girl, little girl, wide angle, vertical angle, red one-piece dress, red shoes, gold braided hair(主題1)
            • a tiny bluebird, playing, chatting(主題2)
            • in front of a cottage, blue sky, meadow, forest, trees, rays of sunlight, fantasy, calm atmosphere, daytime, sunny(背景など)

            次に、ネガティブプロンプトを入力します。
            ネガティブプロンプトとは、写って欲しくないものを入力し、出力画像のクオリティを上げるために指定します。

            たとえば、

            • 普通のクオリティ(normal quality)
            • 醜い(ugly)
            • 上手に生成されていない手(bad hands)
            • 暗い雰囲気にしたくないとき(dark)

            今回はシンプルに

            negative prompt:  normal quality, ugly

            とします。

            ちなみに、ネガティブプロンプトは細かく入れすぎると逆効果の場合もあります。できるだけシンプルに入れることで無駄な制約を減らすことができます。

            aspect_ratioは出力画像のサイズを指定します。
            seedは画像の種類に番号が振られているようなイメージで、同じseedかつ同じプロンプトでは毎回同じ出力が得られます。絵柄を固定したい時などに便利です。

            今回はaspect_ratio: 3:2, seed: 39とします。

            それぞれの設定が入力できたら、実行ボタンを押下します。

            画像
            いざ、実行!

            実行が完了すると、画像が表示されます。

            画像
            嬉しい!
            画像
            かわいらしい!そして画質がいい!

            まるでアニメのオープニングのような美しい画像が得られました!

            皆様はイメージ通りの画像が得られましたでしょうか?

            補足1:画像の保存

            この段階で表示された画像を保存したいときは、表示されている画像を右クリックすることで「名前をつけて保存」で保存できます。

            画像

            もう一つの方法はGoogle Colabの左側にあるフォルダタブ📁をクリックして「generated_…」という名前のPNG画像を保存することです。

            画像

            どちらも1216×832ピクセルの同じ画像です。
            これをGoogle Driveに直接保存する方法がありますが、こちらは公式サンプルをほんの少し修正する必要がありますので別の機会に紹介します。

            補足2:Colabをドライブにコピーし、オリジナルのコードを追加する

            左上から「ドライブにコピー」を押すと、ログインしているGoogleアカウントのGoogle driveにColabノートブックをコピーすることができます。

            画像
            自分のドライブ上で自由に生成を楽しもう

            オリジナルのpythonコードを追加して、生成した画像を自動でGoogle drive上のフォルダにアップロードするなど、
            コードを追加すれば様々な処理が可能になります。

            ちなみに、自分のドライブにコピーをしないままコードを追加しようとするとこのようなエラーが出てしまい、実行することができません。

            画像
            コードを追加したいときは最初に自分のドライブにコピーしてから始めましょう!

            【実践:応用】 Upscaler機能紹介とデモ

            Upscalerとは、画像を入力として与え、そこにテキストで追加指示を送ると、高画質に変換してくれるAPIです。

            現在公式が提供しているColab上では「Creative Upscaler」と「Conservative Upscaler」の2つを利用することができます。

            先ほどUltraで生成したColabの画面を下にスクロールすると、Upscaler機能を利用できます。

            画像
            下にスクロールするとUpscalerなど他のモデルがあります

            「Creative Upscaler」と「Conservative Upscaler」の違い

            • Creative Upscalerは、与えた画像にさらにクリエイティブな加工を施すとともに、高画質化して出力します。
            • Conservative Upscalerは、与えた画像を高画質化して出力します。

            先ほどUltraで出力した画像をこの2つのモデルにかけてみましょう。

            Upscalerを始めるための準備

            まずは、画面左側の「ファイルマーク」をクリックします。
            下に示す画像に従って、順番にクリックしていきましょう。

            画像
            画面左側のファイルマークをクリックします
            画像
            次に、一番上のファイルマークをクリックします
            画像
            「content」ファイルにカーソルを当て、右側のマークをクリックします
            画像
            表示されたメニューから「アップロード」をクリックします。

            そして、先ほどUltraで生成した画像を選んで、アップロードします。

            少し待つと、この三角マークを押して表示される「content」フォルダの中にアップロードした画像の名前が表示されます。

            画像
            contentフォルダの中身を確認しましょう
            画像
            アップロードした画像にカーソルを当て、メニューを開きます
            画像
            「パスをコピー」をクリックします

            これで、Upscalerを利用する準備ができました!

            Creative Upscalerを使ってみよう!

            「image」には今コピーしたファイルのパスをペーストします。
            「prompt」には、どのように加工を施すか入力します。
            「negative prompt」には写したくないものや雰囲気を、
            「creativity」には新たに施す加工をどの程度強くするかを設定します。

            今回は
              prompt: photorealistic, emotional
              negative prompt: normal quality, ugly
              seed: 39
              creativity: 0.30
            としました。

            画像
            入力イメージ

            さあ、実行してみましょう。

            画像
            フォトリアルに変わっています!

            比べてみると、高画質化もされているのがわかります。

            画像
            左がUpscale後の画像、右が元画像です

            Conservative Upscalerを使ってみよう!

            「Conservative」とは「保守的な」という意味です。
            「Creative」に対して、もとの画風を維持します。

            promptには、元画像を生成した時のプロンプトを入れます。
            その他の設定はCreative Upscalerと同じです。

            画像
            入力イメージ

            実行すると、次のような画像が得られました。

            画像
            ぱっと見は変化がわかりづらいかも?

            拡大して比較してみると、確かに高解像度化されているのがわかります。

            画像
            左が元画像、右がUpscale後の画像です

            [体験談] ライターのnoteアイコンを実際にUpscaleしてみた

            Upscale前の元画像がこちらになります。

            画像
            Upscale前の元画像です

            Upscale後の画像がこちらです。今回はConservative Upscalerを使用しました。この状態で見比べても、画質が良くなっていることがわかりますね!

            画像
            Conservative Upscalerで高画質化した後の画像です

            拡大して比較すると、明確にUpscaleされていることがわかります。

            画像
            左が元画像、右がUpscale後の画像です!

            元画像はDALL-Eを活用して生成しました。

            このように、他サービスで生成した画像をStability AI APIと掛け合わせて使うこともできるのですね。

            好みや用途に合わせて使うことで、より創作の幅が広がりますね。

            皆様もぜひ、気に入った画像を高画質化してみてくださいね!

            さいごに

            公式Colabには今回紹介した以外にも多くのAPIが公開されており、
            自由に触ることができます。

            様々なAPIを試し、ぜひ色々なタイプの画像生成にチャレンジしてみてくださいね!

            Stable Diffusionを開発・公開している Stability AI は、HuggingFaceで無償でダウンロード可能な Stable Diffusion をはじめとするオープンモデル以外に「Stability AI API」という有償のAPIも提供しています。高品質で高速、高機能なAPIであり、新しく魅力的な機能もどんどんリリースされているので 開発者向けのAPIガイド として紹介していきたいと思います。

            上記「Stability AI API Guide」noteより

            冒頭でも紹介したStability AI API Guideは随時更新していきます!

            https://note.com/aicu/n/n4eda1d7ffcdf

            最後に Stability AI APIの Stable Image Ultra で生成したカバーアートの探求を共有します。

            AICUのAIキャラクター「全力肯定彼氏くんLuC4」です

            画像
            画像

            3D化して

            画像

            実写化してみました

            画像

            そのまま学位帽をかぶせて3Dアニメーション風に…

            画像

            完成です!

            画像
            best quality, photorealistic, graduation cap, mortarboard, 1boy, very cool high school boy, solo, gentle smile, gentle eyes, (streaked hair), red short hair with light highlight, hoodie, jeans, newest, colorful illuminating dust, in a mystical forest seed:39

            ここまで読んでいただき、ありがとうございました!


            この記事の続きはこちらから https://note.com/aicu/n/n8981d463ee89

            Originally published at https://note.com on Aug 14, 2024.

          1. 【初心者向け!】Runway Gen-3 Alphaでプロンプト自動生成して簡単動画制作

            【初心者向け!】Runway Gen-3 Alphaでプロンプト自動生成して簡単動画制作

            AICU mediaライター・ AIクリエイターのぽんず(@ponzponz15)です!
            今回紹介する記事は『プロンプトジェネレーター』というものを使用して、私が約一時間で作成したビデオ です

            最新の動画生成AIの『RunwayGen-3 Alpha』『プロンプトジェネレーター』を使用すれば、誰でも簡単に、映画のようなハイクオリティ動画を制作すことができます
            本来であれば、一ヶ月近くかけてクレジットを消費しながら動画生成のコツを掴むものですが、これがあればわずか数日で、初心者でもつかいこなすことができます。

            画像
            Runway Gen-3 でめっちゃ動画を作りまくっているイメージ

            [AICUが開発]初級者:広告企画から動画制作までのプロセス

            1. プロ級の映像表現が誰でも簡単に

            私ぽんずは、Runway Gen-3がリリースされたその日に95ドルを課金して、毎日200回以上動画生成している動画生成オタクですので、十分なご説明ができます。お任せください。
            最近は、このGen-3に夢中で新しい動画を沢山生成しています。そんな私が自信を持っておすすめするのが、今回のテーマである「プロンプト自動生成ジェネレーター」です。初心者の方はGPTsを使うことをお勧めしますが、そんなの知らないよって方でもこれを使用すれば問題ありません。

            2. 完全初心者でも大丈夫!準備するもの

            あなたも今日から映像クリエイターの仲間入りです。
            必要なのは以下の3つだけです。

            1. Runway Gen-3 Alphaアカウント: https://www.runwayml.com/ からアカウントを作成できます。課金が必要です。
            2. ChatGPTなどのAIサービス: https://chat.openai.com/ など、無料で使えるAIサービスを利用しましょう。(GeminiClaudeなど)
            3. ちょっとの勇気: 難しいことは何もありません。あとは、この記事を参考にしていただき、どんどんチャレンジしていくだけです!

            3. プロンプトって? – 映像表現のためのプロンプトとは

            プロンプトとは、AIへの指示のこと。例えば、これまでの画像生成AIでは「美しい女性」や「犬」と書くだけで、クオリティの高い画像が生成できましたよね。

            しかし、Runway Gen-3 Alphaでは、5秒から10秒間の動画が生成されるため、それだけでは不十分になります。それは動画が始まってからの1秒にもみたない部分の指示でしかありません。もちろん、それだけでも十分すごいのですが、使いこなすためには「カメラの動き」や「雰囲気」といった映像表現を伝えるための指示が必要になってきます。

            例えば、「夕焼けの海」というプロンプトだけでは、ただ夕焼けの海が映っているだけの動画になってしまいます。

            ①夕焼けの海 (AからBに移行)

            「夕焼けの海に沈む太陽をすごい速さですすむカメラで捉え、海の中にもぐっていく」といったように、具体的な指示が必要になります。

            4. なぜプロンプトジェネレーターが必要なの? – 動画のためのプロンプトは難しい

            動画のためのプロンプトには、カメラワークや専門用語など、少し難しい知識が必要になります。

            例えば、公式ガイドに記載されているのがこちらです。
            [camera movement]: [establishing scene]. [additional details]
            こういった構造でプロンプトを書くことが推奨されています。

            「カメラワーク」や「専門用語」は、最初は戸惑ってしまうかもしれません。

            でも、大丈夫。
            専門知識がなくても、誰でも簡単に、効果的なプロンプトを作成できます。

            画像

            Runwayの公式ガイドで学ぶのが最適です。

            https://help.runwayml.com/hc/en-us/articles/30586818553107-Gen-3-Alpha-Prompting-Guide

            このジェネレーターは、Runway公式が推奨するプロンプト構造や、カメラワークなどの知識を組み込んでいます。このジェネレーターは、あなたの動画生成の補助輪のようなもの。

            補助輪を付けて、自転車に乗る練習をするように、このジェネレーターを使って、動画生成AIに必要な用語を徐々に覚えていきましょう。
            ゆくゆくは覚えた方がいいこともありますしね。

            本来であれば1ヶ月近くかけてクレジットを消費しながら動画生成のコツを掴むものですが、これがあればわずか数日でつかいこなすようになります。

            画像

            [AICU] クリスマス動画コンテスト実施中

            5. プロンプトジェネレーターの使い方 – ステップバイステップ解説

            ステップ1:AIサービスにアクセス

            画像

            Google AI Studio

            https://ai.google.dev/aistudio?hl=ja

            ChatGPTやGeminiなどのAIサービスを開きましょう。まだアカウントをお持ちでない場合は、無料で作成することができます。

            ステップ2:プロンプトジェネレーターのソースコードをコピー

            このブログ最下部のソースコードをコピーします。

            ステップ3:ChatGPTやGeminiに貼り付けて実行

            コピーしたソースコードをChatGPTやGeminiに貼り付け、実行ボタンをおします。

            ステップ4:希望する動画の内容を入力

            その後、あなたが生成したい動画のプロンプトを作成します。日本語でも問題ありませんが、英語の方が精度が高いかもしれません。
            プロンプトには、カメラワーク、シーン設定、追加の詳細など、細かく項目が分かれていますので、迷わずに入力できます。現状、Gen-3 Alphaには500字しか入力できませんので、全部は入れられないかもしれませんが、あまり気にせず問題ありません。

            ステップ5:完成したプロンプトをGen-3 Alphaに入力

            画像

            生成されたプロンプトをコピーし、Runway Gen-3 Alphaに入力して、動画を生成しましょう。5秒か10秒を選択しGenerateボタンを押せば生成が始まります。

            その際、秒数によってそれぞれ消費するクレジットが違いますのでご注意ください。

            https://ja.aicu.ai/runway-gen-3-alpha

            6. 実際に作られた動画例

            例1:サーフィン
            入力例『サーフィンからシームレスにスケボーしてる感じにして』

            ④サーフィン (シームレスにAからBに)

            例2:黒い玉
            入力例『荒野の黒い球をシームレスに別の形態に変化させて』

            Gen-3 Alphaを使いたいけど迷っている人はこの『比較動画』見て頂くと良いかもしれません。
            画像のプロンプトと違って、動きや変化を指示しないと全然動かないので課金前に知っておいたらクレジット節約になります。もう使ってる方も1000回以上生成してわかったコツをnote等に纏めていれば「バズる」ためのヒントになるはずです👌

            https://ja.aicu.ai/alpaca-making

            例3:ゴッホの世界
            『ゴッホの空の街をFPVで進んでいって』
            まるでゴッホが描いたパリの街並みがあったら、行ってみたいと思いませんか?
            Gen-3 Alphaが描いたゴッホの筆使いが息づく世界を探索しましょう〜🍽️

             例4:タイタニック風
            『沈んだ船の外観、船内に入ったら当時の豪華絢爛な風景が広がっている』

            これまでの動画生成AIとは次元が違うのがGen-3 Alphaが特別な技術や才能がなくとも、自分のアイデアを映画級に仕上げることができるためです。

            必要なのは、あなたの想像力。

            7. まとめ

            プロンプトジェネレーターを使えば、動画制作の知識がなくても、AIと会話しながら誰でも簡単に高品質な動画を制作できます。そして、これを使いながら映像技術に関わる知識を学び、さらに素晴らしい動画を生成していくことができます。ぜひ活用して、あなたの創造力を爆発させてください!

            プロンプトは(みんなが無料で使えてしまうとオリジナリティが薄れてしまうので)メンバーシップ向け有料配布といたしますが、こちらのポストをシェアしていただければ無償で提供いたします!

            素敵な作品ができたらメンバーシップ掲示板で共有してくださいね!

            https://note.com/aicu/membership/boards/61ab0aa9374e/posts/1aa202bf314a

            作例:プロンプトジェネレーターのソースコード

            続きはこちらです

            https://note.com/aicu/n/n304ded1ec059