この記事では、生成AIを用いて、誰でも簡単にオリジナルのTシャツデザインを作成できるワークフローを紹介します。インペインティングモデルと、画像の構図を制御するControlNetを組み合わせることで、Tシャツの形状にぴったりと合った、高品質なデザインを生成することが可能になります。さらに、Tシャツの表裏それぞれに異なるデザインを指定するといった高度なテクニックも紹介していきます。この記事を読み進めることで、あなたも生成AIを活用したTシャツデザインの世界に足を踏み入れることができるでしょう。
文末には、メンバーシップ向け特典としてAICUが開発中の新サービス「共有ComfyUI」の無料アクセスクーポンも付いてます!
https://note.com/aicu/n/n8d07d082c7c0
今回作成するワークフローは、SDXLを使用したTシャツデザインの生成です。今回のワークフローの注目点は以下になります。
Tシャツの形状に合わせた画像を生成させるために、Tシャツの表裏の画像をControlNetのソースとして利用する
Tシャツの表裏の画像のTシャツ部分にマスクを掛け、そこにインペイントすることで、余計なものを生成させないようにする
表面、裏面、それぞれ別々にデザインを生成し、最後にそれらを合成して1枚の画像を作成する
SDXLモデルのRealVisXLのインペイント版になります。インペイントに特化してトレーニングされており、通常のRealVisXLよりもインペイントに優れています。以下のリンクよりダウンロードし、「ComfyUI/models/checkpoints」フォルダに格納してください。
https://civitai.com/models/620368/realvisxl-inpainting
controlnet-union-sdxl-1.0は、SDXLで使用できる様々なControlNetを一つにまとめたプリプロセッサーモデルです。以下のリンクよりダウンロードし、「ComfyUI/models/controlnet」フォルダに格納してください。
今回は、以下の画像を基にTシャツのデザインを生成します。この画像をControlNetで参照し、この型に合ったデザインを生成させるようにしました。
noteでは、画像がwebp形式に自動変換されてしまうので、png版を以下よりダウンロードください。
白無地_Tシャツ_表裏.png (右クリックで保存)
ワークフローの全体像は、以下になります。このワークフローでは、Tシャツの表面・裏面をそれぞれ別で生成しています。表面を生成するときは、参照元画像の左側にマスクを掛け、表面のみが生成対象になるように、裏面の時は右側にマスクを掛け、裏面のみが生成対象になるように処理をしています。最後に生成した画像を結合し、1枚の画像としてTシャツのデザイン画像を作成しています。
ワークフローは、文末よりダウンロードください。
ワークフローをフローチャート形式で表したものが以下になります。
それでは、各ステップをノード名と共に詳しく説明します。
1. 入力データの準備
LoadImageノード:Tシャツの表裏の白地の画像を読み込み
CheckpointLoaderSimpleノード:画像生成モデル(RealVisXL V5.0 Inpainting)を読み込み
ControlNetLoaderノード:ControlNetモデル(controlnet-union-sdxl-1.0-pro)を読み込み
2. 画像の前処理
Cannyノード:入力画像に対してエッジ検出を適用し、Tシャツの輪郭情報を抽出
CreateShapeMaskノード:画像を左右に分割するためのマスクを生成
左(前面)と右(背面)で別々に生成を行うため
3. プロンプト設定
CLIPTextEncodeノード(前面用)
"T-shirt, front," + 生成したい表面のデザインをプロンプトで指定
CLIPTextEncodeノード(背面用)
"T-shirt, back," + 生成したい裏面のデザインをプロンプトで指定
CLIPTextEncodeノード(ネガティブ)
RealVisXL V5.0 Inpaintingで推奨されているネガティブプロンプトを指定します
(worst quality, low quality, illustration, 3d, 2d, painting, cartoons, sketch), open mouth
4. 画像生成プロセス
ControlNetの適用
ControlNetApplyAdvancedノード(前面用/背面用)
エッジ情報を使用してTシャツの形状を維持
前面と背面それぞれに強度0.8で適用
インペイント条件付け
InpaintModelConditioningノード(前面用/背面用)
マスクされた領域に対して生成条件を設定
前面と背面で別々に条件付けを実施
画像生成
KSamplerノード(前面用/背面用)
設定:RealVisXL V5.0 Inpaintingの推奨設定
ステップ数:30
CFG Scale:7
サンプラー:dpmpp_sde
スケジューラー:karras
前面と背面それぞれで同じ設定で生成
5. 後処理と出力
VAEデコード
VAEDecodeノード(前面用/背面用)
生成された潜在表現を実際の画像に変換
画像の合成
ImageCompositeMaskedノード
前面と背面の画像を合成
作成したマスクを使用して適切な位置に配置
最終出力
Local Saveノード:合成された画像をPNG形式で保存
特徴と利点
ControlNetApplyAdvancedとInpaintModelConditioningの組み合わせにより、Tシャツの形状を維持しながら高品質な生成が可能
CreateShapeMaskによる分割処理で、前面と背面の独立した生成を実現
CLIPTextEncodeによる詳細なプロンプト設定で、望ましいスタイルと要素を確実に反映
ImageCompositeMaskedによる効果的な画像合成で、シームレスな最終出力を実現
このワークフローは、複数のノードを効果的に組み合わせることで、Tシャツの表裏両面に異なるデザインを生成する複雑なタスクを、効率的かつ制御可能な方法で実現しています。各ノードが特定の役割を担い、それらが連携することで全体のプロセスが完成します。
それでは、ワークフローを実行してみましょう。このワークフローを実行すると、以下のようにTシャツのデザインを作成できます。
参照画像を変えることで、Tシャツだけでなく、パーカーやズボンなどもデザイン可能です。色んな素材で試してみてください。
AICUは「つくる人をつくる」をビジョンに掲げ、最新の生成AI、クリエイティブAI技術を皆さまにお届けしています。
📝noteでは、生成AIに関する最新情報や使い方の解説を発信しています。ぜひフォローして、最新情報をチェックしてください!
https://note.com/aicu
📩メールマガジン「週刊AICU通信」では、AI関連のニュースやトレンド、イベント情報などを毎週お届けしています。購読登録はこちらから!
https://corp.aicu.ai/ja
📚️Kindleストアでは、「月刊AICUマガジン」を配信中!AI技術の特集や深掘り解説記事が読めます。
https://j.aicu.ai/kindle
Xでも情報発信中!フォローしてね😉
https://x.com/AICUai
#生成AI #StableDiffusion #画像生成AI #AI画像生成 #プロンプト #ComfyUI #SDXL #StableDiffusionWebUI #AIイラスト #生成
この記事の続きはこちらから https://note.com/aicu/n/n0a2ff07200f3
Originally published at https://note.com on Feb 2, 2025.