Вашите ликови изгледаат различно на секоја слика бидејќи дифузионите модели го третираат секој промпт како нова, изолирана инстанца без меморија за претходните излезни резултати. Конзистентноста ја форсирате преку контролирање на патеката за генерирање, обезбедување визуелни референци и пишување структурни дескриптори кои ги закотвуваат идентитетските карактеристики.
Основната причина: зошто дифузионите модели го третираат секој промпт како нова инстанца
Дифузионите модели немаат трајна состојба. Кога генерирате слика, моделот почнува од случаен шум и следи патека определена од вашиот промпт, случајното семе и внатрешните тежини на моделот. Ако не ги контролирате овие променливи, моделот ќе ја толкува вашата опис во малку различен начин секој пат.
Проблемот не е што моделот го „заборава“ вашиот лик. Проблем е што моделот нема концепт за лик како траен ентитет. Тој знае само како да генерира слика која одговара на текстуален опис. Ако вашиот опис е двосмислен, моделот ги пополнува празнините со своите сопствени статистички пристрасности. Ако опишете „жена со црвена коса“, една генерација може да ја стави косата на лево, друга на десно, а трета може целосно да ја смени текстурата на косата. Моделот не е неконзистентен; тој е верен на нејасна инструкција.
За да го решите ова, мора да преминете од опишување на лик кон специфицирање на лик. Ова бара три полуги: семето, референтната слика и структурниот дескриптор.
Трите полги за конзистентност: семе, референтна слика и структурни дескриптори
Семето е случајниот број кој ја определува почетната шема на шум. Ако го задржите семето фиксирано, моделот ја следи истата патека низ просторот на шум. Сепак, ако го промените промптот дури и малку, патеката се разгранува. Семето само по себе не е доволно.
Референтната слика е визуелно закотвување. Обезбедувате слика на ликот и го барате од моделот да ја користи како водич за идентитет и стил. Ова е помоќно од текстот бидејќи ја заобиколува двосмисленоста на јазикот. Моделот може да ја види специфичната форма на носот, кројот на јакната и бојата на очите.
Структурниот описател е прецизен, геометриски опис на идентитетските карактеристики на ликот. Наместо да кажете „cool“, кажете „асиметрични очила, левото стакло испукано, десното цело“. Ова му дава на моделот стабилна цел кон која да тежи.
Користење на вредности на seed за заклучување на патеката на генерирање
Ако користите алатка која овозможува поставување на вредност на seed, како Midjourney или Stable Diffusion, можете да ја заклучите патеката на генерирање. Започнете со seed што произведува добра основна слика. Потоа, задржете го тој seed фиксиран додека го усовршувате вашиот промпт. Ова осигурува дека промените во вашиот промпт нема да предизвикаат моделот да скита кон сосема различна интерпретација.
Сепак, бидете свесни дека seed вредностите се кршливи. Ако го промените соодносот на страните, верзијата на моделот или структурата на промптот, seed може повеќе да не го произведе истиот резултат. Третирајте го seed како локална контрола, а не глобална. Тој работи во тесен опсег на параметри.
Имплеметирање на работни текови од слика во слика за итеративно усовршување
Најсигурниот метод за одржување конзистентност е итеративно усовршување со користење на работни текови од слика во слика. Започнувате со добра слика на ликот. Потоа, ја користите таа слика како референтна слика за следното генерирање. Го прилагодувате промптот за да ја смените сцената, позата или осветлувањето, додека ги чувате идентитетските карактеристики на ликот недопрени.
За ваква работа се користат алатки како Adobe Firefly, Krea и Runway. Тие овозможуваат да прикачите специфична слика на лик и да ја насочите новата генерација врз основа на тој визуелен влез. Кога ги користите овие алатки, оценувајте го излезот според тоа колку добро ги зачувува специфичните идентитетски карактеристики за кои сте заинтересирани: формата на лицето, стилот на облеката, палетата на бои. Ако излезот отстапува, зголемете ја тежината на референтната слика или затегнете ги вашите структурни описатели.
Пишување структурни описатели што ги закотвуваат идентитетските карактеристики
Вашиот промпт мора да содржи структурни описатели кои е невозможно да се погрешно толкувани. Избегнувајте субјективни придавки, како „beautiful“, „cool“ или „mysterious“. Наместо тоа, користете геометриски и специфични описатели.
- „Коса со кратко шизање и рамна шејка“ е подобро од „кратка коса“.
- „Кожна јакна со висока јака и без хауба“ е подобро од „јакна“.
- „Очи кои се широко поставени и малку свртени надолу“ е подобро од „тажни очи“.
Овие дескриптори ја закотвуваат идентитетот. Тие му даваат на моделот стабилна цел. Ако користите Stable Diffusion или ComfyUI, можете да ги комбинирате овие дескриптори со LoRA тренинг на специфични сетови на податоци за лик. Ова му овозможува на моделот да ги научи специфичните визуелни црти на вашиот лик и конзистентно да ги применува во различни сцени.
Чести грешки: претерано потпирање на имиња наспроти недоволно специфицирање на геометријата
Најчеста грешка е потпирањето на име. Ако го именувате вашиот лик „Алиса“, моделот нема да знае кој е Алиса. Ќе генерира генеричка жена. Името е беззначајно за моделот.
Втората грешка е недоволното специфицирање на геометријата. Ако кажете „жена со сини очи“, моделот ќе ги варира формата на очите, големината на зениците и аголот на погледот. Мора да ја специфицирате геометријата: „бадемовидни очи со благо преклопување на горниот капак“.
Не мешајте го идентитетот со стилот. Идентитетот е стабилното јадро: лицето, косата, типот на тело. Стилот е варијабилниот дел: осветлувањето, позадината, позата. Вашиот промпт мора да ги одвои овие две. Карактеристиките на идентитетот мора да бидат опишани со прецизност. Карактеристиките на стилот можат да останат поотворени.
Работен тек: генерирање на лист за лик пред креирање на сцена
Пред да креирате било која сцена, генерирајте лист за лик. Тоа е сет на слики што го прикажуваат вашиот лик од повеќе агли: фронтално, странично, одзади и крупен план. Користете фиксиран seed и фиксирана референтна слика за да ги генерирате овие. Прецизирајте ги промптите додека листот за лик не стане конзистентен.
Откако ќе добиете конзистентен лист за лик, користете го како референца за сите понатамошни генерации. Кога креирате сцена, ќе ја користите сликата од листот за лик како референтен влез. Ќе го прилагодите промптот за да ја опишете сцената, но ќе ги задржите карактеристиките на идентитетот закотвени со структурните дескриптори.
Овој работен тек е применлив низ алатките. Без разлика дали користите Leonardo.ai за можности за тренинг на модели или DALL-E 3 за детално инженерство на промпти, принципот е ист: прво воспоставете го идентитетот, потоа варирајте ја сцената. Ако го прескокнете листот за лик, ќе потрошите повеќе време за поправка на неконзистентности отколку за креирање содржина.
The AI Creative Workflow Guide
You will be able to design a repeatable, high-quality creative workflow using AI tools for images, video, and design tasks.
Get it — $29