Stable Diffusion inpaintの使い方!画像を部分修正・不要部分を消す方法

Stable Diffusion inpaintの使い方!画像を部分修正・不要部分を消す方法

Stable Diffusion にはinpaintと呼ばれる画像を変更・修正する機能が搭載されています。

inpaintを使いこなせば、生成ミスなどを部分的に修正することができるので、プロンプトを書き換えたりする手間を減らすことが可能です。

今回は、Stable Diffusion inpaintの使い方を解説します。

ブラウザで使えるStable Diffusion!

目次

Stable Diffusionのinpaintとは?

inpaint

Stable Diffusionのinpaintとは、img2img内に搭載されている機能です。

inpaintを使うことによって、生成した画像を部分的に変更することができます。

Stable Diffusion では、理想の画像が生成できるまでに何度か生成を繰り返す必要がありますが、 inpaintを使えば気に入らない部分のみを変更できるので、手間や時間を節約することができます。

Stable Diffusionのinpaintのマスク設定

Stable Diffusion Web UI

Stable Diffusion Web UI(AUTOMATIC1111版)のinpaintのマスク設定の詳細をドキュメントを参考に紹介していきます。

マスクのぼかし(Mask blur)

修正部分と元画像の境界部分の値設定。

値が大きいと、境界部分とより自然になじみますが、ぼかしの範囲が広がります

マスクの方式(Mask mode)

マスクの範囲をinpaint
(inpaint masked)
塗りつぶした部分を描きかえる
マスクの範囲以外をinpaint
(inpaint not masked)
塗りつぶした部分以外を描きかえる

マスクされたコンテンツ(Masked Content)

inpaint開始前にマスク領域に配置されるコンテンツを決めます。

Stable Diffusion Online
(出典:github.com)
埋める(fil)塗りつぶした部分を周囲の色を参照に埋める
自然と溶け込む様にinpaintしたい時に有効
元の画像(original)塗りつぶした部分を元の画像のまま保持する
そのまま使用してinpaintしたい時に有効
潜在空間でのノイズ(latent noise)塗りつぶした部分をランダムなノイズで埋める
創造的な効果やテクスチャなどを生み出したい時に有効
潜在空間における無(latent nothing)塗りつぶした部分を空白として扱う
新しいオブジェクトや背景を作りたい時に有効

inpaintを行う領域(inpaint area)

Stable Diffusion Online
(出典:github.com)
画像全体
(whole picture)
画像全体をinpaintの対象にする
画像全体を均一にしたい場合に有効
マスクのみ
(only masked)
塗りつぶした部分のみをinpaint対象にする
マスク部分をより鮮明で高品質に仕上げたい場合に有効
マスクのみ外側の余白
(only masked padding)
「マスクのみ」を選んだ時のオプション
塗りつぶした部分の周囲に指定したピクセル数分の余白を追加する
より自然に溶け込む様にinpaintしたい時に有効

Stable Diffusionのinpaintの使い方

Stable Diffusion Web UI(AUTOMATIC1111版)のinpaintにはさまざまな機能があります。

ここでは基本的な使い方となる画像の変更方法と不要な部分を消す方法を紹介していきます。

画像の一部分を変更・修正する

inpaintを使って画像の一部を変更・修正してみます。

今回は素材画像の「蝶」の部分を「鳥」に変更してみます。

inpaint
素材画像
STEP
inpaintに素材を送る

変更・修正したい素材画像を用意してinpaintに送ります。

素材画像を生成した際のモデルとプロンプトを再利用します。

分からない場合は、できるだけ素材画像に近いプロンプトを入力します。

STEP
修正したい部分を塗りつぶす

修正したい部分をブラシで塗りつぶします。

inpaint
STEP
プロンプトを入力

変更部分「蝶→鳥」をプロンプトに反映して生成を開始します。

パラメーターの設定は、今回はマスクのぼかしを20にし、そのほかの数値はデフォルト値で生成します。

プロンプト

[(masterpiece),((ultra-detailed)), (super-resolution),(expressionless), (best quality:1.2), professional photograph, A high school girl, finds a colorful bird, hurriedly, broadcasts it live, way home from school]

[(傑作)、((超精細))、(超解像)、(無表情)、(最高品質:1.2)、プロ写真、女子高生、カラフルなを見つけて慌てて生中継、帰宅学校から(傑作)、((超精細))、(超解像)、(無表情)、(最高画質:1.2)、プロ写真、女子高生がカラフルな鳥を見つけて慌てて生放送、学校からの帰り道]

ネガティブプロンプト

[(worst quality:2) , (low quality:2) , (normal quality:2) , ugly , missing fingers , bad hands , bad anatomy , monochrome , grayscale , watermark , bad legs , bad arms , mole]

[(最悪の品質:2) 、(低品質:2) 、(通常の品質:2) 、醜い、欠けている指、悪い手、悪い解剖学、モノクロ、グレースケール、透かし、悪い足、悪い腕、ほくろ]

STEP
完成!

「蝶」が「鳥」に変更された画像が生成されました。

inpaint

画像から不要な部分を消す

Stable Diffusion Web UI(AUTOMATIC1111版)のinpaintを使って画像から不要な部分を消去する方法を紹介します。

STEP
inpaintへ送信

Stable Diffusionのtxt2imgで作成した画像をinpaintへ送信します。

タブの「PNG内の情報を表示」からinpaintに転送をクリックすればプロンプトごと転送されます。

inpaint
STEP
消したい部分を塗りつぶす

今回は、素材画像からモニター横のデスクPC本体を消してます。

消したい対象の部分をブラシで塗りつぶします。

inpaint

プロンプトから「computer」を削除して、ネガティブプロンプトに「computer」を入力します。

プロンプト

[(masterpiece, raw photo, ultra quality), absurdres, (photo realistic:2), high detail raw color photo,skiny skin, professional photograph, japanese girl, 20 year old, long t-shirt, pajamas, fair skin, deep photo,dark brown straight long hair, perfect face and body, gaming-room, gaming chair, monitor, playing games, headphones, on chair, game controller, holding game controller, from side]

ネガティブプロンプト
[worst quality, low quality, illustration, 3d, 2d, painting, computer, cartoons, sketch, close-up,portrait]

STEP
設定を調整して生成
inpaint
日本語化しています

シード値は-1に指定します。シード値が固定されていると同じ画像が生成されてしまうので、最初は-1(ランダム)に設定します。

ノイズ除去強度は、数値が小さいほど元画像に近い画像が生成され、大きいほど元画像とは離れた画像が生成されます。

ノイズ除去強度は、最初はデフォルト値で始めて、生成結果に応じて調整していくのがおすすめです。

STEP
完成!

無事、モニター横のデスクPC本体が消えた画像が生成されました。

inpaint

ノイズ除去強度については次の記事で詳しく紹介しています。

Stable Diffusionのinpaintの例

Stable Diffusion Web UI(AUTOMATIC1111版)のinpaintの他の例を紹介します。

inpaintでできる事
  • 服装、髪型などパーツだけを変更できる
  • 手の形や口の開け閉めなど細かい差分が生成できる
  • プロンプトで制御が効きにくい内容を直感的に変更できる

先述した使い方の応用で、次の素材画像の細部のパーツを変更してみます。

inpaint

基本の手順は同じで、変更したい部分を塗りつぶしてプロンプトを付け加えます。

髪型を変更する

画像の髪の部分を塗りつぶして、プロンプトを「silver hair」に変更して生成します。

inpaint

髪色に合わせてヘッドホンの色まで自動で変わりました。

プロンプト

[(masterpiece, raw photo, ultra quality), absurdres, (photo realistic:2), high detail raw color photo,skiny skin, professional photograph, japanese girl, 20 year old, long t-shirt, pajamas, fair skin, deep photo,silver hair, perfect face and body, gaming-room, gaming chair, monitor, playing games, headphones, on chair, game controller, holding game controller, from side]

ネガティブプロンプト
[worst quality, low quality, illustration, 3d, 2d, painting, computer, cartoons, sketch, close-up,portrait]

服のデザインを変更する

服のデザインを変更します。服のロゴ部分を塗りつぶして、ペンギンデザインのTシャツを着るようプロンプトを変更します。

ネガティブプロンプトには、テキストとロゴが出現しないようにプロンプトに加えます。

