KSamplerAdvanced

(comfyanonymous/ComfyUI)
sampling/KSampler (Advanced)
latent 表現の画像からノイズを除去する (高機能版)

latent 表現の画像からノイズを除去し、元の画像を復元 (生成) します。 KSampler の高機能版です。 LatentComposite と組み合わせて Noisy Latent Composition を実現できます。

KSampler と比較すると、以下のような違いがあります:

  • 最初のステップ開始前にノイズを加えるかどうかを指定できる。 KSampler では denoise に応じた量のノイズを必ず加える。
  • 特定のステップで処理を中断したり再開したりできる。
  • denoise を直接指定できない。 他のパラメータで間接的に指定することになる。→KSamplerAdvanced で denoise 量を指定する方法

KSampler が可能なことはすべて出来る高機能版ですが、denoise を直接指定できないため、置き換えには若干の手間がかかります。 Hires. fix など、慣れるまで直観的に使いにくい場面もあります。

add_noise

最初のステップ開始前にノイズを加えるかどうかを指定します。

start_at_step

ノイズスケジュールのどのステップから開始するかを指定します。 start_at_step = 0 で通常通り最初のステップからとなります。

end_at_step

ノイズスケジュールのどのステップで終了するかを指定します。 end_at_step >= steps であれば、通常通り最終ステップ steps で終わります。

return_with_leftover_noise

最終ステップで強制的に full denoise するかを指定します。 disable で強制 full denoise、enable で通常のノイズスケジュールそのまま、になります。 end_at_step >= steps であれば、return_with_leftover_noise の値に関わらず通常どおり full denoise して終わります。 最終ステップ以外は通常のノイズスケジュールに従います。

迷ったらとりあえず enable にしておけば問題ありません。 disable の用途はよくわかりません。

関連

使用例

ConditioningSetArea との組み合わせ: area 無しの negative 1つ (で全体を覆う) と、area 付きの positive 4つ (合わせて全体を覆う) で、noisy latent (area) composition:

ノイズを加えずに "ノイズ" を除去できる、ということで、拡散モデル本来の使い方を超えて、全体の構造を維持しつつ細部を消す、というようなこともできます: