Изначально я хотел написать модель предсказателя шума U-Net отдельно, но мои силы все еще слабы, и я думаю, что лучше написать ее вместе с концепцией диффузии в стабильной диффузии, чтобы лучше понять предиктор шума.
Таким образом, эта статья в основном написана для концептуальной диффузии и не имеет ничего общего с тем, как мы используем стабильную диффузию. Она просто позволяет каждому понять принципы, когда мы используем стабильную диффузию.
в конюшне в понятии диффузии,Диффузия делится напрямая диффузия(Forward Diffusion)иобратная диффузия(Forward диффузия). Ниже в качестве примеров используются диаграммы Ду-шэн, поскольку в определенной степени диаграммы Вэнь-шэн можно рассматривать как подмножество диаграмм Ту-шэн.
прямая диффузия,Как капля чернил, брошенная в стакан с водой,Капли чернил растекаются по воде,Наконец, капли чернил случайным образом распределяются в воде.,Вы также не можете определить, упала ли капля чернил изначально в центре чашки или ближе к краю. в конюшне При диффузии входным изображением является чашка, а капля краски.
В график нам нужно ввести изображение, и это изображение VAE. Кодер декодирует в латентный 4 в космосе 64 64изlatent image。
Forward Диффузия носит латентный характер. Постоянно добавляйте шум к изображению, чтобы превратить его в совершенно случайный тензор (случайный tensor),Это то, что мы называем шумовой картой. здесь,Продолжайте добавлятьэто ключевое слово,latent Изображение не становится шумовым изображением за один шаг.
Как видно из рисунка, в Форварде После диффузии по шумовому изображению невозможно определить, является ли исходное изображение кошкой или собакой. Но наша цель — на основе входных картинок сгенерировать подобные картинки. Они стали шумовыми картинками. Как их восстановить обратно, то нам нужна Прямая. диффузия。
Обратная диффузия – это процесс, обратный прямой диффузии. Это программирование карты шума в картинку. Прямая диффузия — это когда капля чернил распространяется в воде, а обратная диффузия — это когда мы возвращаемся во времени и видим, где изначально была добавлена капля чернил.
Шумовое изображение преобразуется из случайного шумового изображения в изображение кошки/собаки посредством обратной диффузии.
Прочитав картинку, я вообще не понял, как происходит обратное преобразование обратной диффузии, поэтому давайте поговорим о том, как преобразовать карту шума в исходное изображение?
Сначала в Форварде Диффузия, стабильная diffusionдобавляется постепенноnoiseПреобразование изображения в шумовое изображение。Тогда мы будемНеобходимо знать, сколько шума добавляется к этому изображению на каждом этапе.,Наша карта шума шаг за шагом вычитает добавленный шум.,Наконец-то вы можете получить исходное изображение。
Как показано на рисунке, это пошаговый процесс шумоподавления. Обычно мы устанавливаем шаги в размере 20 ~ 50. После многократного шумоподавления стабильная диффузия создаст нужное нам изображение.
Тогда как узнать, какой шум будет вычитаться на каждом шаге, стабильно? diffusionсерединаизNoise predictorизU-Netмодель нейронной сети,Он специально обучен прогнозировать шум, добавляемый на каждом этапе.
Все модели в стабильной диффузии будут обучать предиктор шума.
Шум добавляется последовательно на каждом шаге, а предиктор шума оценивает общий шум, добавляемый на каждом шаге. После обучения у нас есть предиктор шума, способный оценить шум, добавленный к изображению. Если мы используем чью-то большую модель, нам вообще не нужно думать об обучении. Все это инкапсулировано в большую модель.
Преобразуем изображение в карту шума при прямой диффузии. Вычитаем шум, предсказанный предиктором шума, из исходной карты шума. Повторив несколько шагов, мы получим изображение кошки/собаки (потому что мы находимся в режиме прямой диффузии). в обучении используются изображения кошек/собак).
Но после обратного diffusionпосле,Мы не можем контролировать, будет ли итоговое изображение генерировать собаку или кошку.。所以这时候上篇文章讲изКондиционирование Это решает проблему.
Условие преобразуется из текстовой подсказки. Мы вводим «кот» в текстовую подсказку или «не собака» в отрицательную подсказку, и стабильная диффузия поймет, что изображение, которое вы хотите создать, — это кошка, а не собака.
В изображении Винсента текстовая подсказка преобразуется в условие в качестве единственного условия и поступает в предиктор шума для создания изображения. В изображении есть изображение, преобразованное в скрытое изображение в качестве единственного условия, которое вместе входит в предиктор шума. с кондиционером.
Как видно из рисунка, предиктор шума прогнозирует шум потенциального изображения с помощью текстовой подсказки и карты глубины. Карта глубины получается путем обработки изображения, которое мы вводим через controlNet на графике.
Поскольку изображение будет сгенерировано после обратной диффузии, а обратная диффузия генерирует изображение на основе карты шума, преобразованной из входного изображения, то есть изображение необходимо генерировать на основе карты шума. Итак, на диаграмме Винсента откуда взялась эта шумовая диаграмма?
На фотографии Винсента стабильная diffusionгенерируется напрямуюПолностью случайная карта шума,а потом еще разReverse диффузионная обработка.
в конюшне диффузиясередина,Вперед Diffusion添加из噪声强度是由Denoising strength决定из,Если уровень шумоподавления равен 0,Тогда никакого шума вообще не будет.,если 1,Тогда изображение, введенное графом, станет полностью случайным шумовым изображением в графе Винсента.,В это времяВэньшэнту == Тушенгту,Так что на графиках обычно это 0,75.
Для тестирования мы используем следующую текстовую подсказку:
ultra high res,1boy,motorcycle,handsome,l,chibi,cute,smile,openmouth,flower,outdoors,music,beret,jacket,blush,tree,:3,shirt,shorthair,cherryblossoms,greenheadwear,blurry,brownhair,blushstickers,longsleeves,bangs,headphones,blackhair,pinkflower,(beautifuldetailedface),(beautifuldetailedeyes),<lora:blindbox_v1_mix:1>,
Когда уровень шумоподавления равен 0:
Текстовое приглашение не имеет никакого эффекта и выводится как есть.
Когда уровень шумоподавления равен 0,75:
В этой статье в основном рассказывается о теоретических знаниях о прямой диффузии и ретроградной диффузии в изображениях Винсента и Тушэна, а также о роли предиктора шума. Что такое controlNet, упомянутый в статье, и как превратить входное изображение в карту глубины. Далее Статью можно написать.