inpaint
プロンプト

[(masterpiece, raw photo, ultra quality), absurdres, (photo realistic:2), high detail raw color photo,skiny skin, professional photograph, japanese girl, 20 year old, (wearing T-shirt with an anime penguin printed on:2), pajamas, fair skin, deep photo,silver hair, perfect face and body, gaming-room, gaming chair, monitor, playing games, headphones, on chair, game controller, holding game controller, from side]

ネガティブプロンプト
[worst quality, low quality, illustration, 3d, 2d, painting, computer, cartoons, sketch, close-up, portrait , text , mark , logo]

目の周囲を変更する

眼鏡をかけたスタイルに変更します。

目の周りを大きめに塗りつぶして眼鏡をかけるプロンプトを追加します。

inpaint
プロンプト

[wear glasses]

ネガティブプロンプト
[worst quality, low quality, illustration, 3d, 2d, painting, computer, cartoons, ugly ,bad eye ,sketch, close-up, portrait , text , mark , logo]

inpaintでの生成は、プロンプトや設定値の変更を何度か試行を繰り返すことになり、完成までに時間がかかることがあります。
その場合は、思い切ってプロンプトを変更したり、強調構文を利用するのがおすすめです。

Stable Diffusionのinpaintをもっと快適に使うには?

快適のイメージ見出し画像

Stable Diffusionのinpaintを使用しての修正では、一発で思った通りの結果を得るのは難しいです。

望む結果を得るためには、GPUのスペックが足りていないと時間がかかってしまいます。

効率的にStable Diffusionのinpaintを利用するには、高性能なグラフィックボードの利用がおすすめです。

2024年7月現在、ラインナップでおすすめのグラボはこちらです。

inpaintが快適に使えるおすすめのパソコンやグラボ関しては下記の記事で紹介しています。

ピクソロでコストを抑えて快適に利用

コストを抑えたいと考えている方におすすめは、PICSOROBANです。

ブラウザで簡単!ピクソロ!
PICSOROBANトップ

PICSOROBANは、インストールの必要なくブラウザで簡単にStable Diffusionを利用できます。

さらに、今ならリリースキャンペーンとして無料会員登録するだけで、2,000ポイント貰えます!

詳しい使い方は下記の記事で紹介しています。

\約2時間無料で使える!/

Stable Diffusionのinpaintを駆使してクオリティアップ!

Stable Diffusionのinpaintを使いこなせば、生成画像のクオリティは格段にアップします。

今まで生成に失敗した画像を使いながらinpaintをマスターしていくと良いでしょう。

使いこなすことでプロンプトでは表現しきれない生成結果が得られるので、必ずマスターしたいツールです。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
EdgeHUBロゴ

メールマガジン登録

Stable Diffusion・LLM・RAGに関する最新情報をいち早くお届けします。

無料メルマガの配信をご希望の方は、下記フォームよりご登録ください。

    EdgeHUB編集部からのお知らせ

    無料ウェビナーのお知らせ

    11/27ウェビナー

    RAG×日本語LLMの無料オンラインウェビナー第2弾!

    開催日時:
    2024年11月27日(水) 14:00~15:00

    内容:

    • 「LlamaIndex」と「Llama-3.1-Swallow」でRAG環境を構築
    • 生成AI開発の強い味方「GPUSOROBAN」の活用方法

    このウェビナーでは、オープンソース「LlamaIndex」で構築したRAGの使い方や、デモを紹介します。

    生成AIに関心のある方、AI技術をビジネスに活かしたい方は、ぜひこの貴重な機会にご参加ください!

    こんな方におすすめ!

    • 日本語LLMの利用を検討している方
    • AI開発に携わっている方
    • 最新のAI技術やトレンドに興味がある方
    • GPUスペック不足に悩んでいる方

    \簡単1分で申し込み!/

    この記事を書いた人

    EdgeHUBは、NVIDIAクラウドパートナーである株式会社ハイレゾが運営しています。「AIと共にある未来へ繋ぐ」をテーマに、画像生成AI、文章生成AI、動画生成AI、機械学習・LLM、Stable Diffusionなど、最先端の生成AI技術の使い方をわかりやすく紹介します。

    目次