Как количество шагов влияет на качество изображения: Тест 25 семплеров в Stable Diffusion

Stable Diffusion — мощный инструмент для создания изображений с помощью искусственного интеллекта. Но качество и детализация результата сильно зависят от выбранных параметров, таких как семплер (sampler) и количество шагов (steps).

Я решил провести эксперимент: взять одну модель, фиксированный seed и менять семплеры с разным количеством шагов, чтобы наглядно увидеть, как эти параметры влияют на итоговое изображение.

Цель эксперимента

Я хочу выяснить, какой алгоритм генерации (семплер) в Stable Diffusion лучше всего справляется с созданием детализированных изображений. В качестве теста будем использовать сложный промпт с множеством мелких элементов:

«Портрет молодой женщины с выразительными деталями. Она одета в белую льняную рубашку с расстегнутым воротом, сквозь который видна тонкая золотая цепочка. На голове у нее элегантная соломенная шляпка с черной лентой. В ее руках — букет полевых цветов (ромашки, васильки и колосья), перевязанный бечевкой. В правом ухе сверкает серьга из матового золота.»

Что будем проверять

  • Насколько точно разные семплеры передают мелкие детали (цепочка, серьга, текстура ткани, цветы).
  • Как быстро каждый алгоритм достигает хорошего результата (оптимальное количество шагов).
  • Есть ли семплеры, которые дают отличное качество без лишних затрат времени.

Методика тестирования

  • Один и тот же промпт и настройки (одинаковый seed, размер изображения, CFG scale).
  • Тестируем 25 семплеров представленных в Forge Stable Diffusion.
  • Для каждого семплера пробуем разное количество шагов (от 1 до 30), чтобы найти баланс между качеством и скоростью.
				
					Prompt: portrait of a young woman with expressive details. she is dressed in a white linen shirt with an unbuttoned gate, through which a thin gold chain is visible. on her head is an elegant straw hat with a black ribbon. in her hands - a bouquet of wildflowers (chamomile, cornflowers and ears), tied by twine. a matte gold earring sparkles on the right ear

Negative prompt: infant, underage, young, child, teen, bad quality, worst quality, low quality, worst detail, deformed, bad hands, bad eyes, signature, username, logo, watermark, text, label, cartoon, illustration, anime, painting, CGI, 3D render

Steps: от 1 до 30
Sampler: DPM++ 2M, DPM++ SDE, DPM++ 2M SDE, DPM++ 2M SDE Heun, DPM++ 2S a, DPM++ 3M SDE, Euler a, Euler, LMS, Heun, DPM2, DPM2 a, DPM fast, DPM adaptive, Restart, HeunPP2, IPNDM, IPNDM_V, DEIS, DDIM, DDIM CFG++, PLMS, UniPC, LCM, DDPM
CFG-Scale: 5.3
Seed: 3768410078
Model: juggernautXL_version6Rundiffusion
				
			

Результат

DPM adaptive (фиксированный результат на всех шагах начиная с первого)
1 - 1
DPM++ 2S a
6-14
DPM++ SDE
6-8
Euler a
7 - 13
HeunPP2
8 - 17
Restart
9 - 36
DPM++ 2M (первый приемлемый результат с 10 шага, с 22 шага устойчивый результат)
10 - 22
DPM2
11
UniPC
11 - 32
DDIM CFG++ (постоянно перезжённое изображение)
12
DDPM (плохо следует промту)
12 - 22
DEIS
12 - 17
Heun (на всех шагах рваная картинка с артефактами, нет правности. Добиться хорошей картинки не удалось)
14
DPM++ 2M SDE (первый приемлемый результат с 14 шага, устойчивый результат с 18 шага)
14 - 18
DDIM (много артефактов на всех шагах)
15
DPM++ 2M SDE Heun (первый приемлемый результат с 15 шага, устойчивый результат с 18 шага)
15 - 18
Euler (нет идеальности при любых шагах, постоянно рваная шляпа)
16 - 40
DPM++ 3M SDE
16-20
IPNDM
23 - 34
LMS
23
PLMS
23 - 36
DPM fast (до 18 шага постоянные артефакты, фотореализма удалось добиться с 34 шага, а следования промту только к 40 шагу)
24 - 34
DPM2 a
24
IPNDM_V (на всех шагах рваная картинка с артефактами, нет правности. Добиться хорошей картинки не удалось)
30
LCM (плохо следует промту, несмотря на то что анатомию он начал безошибочно генерировать где то на 14 шаге, но он постоянно генерирует не то и подрисовывает лишние детали)
40

Итог

DPM adaptive — показал показал с первого шага идеальный и далее не изменяющийся результат, что требует дальнейшего изучения.

DPM++ 2S a — к 6 шагу начал генерировать приемлемый результат, но с размытым фоном, но к 12 шагу вышел на отличный фотореалистичный результат без артефактов

DPM++ SDE — к 6 шагу начал генерировать приемлемый результат, но к 14 шагу вышел на отличный фотореалистичный результат

Euler a — к 13 шагу вышел на отличный результат, а с 24 шага показывал максимум деталей