タグ: ComfyUI

  • [ComfyMaster22] レイアウトそのままにアニメを実写化!image-to-imageとスタイル変換で実写化レベルを制御

    アニメ風のイラストを、レイアウトそのままに、実写化したいと思ったことはありませんか?ComfyUIのimage-to-imageでスタイル変換と実写化レベルのコントロールを使いこなしてみましょう。

    ComfyUI マスターガイド」第22回は、image-to-image (i2i)の応用編です。以前、スタイル変換について説明しました。

    今回は、i2iでのスタイル変換をさらに掘り下げて、denoiseの値がi2iの生成結果にどのような変化を与えるのかを確認してみたいと思います。

    前回はこちら
    ▶[ComfyMaster21] ComfyUIのAPI化 – Websocketで外部保存

      1. 今回の目的: 犬のイラストを「レイアウトをそのままに」実写に変換

      画像

      今回は、i2iで犬のイラストを「レイアウトをそのままに」実写に変換します。変換元の犬のイラストをLatentに変換し、それをKSamplerノードのLatentに入力することで、元の画像の特徴を保持しながら生成を行います。

      スタイルの変換には、モデルとプロンプトの影響が大きいです。そのため、モデルには実写に強いモデルを利用し、プロンプトには「realistic, photorealistic」といった生成画像が実写になるようなプロンプトを入力します。

      そして、今回は、KSamplerのdenoiseの値の変化による生成結果の違いを比較します。denoiseの値がどのような変化を与えるのかを確認してみます。

      2. 使用するモデルと素材

      モデル

      今回は、モデルにRealVisXL V5.0を利用します。名称の通り、実写系を得意とするモデルで、商用利用可能(画像の販売、サービスへの組み込み可能)になります。このモデルを以下のリンクよりダウンロードし、「ComfyUI/models/checkpoints」フォルダに格納してください。

      https://civitai.com/models/139562/realvisxl-v50?modelVersionId=789646

      変換元画像

      変換元画像には、以下の犬のイラストを使用します。

      画像

      画像ファイルは、以下よりダウンロードください。

      https://note.com/api/v2/attachments/download/1988f0a474e2e82c2d1527822db10c53


      [おしらせ]【Coloso講座】ComfyUIマスター:カスタムノードとアプリ開発

      https://j.aicu.ai/Coloso3

      ブログや書籍といった文字で読みたい方に加えて「動画で学びたい!」という方に向けて、Coloso x AICUコラボ動画コンテンツ第3弾「ComfyUIマスター:カスタムノードとアプリ開発」を開発しています。
      詳しくはこちら


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

      Originally published at https://note.com on Oct 5, 2024.

    1. AICU Magazine Vol.5 初版リリース!! 特集は「Stability AI Forever!」KDPで無料

      AICU編集部がお送りする月刊誌「AICUマガジン」が、「つくる人をつくる」あなたをアップデートするクリエイティブAIエンターテイメントマガジン「AICU Magazine」としてリニューアル&Vol.5初版をリリースしました!

      画像

      ご購入はこちらから!Kindle Unlimitedで無料
      https://j.aicu.ai/MagV5

        表紙は犬沢某さん・Stability AI APIにて生成

        画像
        表紙by犬沢某さん X@insbow

        特集は「Stability AI Forever!」

        特集は「Stability AI Forever!」API時代の Stability AI 入門から[次世代モデル]の予告まで。今後長年にわたって役に立つ、GPU不要でも高画質・高品質で画像生成が学べる総力特集です。

        初版目次

        特集「Stability AI Forever!」

        ・「超入門: Stable Diffusionではじめる画像生成AI」で画像生成を始めよう
        ・【超入門Stability AI API】公式サンプルで「TextToImageの最近の文法を総ざらい」
        ・【超入門Stability AI API】「モデルとの対話」実習編。Stable Diffusion 3時代に知っておきたいプロンプトの新常識
        ・【超入門Stability AI API】「Stable Fast 3D」をGoogle Colabで動かす
        ・「Stable Diffusion 3 Mediumファインチューニングチュートリアル」から読んだStability AIの「新モデル」

        画像
        画像
        画像

        サクッと先取り!クリエイティブAIツール

        ・【音楽知識ゼロでもOK!】Sunoでオリジナル曲を完成させよう!初心者向け【無料】(ぽんず @ponzponz15
        ・動画も高精度に!ComfyUIとSegment Anything Model 2(SAM 2)でセグメンテーションをマスターしよう(Yas @earlyfield8612

        画像
        画像

        イベント情報

        ・結果発表!!「デルタもん4コマ漫画コンテスト」
        ・「AIが変える 美容&ファッションのミライ」

        画像
        画像

        BlendAI通信

        ・ガンマミィ誕生記念! イラストコンテストを開催
        ・BlendAI第1回ファンミーティング潜入レポート!デルタもん誕生秘話から新キャラ「ガンマミィ」、さらに壮大な計画まで明らかに!

        画像

        連載漫画

        「ウワサの大型新人」by わらさん(@wara_hirono)
        なんとリリースされたばかりの「ガンマミィ」が登場…!
        公式に怒られませんように!!

        画像

        読者のひろば

        ・編集長とGeminiたん「AI開発案件に起きている地殻変動(2024年9月末)」
        ・秋のカバーアート 「秋の妖精」 ないとっちさん
        ・はるしね~しょん(編集部だより)

        犬沢某さんよりメッセージを頂いております。

        画像

        今月号も表紙を担当させていただきました。

        前回は女性に大人気の[LuC4]全力肯定彼氏くんを題材に夏祭りを表現してみましたが、今回はストレートに「Stability AI特集」とのことで、AICUで開発しているColosoの教材シリーズをこっそり拝見させていただきました。

        ひとことで言って、これはスゴい。

        そして第1弾「超入門:Stable Diffusionではじめる画像生成AI」では、自分がデザインしたキャラクターが実写になっていることにも驚きました。……が、実際にやってみると、さらに複雑な気分でした。いいじゃないか。

        今回は、そこで学んだテクニックを使って、Claudeで改良しながら……

        Stable Image Ultra: photo realistic, squatting down and holding knees girl, grumpy but half smiling, zoom out the camera, walking, animal ears, solo, brown hair, overalls, dark skin, cat ears, short hair, dark-skinned female, choker, brown eyes, sweater, pink choker, long sleeves, closed mouth, yellow shirt, bright pupils, white pupils, pink basketball shoes (seed = 4), Aspect Racio 4:5, Conservative Upscaler

        ……といった感じで Stability AI だけで仕上げています。

        表情がもっといろいろ探求できると良かったかも?と思いつつ、海外の雑誌の表紙みたいな雰囲気を目指して色なども選んでみました。

        読者のみなさんの、感想が聞きたい……!

        最後に……実は、幻のバージョンがあるんです!
        表情は良かったんだけど、指が、ちょっとだけ変な方向を向いていて……。
        レイアウトラフの段階で編集部チェックをクリアしてしまったのと表情が良かったので編集部でも賛否両論があったり「インペイントでいいのでは?」という説もあったのですが、最終的にリテイクとなりました。

        AIだからって楽じゃないよ~!!でもこういうのも雑誌というメディアならではですね。

        なので、読者のみなさんの、感想が聞きたい……! 犬沢某 X@InsBow

        オトクなクーポンはあるの!?

        前回の人気企画、今回もあります!
        Coloso「生成AIクリエイティブ AICU」シリーズ
        ■超入門:Stable Diffusionではじめる画像生成AI
        https://j.aicu.ai/AICUXColosoJP
        ■初級者:広告企画から動画制作までのプロセス
        https://j.aicu.ai/ColosoJPXAICU
        ■ComfyUIマスター:カスタムノードとアプリ開発
        https://j.aicu.ai/Coloso3

        こちらに使えるクーポンコード(5000円相当)が付いてきます。
        Vol.4にひきつづきAniFusion初月半額コードも付いてきます!

        書籍版は発売されるの?!

        Kindle版はePub版にて提供されています。PDF版は現在242ページ!ずっしり重いページ数です。今後、初版から10月末まで1ヶ月の「賞味期間」を持ちながら、最新の情報や追加コンテンツをアップデートしていき、一定の読者購読が達成された場合に最終版をフルカラーの書籍版印刷物として出版する予定です。

        Vol.4 特集完全解説「AniFusion」は書籍化達成いたしました!

        画像
        厚さが決まらないと背表紙が決まらないので表紙が大変(デザイナー談)

        図書館等にも入れられる「手に取って、重さがわかるAI」として幅広い読者に向けて届けてまいります。ぜひともクリエイティブAIを陽のあたる場所に持っていきたい!という方はKindle Unlimitedで応援お願いします!!

        画像

        ご購入はこちらから!Kindle Unlimitedで無料
        https://j.aicu.ai/MagV5


        お見苦しいところもたくさんあるかもしれませんが
        読者のみなさんのフィードバックも歓迎です!
        ▶編集部へのご感想はこちらから https://j.aicu.ai/MT24v5

        AICU Inc. について:Xアカウント@AICUai https://corp.aicu.ai/ja

        生成AI時代につくる人をつくる」をビジョンに活動する2023年に設立された米国シリコンバレーを本拠地にするデジタルハリウッド大学発のスタートアップ企業です。書籍「画像生成AI Stable Diffusionスタートガイド」(SBクリエイティブ刊)、LINEアカウント「全力肯定彼氏くん」「AI確定申告さん」、Webに住むAIアイドル「AICuty」など楽しみのあるAI体験を開発する「AIDX Lab」、わかるAIを楽しく届ける AI総合メディア「AICU media」、AI人材教育コンテンツ開発、障がい者向けワークショップ開発、AIキャラクター開発運用、某有名企業の新技術プロトタイプコンテンツ開発など「クリエイティブAI」ならではのコンテンツ技術開発・体験開発を世界的な企業に展開している価値開発企業。画像生成AI「Stable Diffusion」を開発公開した Stability AI 公式パートナーであり、Google for Startups認定スタートアップでもあります。1994年に杉山知之が創立したデジタルハリウッド大学(愛称「デジハリ」)はCGやデジタルクリエーションを専門に学ぶ学校ですが、開学のころからずっと変わらず伝えていることは『すべてをエンタテインメントにせよ!』 。エンタテイメント技術の研究開発で30年の経験を持つCEO白井暁彦とAI社員、少数精鋭の人間味あふれる多様なスタッフや協力クリエイターとともに、すべてをエンタテインメントにするまで追求する文化が AICUにも息づいています。

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

      1. 【Coloso講座】ComfyUIマスター:カスタムノードとアプリ開発

        Colosoとコラボ製作第3弾

        生成AIクリエイティブ集団 AICU が贈る、ComfyUIマスター講座!
        画像生成AIの最前線を行くツール「ComfyUI」を徹底的に使いこなすための、実践的なオンライン講座が登場しました。

        詳細はこちら
        「生成AIクリエイティブ AICU」シリーズ
        ■ComfyUIマスター:カスタムノードとアプリ開発

        https://j.aicu.ai/Coloso3

        講座の特徴

        • 基礎から応用まで!画像生成に必要なAIスキルを習得:
          初心者にも分かりやすい丁寧な解説からスタートし、徐々に高度なトピックへと進むカリキュラム設計。環境設定から、text2image、image2image、ControlNet、LoRA、API開発まで、ComfyUIの機能を網羅的に学習できます。
        • 実践的なアプリケーション開発を通した技術の応用:
          講座後半では、VFXパイプラインやAPIの利用、LINEチャットボットの開発など、実際のアプリケーション開発に挑戦!学んだ知識を活かして、 すぐに仕事に役立つ実践的なスキルを身につけることができます。
        • 生成AI時代の著作権と倫理、そして今後の展望:
          生成AIを取り巻く法的・倫理的な問題、そして今後の展望について深く考察。AI技術を正しく、責任を持って活用するための知識と実践的なガイドラインを学び、持続的な創作活動を行うための基盤を築きます。

        講座内容

        • 基本的なワークフローの理解と構築
        • 高度な画像生成技術の習得
        • プロンプトエンジニアリングと画像の最適化
        • API統合と自動化
        • 実践的なアプリケーション開発と統合
        • 責任あるAI活用のための倫理と未来予測

        受講対象

        • 画像生成AIに興味のある方
        • ComfyUIをもっと使いこなしたい方
        • AIスキルを身につけて、これからの時代に活躍したい方
        • デザイン、アート、広告など、クリエイティブな仕事に携わっている方
        • 業務で画像生成AIを活用したい企業クリエイターの方

        【講師紹介】


        [早野康寛] DX支援企業「ポノテク株式会社」代表取締役、ChatGPT登場以来、生成AIの情報を追い続け、画像生成AIを中心に実用的な情報発信や社会実装に尽力。

        こんにちは、早野康寛です。DX支援をするポノテク株式会社の代表取締役を務めています。ChatGPTの登場以来、生成AIの情報を追い続け、今は画像生成AIを中心に実用的な情報の発信や、生成AIの社会実装に尽力しています。また、画像生成AIの情報を発信する中で、AICU Inc.と関わりを持ち、ComfyUI連載「ゼロから学ぶComfyUI」に掲載する記事の執筆や、先日、渋谷で開催されたComfy Org公式ミートアップでの発表などを行っています。

        連載「ゼロから学ぶComfyUI」より
        [ComfyMaster20] ComfyUIの高度インペイント技術で自然な髪型変更を実現! https://ja.aicu.ai/comfymaster20-20240920/

        【経歴/受賞歴】
        2024年 Bond University MBA取得
        2023年 Ponotech Inc. CEO
        2020-2021年 数億円のM&Aの売り手側を担当
        2019-2023年 ソフトウェア開発企業にて受託開発のリーダーを務める
        2018年 半導体製造装置の量産化対応を担当
        2013-2016年 海外向けプレス機械の制御設計として活躍

        早野康寛 ポノテク株式会社 代表取締役
        X (Twitter) https://x.com/earlyfield8612

        [白井暁彦] 生成AIクリエイティブ「AICU」代表、AICU media編集長。デジタルハリウッド大学大学院特任教授、エンタメ・メタバース技術研究者、ホワイトハッカー作家。

        こんにちは、白井暁彦です。エンタメ・メタバース技術の研究開発に携わりながら、ホワイトハッカー作家として活動しています。また、デジタルハリウッド大学大学院の客員教授と、デジハリ発の国際スタートアップ企業「AICU Inc.」のCEOを務めています。そして、生成AI 時代に「つくる人をつくる」をビジョンに、英語と日本語、フランス語、プログラミング言語などで、オープンな作家活動を続けています。

        【経歴/受賞歴】
        2023年 デジタルハリウッド大学大学院 特任教授
        2023年 AICU Inc. CEO
        2018-2023年 グリーグループでメタバースの研究開発ディレクター
        2018年 デジタルハリウッド大学大学院 客員教授
        2010-2018年 神奈川工科大学 情報学部 情報メディア学科 准教授
        2008-2010年 日本科学未来館 科学コミュニケーター
        2004-2007年 フランス国立工芸大学ENSAM客員研究員
        2003-2007年 NHK-ES研究員にてバーチャルセット技術研究
        2003年 東京工業大学 総合理工学研究科 知能システム科学にて博士取得
        1998-2001年 キヤノングループで英国リアルタイムグラフィックスエンジンの開発

        【主な著書】
        – 2024年 『画像生成AI Stable Diffusion スタートガイド 』(SBクリエイティブ)
        – 2022年 『AIとコラボして神絵師になる 論文から読み解くStable Diffusion』(インプレスR&D)

        白井暁彦 AICU Inc. CEO / デジタルハリウッド大学大学院特任教授
        X (Twitter) https://x.com/o_ob

        【講師陣のメッセージ】

        早野 康寛: ComfyUIは、コードを書くことなく誰でも簡単に画像生成AIを活用できる、非常に優れたツールです。本講座は、エンジニア、デザイナー、クリエイター、研究者など、さまざまなニーズに対応できるよう設計されています。初心者の方でも、講座を通してComfyUIをしっかりと習得し、思い描いた画像を自由に生成できるようになるでしょう。ぜひご受講ください!

        白井 暁彦: Colosoさんとのコラボ企画第3弾は「ComfyUI」です。ComfyUIを触り始めて約1年。Automatic1111をキャッチアップした「SD黄色本」のときは「まだ早すぎる」という判断があったのですが、画像生成からシステム開発まで広範な内容を動画でわかりやすい教材として開発を進めています。
        もちろんお気づきのように「ゼロから学ぶComfyUI」の連載でのノウハウが生きています。「つくる人をつくる」AICU mediaとともに沢山の方々に応援されているこの連載が、さらに動画ラーニングメディアとして、世界中の方々に「わかるAIを届ける」活動としてお届けできることを嬉しく思います。

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

        AICU開発! 本講座だけの特典

        • AICUによるComfyUIの知識が詰まった講座動画24講を期間制限なしで受講可能
        • 講座を通して12個の課題を通してAIスキルを習得
        • 講座で使用するワークフローを含むPNGデータなどの資料を提供
        • 画像生成ワークフロー集
        • AICUのノウハウが詰まったPDF資料を提供

        今すぐ予約して、ComfyUIマスターを目指そう!

        2024/10/5 (土) に販売価格が上がります。
        今ならお得な割引価格で受講できます。

        さらに、今なら先着100名様限定で、この講座限定で5,000円割引が受けられるシークレットクーポンも使えるみたいです!ぜひチェックしてください。

        【クーポン情報】
        ●割引金額:5,000円
        ●クーポンコード:[AICU3SECRET]
        ●使用期限:9月30日~10月7日23時59分まで

        詳細はこちら

        「生成AIクリエイティブ AICU」シリーズ
        ■超入門:Stable Diffusionではじめる画像生成AI
        https://j.aicu.ai/AICUXColosoJP
        ■初級者:広告企画から動画制作までのプロセス
        https://j.aicu.ai/ColosoJPXAICU
        ■ComfyUIマスター:カスタムノードとアプリ開発
        https://j.aicu.ai/Coloso3


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

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

      2. [ComfyMaster21] ComfyUIのAPI化 – Websocketで外部保存

        「ComfyUIをサービスに組み込みたい!」
        そんな方は、ComfyUIをAPI化すればOK!ComfyUIは、最初からAPI化する機能を持っているので簡単です!

        ComfyUIを自社のサービスに組み込むための基本テクニックは、先日、渋谷で開催されたComfyUIミートアップでも話題になりました。

        こんにちは、AICU media編集部です。
        ComfyUI マスターガイド」第21回目になります。
        本記事では、ComfyUIをAPIとして外部から利用する方法を解説します。

        前回はこちら

        今回は、ComfyUI APIサーバー化する上での基本的な使い方を解説します。15,000文字ぐらいでVSCodeやPythonのインストールから、API経由でWebsocketを使った画像保存まで、自分のPythonコードで実装していきます。今回解説する内容は「かなり玄人向け、システム開発などに用途が限られるかも?」という印象があるかもしれませんが、アニメーションシステムへの応用や、インタラクティブな体験開発、AWSでのインスタンスから画像を保存したり、UnityやUnreal Engineなどのリアルタイム処理のアプリから画像をリクエストしたり、DiscordサーバーやDifiなどのチャットシステムのAPIエンドポイントとして使用したり……と、使用するワークフローを多様にすることで、様々な用途で使用することができるでしょう。用途は無限大なので、ぜひ活用して X@AICUai にてフィードバックをいただければ幸いです。

        1. 前提条件

        今回の記事では、以下の前提条件に基づき、APIを実行します。

        • Google ColabでComfyUIを動作させる
        • ローカルPCからPythonでComfyUIのAPIを実行する
        • ワークフローは、標準ワークフローを使用する
        • 生成画像は、ローカルPCにダウンロードして保存する

        今回使用するPythonコードは、ComfyUIの公式が提供しているwebsockets_api_example_ws_images.pyというサンプルコードを基に、Google Colabで動作するComfyUIと通信できるように改修したものになります。公式のサンプルコードは、以下のリンクより確認できます。

        https://github.com/comfyanonymous/ComfyUI/blob/master/script_examples/websockets_api_example_ws_images.py

        以下が今回使用するPythonコードのフローになります。

        画像
        1. ユーザーがプログラムを開始します。
        2. メインプログラムが「workflow_api.json」ファイルを読み込みます。
        3. プロンプトのテキストとシードが修正されます。
        4. 修正されたプロンプトがComfyUIサーバーのキューに追加されます。
        5. サーバーからprompt_idが返されます。
        6. WebSocket接続が確立され、状態更新の待機が始まります。
        7. サーバーが状態更新を送信し、キューが空になるまで続きます。
        8. 画像データが送信されます。
        9. プログラムが次の画像番号をファイルシステムから取得します。
        10. 生成された画像がファイルシステムに保存されます。
        11. ユーザーに完了が通知されます。

        2. ComfyUIのAPIについて

        ComfyUIは、起動と同時にAPIとして利用することが可能になっています。これは、Prompt Serverで実現されています。Prompt Serverは、API を通じてフロントエンドと連携し、ユーザーが複雑なワークフローを構築し、画像生成プロセスを制御することを可能にします。

        旧来のRESTfulなAPIや、FastAPIやAutomatic1111とも異なる設計のようです
        RESTfulならステートレス性(Stateless)が必要ですが、今回の例ではWebsocketを使って画像を転送します。HTTPをベースにしたステートレスなクライアント/サーバプロトコルではないですが、セッション等の状態管理をして、リアルタイム性や高速転送を実現しているように読み取れます。

        WebSocketによる状態把握

        Prompt Serverは、WebSocketを利用し、フロントエンドとの双方向通信を実現しています。これにより、キューの状態変化、ノードの実行状況、モデルのダウンロード進捗など、リアルタイムな更新をフロントエンドに通知することができます。本稿を執筆した2024年9月29日時点での実装ベースで分析した主な WebSocket イベントは以下になります。

        • status: キューの状態 (実行中のタスク数、待機中のタスク数など) を更新します。
        • executing: 現在実行中のノードの情報を提供します。
        • progress: KSamplerなどのサンプリング処理の進捗状況を通知します。
        • execution_success: ワークフローの実行が完了したことを通知します。

        エンドポイント

        • /: ComfyUI のフロントエンド (index.html) を提供します。
        • /embeddings: 使用可能な埋め込みのリストを取得します。
        • /models/{folder}: 指定されたフォルダ内のモデルのリストを取得します。
        • /extensions: 使用可能な拡張機能のリストを取得します。
        • /upload/image: 画像をアップロードします。
        • /upload/mask: マスク画像をアップロードします。
        • /view: 画像を表示またはダウンロードします。
        • /view_metadata/{folder_name}: safetensors ファイルのメタデータを取得します。
        • /system_stats: システムの統計情報を取得します。
        • /prompt: プロンプトをキューに追加します (POST) またはキューの状態を取得します (GET)。
        • /queue: キューを操作 (クリア、プロンプトの削除など) します。
        • /interrupt: 実行中の処理を中断します。
        • /free: メモリを解放します。
        • /history: プロンプトの履歴を取得または操作 (クリア、履歴の削除など) します。
        • /internal/models/download: 指定された URL からモデルをダウンロードします。
        • /object_info: 全てのノードまたは特定のノードクラスの情報を取得します。

        3. Pythonコード実行環境の準備

        今回は初のPythonコード実行環境の準備になります。WindowsやMac環境で共通の解説を行っていきます。一見難しそうですが、初心者向けに丁寧に解説していきますので、ぜひついてきてください!


        画像生成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/n1d717357047f

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

      3. 速報: ComfyUIを開発する 「Comfy Org」が東京・渋谷で初のミートアップを開催。画像生成AIの未来を拓く37名が参加!

        画像生成AI界隈で熱い注目を集めるノードベース画像生成フレームワーク「ComfyUI」。その開発を手がける Comfy Org が、2024年9月27日、東京・渋谷にて初のミートアップを開催しました。

        会場には、ComfyUIユーザーや開発者、画像生成AIに興味を持つ人々など、総勢37名が集結。ComfyUIの最新情報や今後の展望、活用事例などが共有され、熱気あふれる一夜となりました。

        開発チームによるプレゼンテーション:新機能、新モデル、そして未来へ

        イベントは、Comfy Orgを率いるYoland氏のオープニングアドレスで幕開け。チームメンバーの紹介やComfyUIへの熱い想いが語られました。

        続いて、HCL氏とRobin氏による、今後のベータ版Electron、フロントエンド、Electronに関する発表が行われ、参加者からは期待と興奮の声が上がりました。

        さらに、ComfyAnoymous氏からは新モデルに関する発表、kosinkadink氏からはADEとモデルパッチングに関する発表があり、ComfyUIの進化を目の当たりにする貴重な機会となりました。

        熱い議論が交わされたQ&Aセッション

        プレゼンテーション後には、開発チームとのQ&Aセッションが設けられました。参加者からは、ComfyUIの使い方や機能に関する質問だけでなく、画像生成AIの未来に関する質問も飛び出し、活発な意見交換が行われました。

        多彩なLT&ワークフロー共有:ユーザー同士の交流が深まる

        イベント後半には、ユーザーによるライトニングトーク(LT)とワークフロー共有の時間が設けられました。

        ComfyUIに関連するあらゆるテーマが歓迎され、様々な活用事例や独自のワークフローが披露されました。参加者同士が知識や経験を共有し、互いに刺激を与え合う、貴重な学びの場となりました。

        ★AICU media編集部からのお願いです。こちらについて、シェアいただける登壇者がいらっしゃいましたらぜひAICU media編集部にご寄稿ください(謝礼あり)。

        交流会&アフターパーティー:ComfyUIコミュニティの熱気を感じて

        イベント終了後には、参加者同士が自由に交流できるネットワーキングの時間と、アフターパーティーが開催されました。

        ComfyUIという共通の話題で盛り上がり、新たな出会いも生まれたのではないでしょうか。

        画像
        フェイスシールはAICUメディアの編集長による処理(人力)

        今回のミートアップは、ComfyUIコミュニティの熱気と、画像生成AIの未来に対する期待を感じさせるイベントとなりました。ComfyUIの進化は、私たちに新たな創造の可能性をもたらしてくれるでしょう。

        #ComfyUI #画像生成AI #AI #ミートアップ #渋谷 #ComfyOrg

        ★AICU mediaはComfyUIを応援しています!

        https://www.comfy.org


        ComfyUI Community Gathers in Shibuya for First-Ever Meetup: Shaping the Future of Image Generation AI

        ComfyUI, the node-based image generation framework making waves in the AI art scene, saw its development team, Comfy Org, host its first-ever meetup in Shibuya, Tokyo on September 27, 2024.

        The event drew a crowd of 37 enthusiastic attendees, including ComfyUI users, developers, and AI art enthusiasts. The night was filled with excitement as they delved into the latest updates, future prospects, and innovative applications of ComfyUI.

        Presentations by the Development Team: Unveiling New Features, Models, and the Future of ComfyUI

        The evening commenced with an opening address by Yoland, the leader of Comfy Org, who warmly introduced the team and shared their passion for ComfyUI.

        Next, HCL and Robin took the stage to unveil upcoming features for the beta version of Electron, the frontend, and Electron itself, generating a wave of anticipation and excitement among the attendees.

        ComfyAnoymous then presented insights into new models, followed by kosinkadink, who shed light on advancements in ADE and model patching. These presentations provided a valuable glimpse into the ongoing evolution of ComfyUI.

        Engaging Q&A Session: Deep Dive into ComfyUI and the Future of AI Image Generation

        Following the presentations, attendees had the opportunity to engage in a Q&A session with the development team. The discussion was lively, covering topics ranging from practical aspects of using ComfyUI to broader questions about the future of AI image generation.

        Lightning Talks & Workflow Sharing: Fostering Connections and Collaboration

        The latter half of the event was dedicated to lightning talks (LTs) and workflow sharing by ComfyUI users.

        画像
        The face seals were applied by the editor-in-chief of AICU media (human processed).

        With a diverse range of topics related to ComfyUI, attendees showcased their creative applications and unique workflows. This segment fostered a valuable learning environment where participants shared knowledge, experiences, and inspiration.

        ★ Call for Contributions: We at AICU media encourage speakers who shared their insights at the meetup to consider contributing their presentations to our platform. We offer compensation for published articles.

        Networking and After-Party: Building the ComfyUI Community

        The evening concluded with a networking session and an after-party, providing ample opportunities for attendees to connect and mingle.

        The shared passion for ComfyUI sparked lively conversations and fostered new connections within the growing community.

        This inaugural meetup served as a testament to the vibrant ComfyUI community and the high expectations surrounding the future of AI image generation. As ComfyUI continues to evolve, it promises to unlock new creative possibilities for artists and developers alike.

        #ComfyUI #ImageGenerationAI #AI #Meetup #Shibuya #ComfyOrg

        ★ AICU media is a proud supporter of ComfyUI!

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

      4. [告知]ComfyOrgミートアップ東京で開催!2024/9/27 

        ComfyUIを開発するComfy Orgの公式discordでのアナウンスより。

        画像

        こんにちは!ComfyUIチームのほとんどが東京に出張しています。ぜひお会いしましょう!ComfyUIチームはあなたの経験を聞き、Comfyの将来のロードマップを共有したいと思っています。また、他のComfyユーザーと交流する良い機会でもあります。
        日時: 9/27 17:00 – 20:00
        ComfyUIを使ったことがある方、ComfyUIに興味がある方ならどなたでも参加できます!
        登録用リンク: https://lu.ma/01dbvc75

        Japanese translation of the announce

        画像

        イベント詳細

        ComfyUIチームは今週、東京に出張中。
        小規模なミーティングを開催します。
        ぜひお会いしましょう!

        ComfyUIチームは、ユーザーの皆様の経験を伺い、Comfyの今後のロードマップについて皆様と共有したいと考えています。また、これは他のComfyユーザーの方々と交流する絶好の機会でもあります。

        9月27日の午後5時から8時までは、チームのほとんどが東京に直接参加する予定です。場所は、開催日が近づいてから発表されます。ワークフローについて開発チームとジャムセッションを行うために、ノートパソコンをご持参ください!

        ComfyUI を使用したことがある方、または興味をお持ちの方は、ぜひご参加ください!

        チームメンバーは以下の通りです:

        • comfyanonymous: ComfyUIの生みの親
        • HCL: ComfyUI_frontendの作者
        • kosinkadink: ComfyUI-AnimateDiff-EvolvedおよびComfyUI-Advanced-ControlNetの作者
        • mcmonkey4eva: SwarmUIの作者
        • pythongosssss: ComfyUIの主要貢献者
        • robinken: Comfyレジストリの作成者
        • yoland68: ComfyCLI の開発者

        ComfyUIとは:https://github.com/comfyanonymous/ComfyUI

        Comfy Org: https://www.comfy.org/

        Comfy Discord: https://discord.com/invite/comfyorg


        【AICU mediaによる追加取材によると】

        ・主要言語は英語
        ・通訳は付きます
        ・ビジネス向けというよりはユーザーさんのフィードバックを頂きたい
        ・参加費は無料
        ・2次会は予定されていない(企画しようかな…)


        ミートアップで開発者に質問したいことがありましたら、こちらのメンバーシップ掲示板にお寄せください。日本語でOK!

        AICU mediaは ComfyUIを応援しています!
        追加情報がありましたらこちらに記載いたします。
        会場でお会いしましょう

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

        https://corp.aicu.ai/ja/comfyui20240831

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

      5. [ComfyMaster20] ComfyUIの高度インペイント技術で自然な髪型変更を実現!

        「髪型を変えてみたい」と一度は思ったことがあるでしょう。そんな願望を叶えてこそが、画像生成AI技術です。従来のインペイント処理では、髪型の変更など精密な修正は難しいと感じたことがあるかもしれません。しかし、今回はその限界を突破します!付録としてComfyUIワークフローと男性ヘアカタログプロンプト集もつけちゃいます!

        こんにちわ、AICU media編集部です。
        ComfyUI マスターガイド」も、ついに第20回目になります。
        以前にimage-to-image (i2i) でのインペイントについて説明しました。

        今回は、i2iでのインペイントをさらに掘り下げて、基本的なインペイントワークフローでは実現できなかった高精度のインペイントを行う方法を解説します。

        i2i編の初回はこちら

          1. 今回の目的

          今回は、i2i(image-to-image)で人物の髪形を変更します。以前の記事で説明したインペイントは、ComfyUI公式が配布しているのインペイントのサンプルワークフローに従った、基本的なインペイント処理でした。そのため、効果的なインペイントが難しい状態でした。今回は、より効果的なインペイントを実施します。

          具体的には、InpaintModelConditioningノードを使用します。InpaintModelConditioningノードは、効果的なインペイントをするための前処理を行います。理論的な解説も伴った中級者向け記事です!

          2. InpaintModelConditioningノードの解説

          InpaintModelConditioningノードは、画像補完のために必要な「条件付け」と呼ばれる情報を管理し、補完結果を自然に仕上げるために使われる重要な技術です。具体的には、欠損部分の補完に使う画像データや、その部分がどこなのかを示すマスクデータを取り扱い、モデルが適切に補完できるようにガイドします。

          条件付け(Conditioning)とは?

          まず「条件付け」とは、画像補完を行う際にモデルがどのように動作すべきかを決めるための「指示書」のようなものです。条件付けは、モデルに「こういう結果にしてほしい」というガイドラインを提供します。

          画像

          例えば、以下のような状況を考えます。

          • Positive(ポジティブ)条件付け: 補完したい特徴やスタイルを指定するもの
          • Negative(ネガティブ)条件付け: 生成したくない特徴を避けるためのもの

          このような条件付けがあることで、モデルは「この部分はこう補完して、こういう風にはしないでね」という具体的な方向性を得ることができます。

          InpaintModelConditioningの動作の流れ

          画像

          InpaintModelConditioningノードの動作は以下のようなステップで進みます。

          1. 画像サイズの調整: 画像が正しく補完されるためには、特定のサイズ(8の倍数など)に合わせる必要があります。画像のサイズを調整することで、モデルが効率的に処理できるようにします。
          2. マスクのリサイズと滑らか化: 補完対象の部分を示すマスクは、画像と同じサイズでなければいけません。このため、マスクのサイズを画像に合わせてリサイズします。さらに、リサイズ時に境界を滑らかにする処理を加えることで、補完部分と元の画像とのつながりを自然に見せます。これにより、補完がなめらかに行われ、境界が目立ちにくくなります。
          3. 条件付けデータの更新: ポジティブ条件付けやネガティブ条件付けに、画像の潜在表現(補完の基になるデータ)とマスクを追加します。これによって、補完される部分の情報が条件付けに含まれ、モデルは「ここをこんな風に補完すればいいんだな」と理解できるようになります。
          4. 補完処理の実行: 更新された条件付けに基づいて、画像の欠損部分が自然に補完されます。例えば、背景に合わせて欠損部分が塗りつぶされたり、オブジェクトが滑らかに修復されたりします。

          マスクの滑らかさが重要な理由

          補完の際に、マスク(補完するべき場所を示すデータ)の境界が滑らかであることはとても重要です。なぜなら、境界が滑らかであれば、補完された部分が元の画像と自然に繋がるからです。マスクの境界がシャープだと、補完部分が目立ちやすくなり、不自然に見えることがあります。滑らかなマスクを使うことで、補完処理が画像全体にシームレスに溶け込み、違和感のない仕上がりが得られます

          画像

          ハードエッジなマスク画像の例

          画像

          ソフトなマスク画像の例

          画像

          特に透明体や反射、髪の毛の境界などはハードエッジにすると違和感が強く出ます。

          なぜ条件付けデータの更新が重要なのか?

          条件付けデータの更新は、補完処理を正確かつ自然に行うために非常に重要です。この更新が行われることで、モデルは最新の画像情報に基づいて適切な補完を実行できるようになります。更新された条件付けデータには、補完したい部分の最新の潜在表現とマスク情報が含まれており、これがモデルに対して「ここをどのように補完するべきか」という具体的な指示を与えます。潜在表現は画像全体の特徴やスタイルを反映しているため、補完部分が元の画像と自然に調和することを可能にします。また、マスク情報が更新されることで、モデルは補完するべき領域を正確に把握し、不要な部分への影響を最小限に抑えることができます

          画像

          さらに、ポジティブ条件付けとネガティブ条件付けが最新の状態になることにより、補完結果のコントロールがより精密になります。ポジティブ条件付けは「こうしたい」というモデルの生成方向を示し、ネガティブ条件付けは「こうはしたくない」という制約を与えることで、補完の質を高めます。このプロセスにより、モデルは適切な領域に集中し、画像全体の統一感を維持しながら補完処理を行うことができます。結果的に、条件付けデータの更新が、補完された部分を滑らかで自然なものにし、全体のビジュアル品質を向上させるのです。

          3. 使用するモデルと素材

          モデル

          今回は、モデルにRealVisXL V5.0を利用します。名称の通り、実写系を得意とするモデルで、商用利用可能(画像の販売、サービスへの組み込み可能)になります。このモデルを以下のリンクよりダウンロードし、「ComfyUI/models/checkpoints」フォルダに格納してください。

          https://civitai.com/models/139562/realvisxl-v50?modelVersionId=789646

          変換元画像

          変換元画像には、以下の男性の写真を使用します(画像生成)。

          画像

          画像ファイルは、以下よりダウンロードください。

          https://note.com/api/v2/attachments/download/8212aaeaa246b1840de3430c81f9d3c7

          4. ワークフロー解説

          ワークフローの全体像は以下になります。基本的には標準ワークフローと同等ですが、変更点としては、Load Imageノードでの参照元画像の読み込みと、それをInpaintModelConditioningノードで前処理とLATENTへの変換を行い、KSamplerノードのlatent_image入力に接続する箇所が追加になっています。

          画像

          ワークフローは文末よりダウンロードください。
          処理の流れを以下のようにフローチャート化しました。

          画像

          以下に、各ステップとその役割を詳しく説明します。
          Mask Editorでのマスク作成方法をご存じない方は、まず以前の解説をご参照覧ください。

          1. 入力処理 (LoadImage ノード)
            • 入力画像とマスクを読み込みます。
            • マスクの作成は、ComfyUIのMask Editorで行なっています。
              髪の毛部分にマスクを施します。
          1. モデルの読み込み (CheckpointLoaderSimple ノード)
            • 「sd_xl_base_1.0.safetensors」モデルを読み込みます。これはStable Diffusion XLモデルで、高品質な画像生成が可能です。
          2. プロンプト処理 (CLIPTextEncode ノード x2)
            • ポジティブプロンプト: “1boy, solo, young man with afro, male k-pop idol, lovingly looking camera, medium portrait soft light, chop, beautiful model, oval face, vivid
              • 髪型をアフロにしたいので、プロンプトに「afro」を追加しています。
            • ネガティブプロンプト: “bad hand,bad anatomy,worst quality,ai generated images,low quality,average quality, nsfw, nude, naked
          3. インペインティング準備 (InpaintModelConditioning ノード)
            • 入力画像、マスク、VAE、およびプロンプトの条件付けを組み合わせて、インペインティングのための特殊な潜在表現を作成します。
            • このステップがこのワークフローの核心部分で、マスクされた領域に対して効果的なインペインティングを可能にします。
          4. 画像生成 (KSampler ノード)
            • インペインティング用に調整された潜在表現と条件付けを使用して新しい画像を生成します。
            • パラメータ:
              • Seed: 819339385672759 (再現性のため)
              • Steps: 20 (生成のステップ数)
              • CFG Scale: 7 (プロンプトの影響力)
              • Sampler: dpmpp_2m (高品質なサンプリング方法)
              • Scheduler: karras (改良されたスケジューリング)
          5. 画像のデコード (VAEDecode ノード)
            • 生成された潜在表現を実際の画像にデコードします。
          6. 画像の保存 (SaveImage ノード)
            • 最終的に生成された画像を保存します。

          このワークフローは、元の画像の構造を保持しながら、指定された領域を新しいプロンプトに基づいて変更する高度なインペインティングを実行します。結果として、元の画像の特定部分が自然に変更された、高品質な画像が生成されることが期待されます。

          5. インペイントの実行

          それでは、インペイントを実行し、髪型をアフロに変えてみたいと思います。マスクは、以下のようにアフロのサイズも考えて広く作成しています。

          マスクを塗る際のコツ

          画像

          こんな感じに塗っていきます(白で表現)。髪色も変えたいので、もっと生え際も塗ってしまってかまいません。

          画像

          塗り残しを防ぐためにも、黒髪に黒はおすすめしません。

          画像

          目尻に髪がかかったり、額が出たりでなかったりは、つくる髪型にも寄りますが、実験したい場合はまずは大きく塗っていきましょう。

          画像

          マスクが甘いと、このような結果になります。

          画像

          一見いいかんじなのですが、目尻やもともと画像にあった髪が残ってしまって居ます。

          以下が正しくマスクを設定した場合の実行結果です。しっかり画像のコンテクストを理解してインペイント処理がされています。

          画像

          なお、これを以前の記事で説明した基本的なインペイント処理だけで行うと、以下のように崩れてしまいます。インペイントのための前処理と条件設定「InpaintModelConditioning」の重要性を強く感じられます。

          画像

          ポジティブプロンプトの「afro」の箇所を他の髪形に変えて生成してみました。みなさんも好きな画像をインペイントして遊んでみてください。

          画像

          男性ヘアカタログ的なプロンプトは文末にて!

          6. まとめ

          InpaintModelConditioningノードを使用することで、従来のインペイントの課題を克服し、より自然で精密な補完が可能になります。髪型の変更のような細かい修正も、適切な条件付けと最新のモデルを活用することで、まるで本物のような仕上がりが実現できます。これまでのインペイントで満足できなかった方も、ぜひ今回紹介したワークフローを試してみてください。AIの力で画像編集の可能性がさらに広がることを、実感できるはずです。

          次回は、i2iでイラストを実写にする方法を紹介します。乞うご期待!
          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メンバーシップ。
          退会率はとても低く、みなさまにご満足いただいております。
          ✨️オトクなメンバーシップについての詳細はこちら

          #InpaintModelConditioning

          付録:男性ヘアカタログプロンプト集


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

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

        1. [ComfyMaster19]「XY Plot」で実験結果を比較! 

          プロンプトの違いを確認するために、毎回プロンプトを書き換えて生成するのは面倒ですよね。
          これ、「XY Plot」を使うと、一括で確認できます!

          こんにちわ、AICU media編集部です。
          ComfyUI マスターガイド」第19回目になります。
          本記事では、カスタムノード「Efficiency Nodes for ComfyUI」「XY Plot」ノードを使い、プロンプトの動的置換と生成結果の変化をマトリクス形式で表示させる方法を解説します。

          前回はこちら

            1. 使用したカスタムノード

            今回は、「Efficiency Nodes for ComfyUI」というカスタムノードを使用します。「Efficiency Nodes for ComfyUI」は、ComfyUIのワークフローを効率化し、ノードの総数を減らすために開発されたカスタムノードのコレクションです。これにより、画像生成や編集プロセスがよりシンプルかつ効果的になります。

            https://cdn.iframe.ly/pZOur17?v=1&app=1

            このカスタムノードに含まれる「XY Plot」を使用して、パラメータによる生成結果の変化を一括で確認したいと思います。「XY Plot」は、パラメータを指定してグリッド上にプロットするノードで、生成結果の比較が容易になります。

            2. Efficiency Nodes for ComfyUIのインストール

            • メニューの「Manager」をクリックし、「ComfyUI Manager Menu」を開きます。
            画像
            • 「Custom Nodes Manager」をクリックします。
            画像
            • 上部の検索バーに「Efficiency Nodes for ComfyUI」と入力し、表示されたカスタムノードの「Install」をクリックします。
            画像
            • インストールが完了すると、再起動が求められるので、「Restart」をクリックします。
            画像
            • トップ画面に戻るので、メニューの「Refresh」をクリックします。
            画像
            • 再度「Custom Nodes Manager」画面を開き、上部の検索バーで「Efficiency Nodes for ComfyUI」を検索します。以下の画像のように表示されていれば、インストールが完了しています。
            画像

            3. 使用ノード解説

            Eff. Loader SDXL

            Eff. Loader SDXLは、「Load Checkpoint」「CLIP Text Encode (Prompt)」ノードを1つにまとめて使いやすくしたノードです。以下のような特徴を持ちます。

            • モデルのロードとキャッシュ: Checkpoint、VAE、およびLoRAタイプのモデルをロードおよびキャッシュすることができます。キャッシュ設定はnode_settings.jsonファイルで管理されます。
            • LoRA & Control Netスタックの適用: lora_stackおよびcnet_stack入力を介して、LoRAおよびControl Netスタックを適用することができます。これにより、複数のLoRAやControl Netモデルを一括で管理し、適用することが可能です。
            • プロンプト入力ボックス: ポジティブおよびネガティブプロンプトのテキストボックスが付属しており、プロンプトのエンコード方法をtoken_normalizationおよびweight_interpretationウィジェットを使用して設定することができます。
            • XY Plotノードとの連携: 「DEPENDENCIES」出力を「XY Plot」ノードに接続することで、XY Plotノードを用いた、パラメータごとの生成結果を一括で確認することができます。
            画像

            各ウィジェットの用途は以下のとおりです。

            • base_ckpt_name: 生成に使用するモデルを設定します。
            • base_clip_skip: ベースCLIPモデルでスキップするレイヤーの数を決定します。CLIP Skipは、入力したプロンプト(呪文)をどれだけ正確に画像に反映させるかを制御する指標です。CLIPのレイヤーは12層となっているため、1から12までの整数値で設定でき、値が小さいほどプロンプトを忠実に反映し、大きいほどプロンプトから離れた解釈をする傾向があります。SDXLの場合、CLIP Skipの効果は低いと言われています。
            • refiner_ckpt_name: リファイナーチェックポイントの名前を指定します。ベースモデルによって生成された出力を強化し、詳細と品質を向上させます。
            • refiner_clip_skip: リファイナーCLIPモデルでスキップするレイヤーの数を決定します。デフォルト値は0です。
            • vae_name: 使用する変分オートエンコーダ(VAE)の名前を指定します。VAEは画像生成プロセスで重要な役割を果たし、画像のエンコードとデコードを行います。VAEが含まれているモデルの場合、「Baked VAE」を選択することで、モデルのVAEを使用できます。
            • positive: ポジティブプロンプトを入力します。
            • negative: ネガティブプロンプトを入力します。
            • token_normalization: プロンプトにトークン正規化を適用するかどうかを決定します。トークン正規化は入力テキストの標準化に役立ち、モデルの理解と性能を向上させる可能性があります。設定値は以下のとおりです。
              • none(変更なし): このオプションでは、トークンの重みは変更されません。つまり、モデルが各トークンに割り当てる重みをそのまま使用します。重みの調整が不要な場合や、他の要因でトークンの影響を管理したい場合に使います。
                • 例:テキスト「beautiful cat」が入力され、トークン「beautiful」には重み1.2、「cat」には重み1.0が割り当てられたとします。この設定では、トークンの重みはそのままで、各単語が入力された通りの影響を持ちます。つまり、「beautiful」が「cat」よりも少し強調されます。
              • mean(平均調整): すべてのトークンの重みをシフトさせ、意味のあるトークンの平均が1になるように調整します。たとえば、入力テキストにいくつかの単語が含まれており、それぞれのトークンに異なる重みが付与されていた場合、この設定は全体のバランスを取って、過剰に重みが偏ることを防ぎます。これにより、特定のトークンが他のトークンより過剰に強調されることがなくなります。
                • 例:テキスト「beautiful cat」を入力し、トークン「beautiful」に重み1.2、「cat」に重み1.0が割り当てられた場合、この設定では、トークンの重みがシフトされて、全体の重みの平均が1になるように調整されます。例えば、結果として「beautiful」の重みが1.1、「cat」の重みが0.9になるかもしれません。これにより、全体のバランスが取れ、過度な強調が防がれます。
              • length(長さに基づく調整): 長い単語や埋め込みに関連するトークンの重みを、その長さに応じて均等に分割します。この分割は、異なる長さのトークンに対しても重みの大きさを一定に保つために行われます。
                • 例:テキスト「transformation」をトークン化したときに、単語が3つのトークン(「trans」「for」「mation」)に分割され、それぞれに重み1.5が割り当てられたとします。この設定では、単語全体の重みが均等に分配され、各トークンの重みは1.29になります(具体的には sqrt(3 * pow(0.35, 2)) = 0.5 に基づきます)。長い単語でも重みのバランスが保たれ、他の単語と比較して過剰に強調されることがありません。
              • length+mean(長さと平均の組み合わせ): この設定では、まずトークンの長さに基づいて重みを分割し、その後、重みの平均を1にシフトします。長い単語が過剰に強調されることを防ぎつつ、全体のバランスも調整するという、2つの手法を組み合わせた方法です。これは、長い単語がテキストの意味に不均衡な影響を与えないようにするのに役立ちます。
                • 例:テキスト「beautiful transformation」で、「beautiful」に重み1.2、「transformation」に重み1.5が割り当てられたとします。この設定では、まず「transformation」の重みを3つのトークン間で分割し(各トークンの重みは1.29)、その後、全体のトークンの重みの平均を1にシフトします。これにより、全体のバランスがさらに調整されます。
            • weight_interpretation: この設定は、特定のトークンや単語に割り当てられた重みをどのように処理するか、特に「重みを増加させる(up-weight)」または「減少させる(down-weight)」ときにどのようなアプローチを取るかを制御します。設定値は以下のとおりです。
              • comfy(ComfyUIのデフォルト): デフォルト設定です。この方法では、CLIPベクトルがプロンプト(入力テキスト)と空のプロンプト(何もない状態)との間で線形補間されます。つまり、プロンプトの重みを「0から100%」の間で調整することが可能です。このため、特定の単語やトークンの重要性を調整したい場合に柔軟に対応できます。
                • 例:テキスト「beautiful cat」で、「beautiful」に重み1.5を割り当てたとします。この設定では、「beautiful」と「完全に空のプロンプト」の間で線形補間されます。結果として、「beautiful」がやや強調されつつも、完全に突出しないように調整されます。これは「beautiful」が一定以上強調される一方で、「cat」の影響も保持されます。
              • A1111: このオプションでは、CLIPベクトルがその重みに基づいてスケーリングされます。具体的には、トークンに与えられた重みが大きくなるほど、そのトークンがテキスト全体に与える影響も大きくなります。たとえば、重みを2倍に設定した場合、そのトークンは通常の2倍の強調度で扱われます。逆に、重みを0.5倍にすると、影響度は半分になります。
                • 例:テキスト「beautiful cat」に対し、「beautiful」の重みを2倍に設定すると、この設定では「beautiful」の重みが2倍にスケーリングされます。つまり、「beautiful」の影響が「cat」の2倍になるため、「beautiful」がかなり強調されます。逆に、重みを0.5に設定すると、「beautiful」の影響が半減し、「cat」とのバランスが取られる形になります。
              • compel: compel方式の重み付けは、ComfyUIと似ていますが、特定の条件下で異なる動作をします。特に、down-weight(重みを下げる)場合に、マスクされた埋め込みを使用してトークンの影響を減らします。これは、トークンの影響を完全に無視するのではなく、段階的にその影響を減らす手法です。上方の重み付け(up-weight)はComfyと同じように扱われます。
                • 例:テキスト「beautiful cat」で「beautiful」に重み2.0、「cat」に重み0.5を割り当てたとします。この設定では、compelは上方の重み付けをcomfyと同じように処理しますが、「cat」のダウンウェイトはマスクされた埋め込みを使って実行されます。つまり、「cat」の影響は完全に消えるのではなく、少しずつ減少します。この手法は、特定の単語を完全に無視せず、少し影響を残すという意味で微調整が可能です。
              • comfy++: 上方の重み付けでは、単語がプロンプトと、その単語がマスクされたプロンプトの間で線形補間されます。つまり、ある単語の影響を徐々に消していくという動作です。また、compelスタイルのダウンウェイトも採用されており、特定の単語の影響を段階的に減少させることができます。この方法は、細かい調整が必要な場面で有効です。
                • 例:テキスト「beautiful cat」で「beautiful」に重み2.0を設定し、comfy++を使用します。この場合、「beautiful」はプロンプトと「beautiful」がマスクされたプロンプトの間で線形補間されます。つまり、「beautiful」の影響を少し抑えつつも、完全に無視するわけではありません。また、ダウンウェイトはcompel方式と同様に行われます。
              • down_weight: 最大の重みが「1」になるように重みを再スケーリングします。つまり、常にdown-weight(重みの減少)操作しか行いません。この方式では、特定のトークンが他のトークンに比べて過度に強調されることはありません。compelスタイルのダウンウェイトを使用するため、徐々に重みが減少していく過程でトークンの影響が最小化されます。
                • 例:テキスト「beautiful cat」で「beautiful」に重み1.5、「cat」に重み1.0が割り当てられたとします。この設定では、最大重みを1にスケーリングするため、「beautiful」の重みが1に再スケーリングされます。結果として、「beautiful」と「cat」のバランスが取れ、過度に強調されることがなくなります。常にダウンウェイトのみが行われるため、重みが1以上になることはありません。
            • empty_latent_width / empty_latent_height: 空の潜在空間の幅と高さを設定します。潜在空間の次元は、生成される画像の解像度とアスペクト比を定義するために重要です。
            • batch_size: 一度に生成される画像の数を指定します。バッチサイズが大きいほど処理時間が短縮されますが、より多くの計算リソースが必要です。
            • lora_stack / cnet_stack: LoRAモデルやControlNetモデルのスタックを指定できます。これらはベースモデルを微調整し、特定のスタイルや特徴を追加するために使用されます。

            KSampler SDXL (Eff.)

            「KSampler SDXL (Eff.)」ノードは、「KSampler」ノードに以下のような便利な機能を加えた拡張ノードになります。

            • ライブプレビューで生成を確認したり、VAEで画像をデコードする機能を備えています。
            • シードをより明確に管理できる特別なシードボックスを搭載しています。(選択されたシードの動作を適用するために-1のシードを使用)
            • XYプロットスクリプトなど、さまざまなスクリプトを実行できます。スクリプトを有効化するには、入力接続を接続するだけです。

            各ウィジェットの用途は以下になります。

            • noise_seed: シード値を設定します。シード値は、直接入力の他に、「Randomize / Last Queued Seed」ボタンをクリックすることで、-1と最後の生成に使用されたシード値を切り替えることが可能です。
            画像
            • steps: サンプリングのステップ数を指定します。値が大きいほど高品質な画像が生成されますが、処理時間も長くなります。
            • cfg: Classifier-Free Guidanceのスケールを制御します。値が高いほど、プロンプトに忠実な画像が生成されます。
            • sampler_name: 使用するサンプリングアルゴリズムを選択します。初期値はeulerになります。
            • scheduler: サンプリングプロセスのスケジューリング戦略を指定します。初期値はnormalになります。
            • start_at_step: サンプリングを開始するステップを指定します。部分的なサンプリングや既存画像の改良に使用できます。
            • refine_at_step: リファイナーモデルに切り替えるステップを指定します。-1に設定するとリファイナーは無効になります。
            • preview_method: 生成中の画像のプレビュー方法を指定します。
              • auto: システムが最適なプレビュー方法を自動的に選択します。通常は最も効率的なオプションです。
              • latent2rgb: 潜在空間の画像を直接RGBに変換してプレビューします。高速ですが、品質は低くなります。
              • taesd: Tiny AutoEncoder for Stable Diffusionを使用してプレビューを生成します。品質と速度のバランスが取れています。
              • none: プレビューを生成しません。最も高速ですが、進捗を視覚的に確認できません。
            • vae_decode: VAE(Variational Autoencoder)を使用して潜在画像を最終出力画像にデコードするかどうかを制御します。
              • true: 標準的なVAEデコードを実行します。
              • true (tiled): タイル化されたVAEデコードを実行します。大きな画像や高解像度画像に適しています。
              • false: VAEデコードを実行せず、潜在画像のままにします。この時、出力「IMAGE」は機能しないため、ノードを接続しているとエラーになります。
              • output only: 最終結果のみをVAEデコードします。中間ステップはデコードしません。
              • output only (tiled): 最終結果のみをタイル化されたVAEデコードで処理します。

            XY Plot

            「XY Plot」ノードは、特定のウィジェットの値やプロンプトなどを指定の条件で変化させ、その変化をX/Y軸に一度に表示するために使用するノードです。XY Plotノードの特徴は以下になります。

            • 2次元グリッド形式での表示: X軸とY軸に異なるパラメータを設定し、それらの組み合わせによる画像生成結果を2次元グリッドで表示します。
            • 多様なパラメータ比較: CFG、シード値、チェックポイント、LoRA強度など、様々なパラメータを比較できます。
            • スクリプト生成: XY Plotノードは内部的にスクリプトを生成し、KSampler (Efficient)ノードと連携して動作します。
            画像

            各ウィジェットの用途は以下になります。

            • grid_spacing: グリッド間のスペースを設定します。
            画像
            • XY_flip: X軸とY軸を入れ替えるオプションです。
            画像
            • Y_label_orientation: Y軸のラベルの向きを設定します。
            画像
            • cache_models: モデルをキャッシュするかどうかを設定します。
            • ksampler_output_image: KSamplerの出力画像の形式を指定します。「Images」の場合、プロットされた1枚ずつの画像が出力されます。「Plot」の場合、1枚に全ての生成画像がプロットされた画像が出力されます。
            画像

            XY Input: Prompt S/R

            「XY Input: Prompt S/R」ノードは、XY Inputノードの入力「X」「Y」に接続し、プロンプトを制御するノードです。search_txtで指定した文字列をreplace_1, replace_2…で指定した文字列に次々と置換しながら生成を行います。

            画像

            各ウィジェットの用途は以下になります。

            • target_prompt: 置換対象のプロンプトをポジティブ、ネガティブから選択します。
            • search_txt: 置換対象の文字列を指定します。例えば、「1girl, portrait」というプロンプトがある場合、「portrait」をsearch_txtに設定することで、次のウィジェット「replace_1」「replace_2」…の文字列に「portrait」を置換します。
            • replace_count: 置換する回数を設定します。この回数を増減させることで、「replace_x」の入力欄が増減します。
            • replace_x: 置換元の文字列を設定します。

            4. ワークフロー

            ワークフローの全体像は以下になります。

            画像

            ワークフローは、文末で配布しています。

            プロンプトと置換元文字列の設定

            ポジティブプロンプト、ネガティブプロンプトには、以下を設定しました。

            // ポジティブプロンプト
            best quality, 1girl, solo, long_hair, smile, casual dress, very_long_hair, blonde_hair, standing relaxed, portrait,

            // ネガティブプロンプト text, watermark,

            置換元文字列は、X軸に「portrait」の置換として、「full body」「from side」「from behind」、Y軸に「standing relaxed」の置換として、「crossing arms」「hands on hips」「raising one hand」を設定しています。

            5. 実行結果を確認する

            それでは、メニューの「Queue Prompt」をクリックして、ワークフローを実行してみましょう。以下が生成結果になります。X軸、Y軸でプロンプトによる生成結果の違いを一目で確認できます。

            画像

            今回は、プロンプトの比較をしてみましたが、これ以外にも「XY Input: CFG Scale」ノードや「XY Input: Steps」ノードなど、プロットに使えるノードがあるので、これらのノードを使ってウィジェットの変化を確認してみてください。

            次回は、ComfyUIをAPI化する方法を紹介します。乞うご期待!

            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/ncb1141cab2ae

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

          1. [ComfyMaster18]保存版「ComfyUI-Custom-Scripts」完全マニュアル

            より複雑なワークフローを構築したり、効率的に作業を進めたいと思ったことはありませんか?
            ComfyUI-Custom-Scripts
            は、そんなあなたの悩みを解決する拡張機能です。ワークフローの自動化、ノードの操作性向上、画像管理の効率化など、様々な機能を提供し、ComfyUIをさらに便利に進化させます。

            こんにちわ、AICU media編集部です。
            ComfyUI マスターガイド」第18回目になります。
            本記事では、ComfyUI-Custom-Scriptsのインストールから、豊富な機能、そして活用方法までを詳しく解説していきます。あなたのAIアート制作を、より快適で創造的な体験へと導きます。

            初回はこちら

            前回はこちら

            今回はComfyUI-Custom-Scripts「保存版」完全紹介をめざして頑張ってお送りします。よろしかったらシェアよろしくお願いいたします。

              1. ComfyUI-Custom-Scriptsとは

              ComfyUI-Custom-Scriptsは、ComfyUIの操作性と効率性を向上させるための強力なツールセットです。ワークフローの効率化、プロジェクトの整理、AIアート作成プロセスに新しい機能を追加するためのさまざまなカスタムスクリプトとノードを提供します。これらの機能を活用することで、ワークフローの管理や画像生成プロセスがより直感的かつ効率的になります。
              以下がComfyUI-Custom-ScriptsのGitHubリポジトリになります。

              https://cdn.iframe.ly/xKsLsAo?v=1&app=1

              2. ComfyUI-Custom-Scriptsのインストール

              • メニューの「Manager」をクリックし、「ComfyUI Manager Menu」を開きます。
              • 「Custom Nodes Manager」をクリックします。
              画像
              • 上部の検索バーに「ComfyUI-Custom-Scripts」と入力し、表示されたカスタムノードの「Install」をクリックします。
              画像
              • インストールが完了すると、再起動が求められるので、「Restart」をクリックします。
              画像
              • トップ画面に戻るので、メニューの「Refresh」をクリックします。
              画像
              • 再度「Custom Nodes Manager」画面を開き、上部の検索バーで「ComfyUI-Custom-Scripts」を検索します。以下の画像のように表示されていれば、インストールが完了しています。
              画像

              3. ComfyUI-Custom-Scriptsの設定

              ComfyUI-Custom-Scriptsの各機能の設定は、メニューの歯車ボタンをクリックして表示される設定画面で行うことができます。

              画像

              設定画面の「pysssss」セクション内の設定項目がComfyUI-Custom-Scriptsで追加された設定になります。

              画像

              Image Feed

              Image Feedは、生成した画像の履歴を表示します。初期設定では、下部に配置されています。

              画像

              画像を生成していくと、このようにImage Feedに今までに作成した画像が表示されます。

              画像

              Image Feedに関する設定は、以下の4つがあります。

              画像
              • Image Feed Deduplication: 画像の重複を検出し、重複の場合は再生成を抑制します。この設定では、disabled, enabled(slow), enabled(performance), enabled(max performance)のいずれかの選択肢を選択可能です。重複の検出は、画像の各pixelからハッシュ値を計算し、そのハッシュ値を比較することで行われます。
                • disabled: 重複検出機能が無効化されます。画像が重複していても生成されてしまいます。
                • enabled(slow): 重複検出機能が有効化され、画像スケールが1.0倍でハッシュ値の計算が行われます。高精度の重複検出ですが、処理速度は遅いです。
                • enabled(performance): 重複検出機能が有効化され、画像スケールが0.5倍でハッシュ値の計算が行われます。slowよりも精度が落ちますが、処理速度は速くなります。
                • enabled(max performance): 重複検出機能が有効化され、画像スケールが0.25倍でハッシュ値の計算が行われます。slow, performanceよりも精度は悪いですが、処理速度は速いです。
              • Image Feed Direction: 画像の表示順をnewest first(生成が新しい順), oldest first(生成が古い順)から選択します。
              画像
              • Image Feed Location: Image Feedの配置をleft, top, right, bottom, hiddenから選択します。
              画像
              • Image Feed Max Images: Image Feedに表示する画像の最大数を指定します。例えば、「2」と設定した場合、何度生成してもImage Feedには2枚までしか表示されません。「0」と設定した場合は、表示される画像の枚数は無制限になります。

              Autocomplete

              Autocompleteは、プロンプトの入力時にプロンプトの候補を表示する機能です。例えば、「emb」と入力すれば、「embedding:」という候補を表示してくれます。候補は、「↑」または「↓」キーで選択することができます。

              選択後、TabまたはEnterキーを押すことで選択を確定できます。

              画像

              設定画面には、以下の設定項目があります。

              画像
              • Enabled: Autocomplete機能を有効化します。
              • Loras enabled: 表示される候補にLoRAも含む機能を有効化します。
              • Auto-insert comma: 候補の確定後にカンマを入れるかどうかを決定する設定です。この項目にチェックを入れると、候補の確定後に自動的にカンマが挿入されます。
              • Replace _ with space: 
              • Insert suggestion on: 候補が表示され、選択した後、その選択を確定するキーを設定します。Tabにチェックを入れると、Tabキーで選択を確定できます。Enterにチェックを入れると、Enterキーで選択を確定できます。
              • Max suggestions: 一度に表示する候補の最大数を設定します。
              • Manage Custom Words: 候補に表示されるプロンプトを設定します。「Manage Custom Words」をクリックして表示される画面で、上部の「Load」をクリックします。そうすると、既定のプロンプトが読み込まれまるので、下部の「Save」をクリックすると、プロンプトが保存され、候補に表示されるようになります。
              画像

              Auto Arrange Graph

              ノードを綺麗に配置することができます。

              • まず、配置を修正したいノードと、基点となるノードを選択します。
              画像
              • 基点となるノード上で右クリックをし、表示されたメニューから「Align Selected To」をクリックすると、配置を揃える位置をTop、Bottom、Left、Rightから選択するメニューが表示されます。
              • 各配置位置を選択した結果を以下に示します。
              画像

              Always Snap to Grid

              この機能を有効にすると、ノードの配置がマス目に沿って配置されるようになります。

              画像

              [Testing] “Better” Loader Lists

              ComfyUI-Custom-Scriptsが提供するノード「Checkpoint Loader」「Lora Loader」の使用時に、CheckpointやLoRAの選択でプレビュー画像を表示する機能です。

              画像

              使用するには、Checkpointの場合は「ComfyUI/models/checkpoints」フォルダ、LoRAの場合は「ComfyUI/models/loras」フォルダにCheckpointやLoRAと同名のPNGファイルを配置します。例えば、Checkpointの「sd_xl_base_1.0.safetensors」のプレビュー画像を表示するには、「ComfyUI/models/checkpoints」フォルダに「sd_xl_base_1.0.png」を格納します。

              画像

              Checkpoint/LoRA/Embedding Info

              Checkpoint、LoRA、Embeddingの詳細情報を表示します。Checkpointの場合は、「Load Checkpoint」ノード上で右クリックし、表示されたメニューの「View Checkpoint Info…」を選択します。LoRAの場合は、「Load LoRA」ノード上で右クリックし、表示されたメニューの「View Lora Info…」を選択します。

              画像

              Embeddingの場合は、プロンプトの入力時に表示される候補のインフォメーションボタンをクリックすることで表示させることができます。

              画像

              モデルの詳細は、以下のように表示されます。

              画像

              Custom Colors

              ノードに色をつけることができる機能です。

              画像

              色の付け方は、ノードを右クリックし、表示されたメニューから「Colors」を選択すると、色の選択メニューが表示され、そこから色を選択すると、ノードに色を付けることができます。

              画像

              色の選択で「Custom」を選択すると、色選択のパレットが表示され、ここで好きな色を選択できます。色を選択した後にEnterキーで完了となります。

              画像

              Favicon Status

              ワークフローの実行状態をブラウザのタブに表示されるアイコンで判断することができます。また、ワークフロー実行中のタブに表示される数字は、「Queue size」になります。

              画像

              KSampler (Advanced) denoise helper

              この機能は、「KSampler (Advanced)」ノードの各ウィジェットの値を質問に答えていくことで設定していく機能です。

              • 「KSampler (Advanced)」ノード上で右クリックし、表示されたメニューから「Set Denoise」を選択します。
              • ブラウザの上部にダイアログが表示されます。最初の質問は、「How many steps do you want?(求めるステップ数はいくつですか?)」です。ステップ数を入力し、「OK」をクリックしてください。
              画像
              • 次の質問が表示されます。次の質問は、「How much denoise? (0-1)(denoiseはいくつですか?)」です。設定したいdenoiseの値を0〜1の間で入力してください。
              画像
              • これで各ウィジェットの値が自動で設定されます。
              画像

              Lock Nodes & Groups

              ノードやグループにロックオプションを追加し、ロックを解除するまで移動できないようにします。しかし、現状はグループにしか効果がなく、ノードには適用されないようです。

              • グループ上で右クリックをして、表示されたメニューの「Edit Group」を選択すると、さらに表示されるメニューから「Lock」をクリックします。これでグループがロックされ、移動できなくなります。
              画像
              • アンロックする場合は、同様の操作をしていくと、先程は「Lock」だった項目が「Unlock」になっているので、「Unlock」をクリックすることで可能です。
              画像

              Math Expression

              入力した値を利用して計算を行うカスタムノード「Math Expression」を提供します。以下が「Math Expression」の仕様になります。

              • 入力可能な値: IMAGE、LATENT、INT、FLOAT
              • 使用できる演算子:
                • + : 加算
                • – : 減算
                • * : 乗算
                • / : 除算
                • // : 切り捨て除算
                • ** : 冪乗
                • ^ : 排他的論理和
                • % : 剰余
              • 使用できる関数:
                • floor(num): 小数点以下切り捨て
                • ceil(num): 小数点以下切り上げ
                • randomint(min,max): ランダム値

              例えば、以下のように2つの画像(両方ともwidthが1024px)を読み込み、1つを入力「a」、もう1つを入力「b」に入力します。Math Expressionでは、「a.width + b.width」と入力し、ワークフローを実行すると、2048という結果を出力できます。

              画像

              Node Finder

              ワークフロー内で使用されているノードの検索をサポートする機能です。

              • キャンバス上を右クリックし、表示されたメニューから「Go to node」を選択します。
              • 「Go to node」を選択すると、ワークフロー内で使用されているノードの種類が表示されます。
              • さらにここからノードの種類を選択すると、使用されているノードの一覧が表示され、表示したいノードをクリックすると、そのノードに移動します。
              画像

              Quick Nodes

              特定の標準ノードに対して、接続対象のノードを簡単に追加する機能が提供されています。

              • 例えば、「Load Checkpoint」ノードを右クリックすると、上部に「Add XXX」という項目が複数表示されます。これらをクリックすると、自動で接続先のノードが追加されます。
              画像
              • 以下は「Add LoRA」を選択した結果です。自動で「Load LoRA」ノードが追加および接続されます。
              画像

              Play Sound

              入力をトリガーに音を鳴らすカスタムノード「PlaySound」を提供します。例えば、以下のようにグラフの末端に接続することで、ワークフローの実行が完了した時に音を鳴らすことで、実行完了を通知するために使用できます。

              画像

              「PlaySound」の各ウィジェットの説明は以下になります。

              • 入力「any」: 入力はトリガーにしか使用されないので、どんな値でも入力できます。
              • mode:「always」「on empty queue」から選択できます。
                • always: 入力をトリガーに常に音が鳴ります。
                • on empty queue: queue: キューが空になった時に音がなります。
              • volume: 音のボリュームを0〜1の間で指定します。
              • file: 通知音を指定します。通知音は、「ComfyUI/custom_nodes/ComfyUI-Custom-Scripts/web/js/assets」フォルダに格納することで使用できます。初期通知音として「notify.mp3」がフォルダに格納されています。別の通知音を使用したい場合は、当該フォルダにmp3ファイルを格納し、fileにそのファイル名を指定することで使用できます。
              画像

              System Notification

              入力をトリガーにシステム通知を起こすカスタムノード「System Notification」を提供します。

              画像

              例えば、以下のようにグラフの末端に接続することで、ワークフローの実行が完了した時に通知を出すことで、実行完了を通知するために使用できます。

              画像

              「SystemNotification」の各ウィジェットの説明は以下になります。

              • 入力「any」: 入力はトリガーにしか使用されないので、どんな値でも入力できます。
              • message: システム通知に表示するメッセージを指定します。
              • mode:「always」「on empty queue」から選択できます。
                • always: 入力をトリガーに常に音が鳴ります。
                • on empty queue: queue: キューが空になった時に音がなります。
              画像

              Load Text

              「Load Text」は、テキストファイルを読み込むカスタムノードです。例えば、よく使うプロンプトをテキストファイルで保存しておき、それを読み込み、プロンプトとして使用することが考えられます。

              画像

              「Load Text」の各ウィジェットの用途は以下のとおりです。

              • root_dir: テキストファイルを格納しているフォルダを選択します。
                • input: 「ComfyUI/input」フォルダ
                • output: 「ComfyUI/output」フォルダ
                • temp: 「ComfyUI/temp」フォルダ(ない場合は作成する)
              • file: 読み込むテキストファイルを選択します。
              画像

              Show Text

              「Show Text」は、テキストを表示するカスタムノードです。例えば、前述した「Load Text」を使用した際に、中間に「Show Text」を挟むことで、読み込んだテキストファイルの内容を確認することができます。

              画像

              Show Image on Menu

              メニューの下部に生成画像が表示される機能です。

              画像

              String Function

              「String Function」は、テキストのカンマ区切りでの結合や、正規表現を使った置換などの機能を提供するカスタムノードです。

              「String Function」の各ウィジェットの用途は以下のとおりです。

              • action: append, replaceから選択します。
                • append: text_aのテキストに対して、text_b、text_cのテキストを追加します。
                • replace: text_aのテキストに対して、text_bに記載した条件に一致した箇所をtext_cに置換します。
              • tidy_tags: appendの際に、text_b、text_cのテキストをカンマ区切りで結合します。
              画像

              appendの使い方としては、まず「String Function」text_aを入力に変換し、その入力に対してテキストを接続させ、入力されたテキストに対してtext_btext_cの内容を追加します。

              画像

              replaceの場合は、正規表現を使用することもできます。text_bに入力した正規表現に一致する箇所をtext_cに入力した正規表現で置換します。

              画像

              Widget Defaults

              ノードのウィジェットのデフォルト値を設定することができます。設定画面の「Widget Defaults」「Manage」をクリック後に表示される画面からデフォルト値を設定します。

              画像

              ウィジェットのデフォルト値の管理画面では、Node Class(カスタムノード名)、Widget Name(ウィジェット名)、Default Value(デフォルト値)を設定します。各項目を入力後に「Save」をクリックで登録完了になります。一例として、Node ClassにKSampler、Widget Nameにsteps、Default Valueに30を設定します。

              画像

              以下がデフォルト値を設定した結果です。本来のstepsの初期値は20ですが、30に変更になっていることが確認できます。

              画像

              Workflows

              ワークフローの保存と読み込みを手軽に行える機能があります。ComfyUI-Custom-Scriptsをインストールすると、メニューの「Save」「Load」にプルダウンメニューが追加されます。

              画像

              「Save」のプルダウンメニューを開くと、「Save as」「Save to workflows」が表示されます。「Save as」は、標準の保存機能で、指定した場所にワークフローが保存されます。「Save to workflows」は、保存場所の指定はできず、自動で「ComfyUI/pysssss-workflows」フォルダに指定した名前でワークフローが保存されます。

              画像

              次に「Load」のプルダウンメニューを開きます。このメニューには、「ComfyUI/pysssss-workflows」フォルダに保存されているワークフローが表示されます(要するに「Save to workflows」で保存したワークフローが表示されるということ)。通常の「Load」では、ファイル選択ダイアログが開き、読み込むワークフローを選択しますが、この機能ではプルダウンメニューに表示されたワークフローをクリックするだけで読み込むことができます。

              画像

              設定画面では、メニューの「Load Default」で読み込まれるワークフローを「ComfyUI/pysssss-workflows」フォルダに保存されているワークフローに変更することが可能です。設定画面の「Default Workflow」の選択肢には、「[ComfyUI Default]」「ComfyUI/pysssss-workflows」フォルダ内のワークフローが表示されます。「[ComfyUI Default]」は、ComfyUIの標準のワークフローになります。それ以外の保存したワークフローを選択すると、「Load Default」で読み込まれるワークフローが選択したワークフローになります。

              画像

              Workflow Images

              ワークフローを画像として保存する機能です。以下の記事で解説しているので、詳細は以下の記事をご覧ください。

              Use Number Input Prompt

               設定画面の項目「Use number input on value entry」を有効化すると、ウィジェットの数値入力がスピンボックスで可能になります。

              画像

              ノードの数値タイプのウィジェットをクリックし、値の編集ボックスが開くと、上下のボタンが追加されています。

              画像

              3. まとめ

              ComfyUI-Custom-Scriptsは、ComfyUIの機能を大幅に拡張し、より快適で効率的なAI画像生成を実現する強力なツールです。ノードの自動配置、プロンプトのオートコンプリート、ワークフローの保存・読み込み機能など、様々な機能が提供されています。これらの機能を活用することで、ワークフローの管理、画像生成プロセスの効率化、そして新たな表現の可能性を探求することができます。
              この記事で紹介した機能以外にも、ComfyUI-Custom-Scriptsは常に進化を続けており、新しい機能が追加されています。ぜひComfyUI-Custom-Scriptsを導入し、ComfyUIの可能性を最大限に引き出しましょう。あなたのAIアート制作が、さらに楽しく、創造的なものになることを期待しています。

              次回は、ComfyUIのカスタムノード「XY Plot」の方法を紹介します。乞うご期待!

              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/nb3555a8a64da

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

            1. [ComfyMaster17] アウトペインティングで、画像の枠を超える!

              画像サイズの [枠]ワクにとらわれず、さらに広大な世界を描きたいと思ったことはありませんか?
              ComfyUIのOutpainting(アウトペインティング)機能を使えば、既存の画像をキャンバスのように拡張し、周囲の景色や状況をAIが自動的に生成してくれるのです。画像の境界線を越えて、新たなストーリーを紡ぎ出すことができます。漫画やバナー画像をつくるときにとても便利です。

              こんにちわ、AICU media編集部です。
              ComfyUI マスターガイド」第17回目になります。
              本記事では、ComfyUIのOutpaintingの基本的な使い方から、具体的なワークフロー、そしてその無限の可能性についてご紹介します。

              前回はこちら

                1. Outpaintingとは

                Outpainting(アウトペインティング)は、既存の画像の境界を超えて拡張し、新しい視覚的要素を生成する画像処理技術です。これは、元の画像のコンテキストを維持しながら、画像の外側に新しい内容を追加することができます。

                ▼[参考]Automatic1111での利用例

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

                例えば、上下左右に50pxの拡張をする場合、以下のようになります。拡張部は、元画像のコンテキストに従った内容になっています。

                画像

                2. Outpaintingワークフロー

                それでは、Outpaintingのワークフローを作成していきます。
                ✨️便利なGoogle Colabノートブックとサンプルjsonファイルは文末にて✨️
                ここでは、以下の画像を縦に拡張してみます。

                画像

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

                画像

                さて、自分でアウトペインティングのワークフローを作ってみましょう!

                • メニューの「Load Default」をクリックし、標準のワークフローをロードした状態にします。モデルはstable-diffusion-xl-base-1.0を使用します。
                画像
                • 次に「Load Image」ノードを追加し、「choose file to upload」から対象の画像をアップロードします。
                画像
                • 次に空白をダブルクリックして「Pad Image for Outpainting」を追加し、「Load Image」の出力「IMAGE」と、「Pad Image for Outpainting」の入力「image」を接続します。
                画像
                • 「Pad Image for Outpainting」では、left、top、right、bottomにピクセル単位で拡張するサイズを指定できます。また、feathering(フェザリング)は、画像の端をぼかして滑らかに周囲と馴染ませる技術です。outpaintingでは、元の画像と新しく生成した部分の境界をなめらかにつなぐために使用されます。今回は、topに200px、featheringに100pxを指定しました。
                • 拡張部分にあまり大きな値を設定しすぎないことがコツです!
                • とはいえ小さすぎると描画できない要素(この場合は雲)もあるので調整しながら何回か生成するのがオススメです。
                画像
                • 次に「VAE Encode (for Inpainting)」ノードを追加し、「Pad Image for Outpainting」ノードの出力「IMAGE」「MASK」を、それぞれ「VAE Encode (for Inpainting)」ノードの入力「pixels」「mask」に接続、「Load Checkpoint」ノードの出力「VAE」「VAE Encode (for Inpainting)」ノードの入力「vae」に接続します。
                画像
                • 次に「VAE Encode (for Inpainting)」ノードの出力「LATENT」「KSampler」ノードの入力「latent_image」に接続します。
                画像
                • これで生成する準備が完了しました。
                • 上のCLIP(ポジティブプロンプト)に拡張したい画像のプロンプトとして「blue sky, cloud」を設定します。
                • 「Queue Prompt」をクリックし、生成を実行します。以下が生成結果です。しっかり上部に拡張されていることがわかります。
                画像
                • 次は「Pad Image for Outpainting」ノードの「left」に512pxを設定し、横長に画像を拡張してみました。
                画像
                • 拡張した画像に対して、さらに繰り返し拡張を加えていくことも可能です。以下の画像は、上側の拡張を数回行ったものになります。
                画像

                3. まとめ

                ComfyUIのOutpainting機能は、画像編集の可能性を大きく広げる画期的なツールです。シンプルな操作で、画像の境界線を越えて世界を拡張し、想像力豊かな表現を実現することができます。風景写真の拡張、イラストのストーリー展開、漫画制作、バナー画像制作、あるいは全く新しい画像の創造など、その用途は多岐に渡ります。ぜひ、ComfyUIのOutpaintingを試して、あなたのクリエイティビティを解き放ち、新たな表現の世界を切り開いてください。

                次回は、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メンバーシップ。
                退会率はとても低く、みなさまにご満足いただいております。
                ✨️オトクなメンバーシップについての詳細はこちら


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

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