Сайт Ивана Сирфидова


Dezgo – рисующая нейросеть



Содержание





Что важно знать о Dezgo

Для начала предупреждение. Всё, что написано в данном руководстве – преимущественно мои личные выводы, сделанные преимущественно в результате экспериментирования с Dezgo, они не основаны на глубоком понимании нейросетей (коего у меня совершенно нет) или на системном изучении неких справочных описаний (кое-куда я заглядывал, но отрывочно, одним глазом, более, чтобы увидеть, какие можно использовать интересные стили рисования или команды). Это любительское руководство от любителя, которое может ввести вас в какой-то мере в заблуждение в каких-то аспектах – наверняка не все мои выводы верны. Наверняка в чём-то я ошибаюсь, в чём-то не прав. Тем не менее, если вы тоже новичок в деле рисования в нейросетях и ещё не работали с Dezgo, уверен, оно неплохо поможет вам начать и сэкономит сколько-то времени. Как минимум я надеюсь на это. Ну а теперь переходим к собственно теме нашего разговора.

Dezgo – это сайт, содержащий основанные на нейросетях функции рисования и работы с рисунками. В данный момент он может генерировать картинки по текстовому описанию, редактировать картинки по текстовому описанию, увеличивать картинки вдвое, удалять фон у картинок, заменяя его на прозрачный, создавать чёрно-белые маски картинок. Не статичен, в том смысле, что его постепенно развивают и улучшают, что-то в нём меняется время от времени, потому всё здесь сказанное про него надо воспринимать именно в ключе текущего момента, в будущем оно может и измениться, в чём-то утратив соответствие. Dezgo позволяет работать с ним бесплатно, никак не ограничивая в количестве производимых операций и генерируемых картинок. У него есть платный режим, но как будто и бесплатный ни в чём важном не урезан, чуть медленнее работает, не позволяет генерировать более одной картинки за раз, вот фактически и всё. Впрочем, я не пользовался платным режимом и потому не могу ничего утверждать наверняка. Не требует регистрации. Главный недостаток Dezgo – мелковатость картинок у большинства функций. Всего лишь 672x384 или 384x672, и даже менее. У него есть XL функции, позволяющие генерировать изображения в размерах 1016x576 или 576x1016, но от них сложнее добиться качественности графики, особенно при рисовании людей, а перерисовка и редактирование в этих размерах вообще не предусмотрены. У него есть недавно добавленная flux-функция, эта рисует ещё крупнее – 1344x768, и довольно качественно. Только она не поддерживает специальные команды Dezgo, не имеет никаких настроек, что достаточно сильно ограничивает её возможности (в сравнении с другими функциями), хотя в целом они неплохи. Тоже не предусматривает перерисовок в функциях редактирования. Ну и важно отметить, и XL и Flux функции Dezgo работают медленнее, чем функции, рисующие мелко, потому последними пользоваться удобнее.

Далее значимые особенности Dezgo я всё же выделю в список, чтобы они были отчётливее для восприятия:

1) Большинство его функций содержат в себе не одну, а множество нейросетей, из которых вам дано задавать в качестве параметра нужную. Например, в данный момент у него 31 вариант нейросетей в функции генерации по тексту картинок размера 672x384. Одни рисуют реалистично, другие в стиле аниме, третьи ещё как-то, каждая нейросеть по-своему воспринимает задаваемые вами тексты, несколько отлично от других, имеет свои особенности понятливости ваших запросов, их интерпретации, готовности им следовать, и т.д. Ну и конечно создаёт свой собственный уникальный контент – рисует иное и иначе, чем прочие.

2) У него есть 4 функции перерисовки (как бы редактирования) картинок. Из них минимум две – это всё же генераторы картинок, они ничего вам не редактируют, они создают новые картинки, руководствуясь содержимым предоставленной исходной картинки. Они распознают это содержимое и рисуют примерно в таком же виде, а вы можете задать текстом, что желаете изменить, чтобы оно выглядело как-то по-другому. Лучше всего функции Dezgo распознают и воссоздают только то, что исходно нарисовано в нём, то есть лишь исходно сгенерированные в нём изображения они способны воспроизвести с точностью, близкой к 100% (при определённых условиях). Сторонние картинки вам навряд ли удастся перерисовать хоть сколько-то похоже – и физиономии персонажей, и их одежда и фон изменятся вероятнее всего кардинально. Лишь одна функция из указанных 4-х позволяет полноценно редактировать и сторонние картинки, а именно «Inpainting from text».

3) У редактирования изображений путём их полной перерисовки есть пара непреложных достоинств. Во-первых, конечная полученная картинка фактически никак не зависит ни от качества, ни от размеров исходной картинки. Вы можете подсунуть последнюю самого низкого качества, самых миниатюрных размеров – если её содержимое можно распознать, вы получите на выходе рисунок очень похожего содержания в полном размере и полном качестве. Во-вторых, возможности преобразований перерисовываемого графического контента ничем не ограничены. Поменять фон, поменять персонажу позу на абсолютно любую другую, переодеть его во что угодно, заменить ему физиономию, поменять пол, изменить возраст на любой другой в любом диапазоне, хоть с 80 лет на 5 или наоборот. Поменять положение в кадре, дорисовав части тела, которые ранее были за кадром. Вырезать из картинки кусок в фотошопе и перерисовать его в полный размер, либо дорисовать к нему другие детали, скажем, сохранив только лицо, сгенерировать персонажу новое тело, или сохранив кусок тела, сгенерировать всё остальное включая лицо. Делай вообще что хочешь. Правда не всё так просто. Добиться, чтобы при перерисовке картинка изменилась именно так, как вам надо – целое искусство, каковое освоить нелегко.

4) Отдельные функции редактирования Dezgo удивят вас убойно низким качеством картинок или же излишне малыми их размерами. Но эти картинки не обязательно воспринимать как конечный результат, можно как промежуточный, как редактирование более удобным способом с целью последующей перерисовки для получения в полном качестве и размере.

5) Цензура в Dezgo распространяется только на несовершеннолетних персонажей. Взрослых рисуй в чём угодно, занимающихся чем угодно. Впрочем, каждая нейросеть реализует цензуру по-своему и устремлена к разному контенту, не все нейросети Dezgo соответствуют двум указанным мной моментам. Но большинство кажется соответствует. Преимущественно цензура проявляется в увеличении возраста. То есть когда персонаж, которого вы указали нарисовать юным, рисуется взрослым – если сеть решила, что вы пытаетесь отобразить его в неподобающем виде. Иными словами, она всё равно его нарисует, именно в указанном виде, просто он будет старше, чем вы заказывали.

6) Вследствие пункта 5, Dezgo, при всех его замечательных возможностях, не та игрушка, которую посоветуешь, допустим, своему ребёнку. В нём обнажение не считается чем-то предосудительным и потому может произойти даже без каких-либо указаний на то с вашей стороны непредсказуемым образом. Иные его нейросети чуть ли не всякое ваше слово способны интерпретировать как намёк на пожелание минимализма в нарядах. И охотно воплотят его в графике. А порой обходятся и вообще без намёков.

7) Все тексты с указаниями, что и как рисовать, Dezgo принимает только на английском. Благо ныне есть онлайн переводчики.

8) По моим ощущениям (в коих я всё же не уверен на 100%) Dezgo не любит (бесплатную) работу с ним в несколько окон. Если вы откроете в браузере несколько его окон и станете генерировать несколько картинок одновременно, судя по моему опыту, вы получите за одно и то же время меньшее число изображений, а не большее, так как на генерацию каждого будет уходить заметно более времени. Надо открыть одно окно через ВПН, а другое без ВПН, вот тогда вы сможете рисовать по две картинки без замедления.

9) Dezgo практикует очень оригинальный подход к сохранению информации. Он записывает непосредственно в картинку всё, что вы задали для её рисования. Включая текст, по которому она была сгенерирована, включая текст с перечнем запрещённых вами к отрисовке объектов (negative prompt). С одной стороны это чрезвычайно удобно, вы всегда можете посмотреть у удачной картинки, как она была получена, дабы попытаться сгенерировать что-то подобное. В ней будут все необходимые сведенья. С другой, чтобы пользоваться столь знаменательной особенностью, надо как минимум о ней знать. А каким образом человек может получить это знание? Я не очень понимаю. Зацените, как его получил я. Догадался. Я никогда не слышал, чтобы текстовую информацию записывали внутрь графических файлов, даже не предполагал, что такое возможно. Но вот подумал, дай-ка проверю, не сохраняет ли Dezgo что-нибудь лишнее в картинках. Был уверен, что вряд ли, но так, на всякий случай, убедиться-то недолго. И вот те раз. Оказалось, у файлов jpg есть параметр «комментарий». В нём и сохраняются все данные. Но обратить на них внимание, если ты специально не озаботился этим, невозможно. Их невозможно заметить случайно (в принципе я не знаю, может быть в более новых версиях виндоус всё иначе, может там комментарии в подсказках подсвечиваются). Ну а у файлов png и вовсе такая структура, куда записывай всё что угодно, это не комментарий, оно вообще нигде не отображается. В результате получаем, что большинству людей пользы от данной особенности Dezgo никакой, а вот вред пожалуй есть – если вы разместите свою картинку в интернете, любой, кому хватит ума открыть её блокнотом, сможет в точности узнать, что вы писали для её получения. Определённо не всем авторам картинок понравится такой расклад. Ну, теперь вы знаете. Подробней о формате данных, сохраняемых в картинках, и о том, как от них при желании избавиться, я расскажу в предпоследней главе. Также могу предложить вам в качестве инструмента их просмотра и отчасти удаления из файлов свою программу «Dezgo Params Viewer». Написал специально для данного руководства. О ней чуть подробней я тоже расскажу в предпоследней главе.

Ну и ещё кое-что. В Dezgo очень много нейросетей. Суммарно более 40 на данный момент. И они совсем не одинаковы. Они не только рисуют по-разному, но и работают по-разному, и даже понимают вас каждая не так, как остальные. Как минимум в некоторых аспектах. Например, одна на слова «kitten mood» (в переводе что-то вроде «настроение игривого котёнка») иногда рисовала мне персонажа именно в настроении котёнка, это было чётко опознаваемо – поза, выражение лица, и никогда не рисовала котят, а другая рисовала только котят, и никакого тебе влияния на настроение. Одна на слова «splashes colors» создавала фон из вызывного разноцветия брызг и иных водных образований, а другая разноцветно размулёвывала только одежду персонажа, фон же оставляла банальным обыденным, и эффектов с водой ноль. Некоторые нейросети не распознают общепринятых сокращений, каковые большинство других сетей распознают, некоторые не реагируют на отдельные параметры. Некоторые склонны игнорировать сложные образы или какие-то противоречивые, некоторые наоборот, каждое твоё слово пытаются понять и задействовать при формировании картинки. Ну и так далее. Кстати, отдельные параметры могут вызывать смену механизмов действия нейросети. Вставляете в свой текст какое-то слово, и реакция на ваш текст вдруг меняется в той или иной степени. Ну то есть даже одна сеть может быть в действительности словно смесью сетей, из которых в разные моменты подключается нужная. Я это к чему говорю? Чтобы протестировать 40 разных сетей, нужен уже какой-то исследовательский коллектив, одному человеку такое наверное не под силу, да и вроде незачем. Я в Dezgo экспериментировал преимущественно с сетью «RealDream12», ну и также в какой-то мере с «Envy Starlight XL 01 Lightning» и «JuggernautXL 9 Lightning» (первая рисует картинки обычного размера, прочие две размеров XL), а большинством остальных пользовался прям по чуть-чуть, лишь чтобы посмотреть, что они вообще могут. Почему именно эти сети я выбрал? RealDream тебе предлагают по умолчанию, то есть она уже выбрана, когда ты заходишь на Dezgo, ну а так как приходя на него, ты ничего не знаешь, что и зачем надо выбирать, всё равно начнёшь работу с ней, что со мной и произошло. В принципе она неплоха, качество мне нравится, единственно, тяготеет к рисованию преимущественно в одном стиле – реализме. Что касается Envy и Juggernaut9, я долгое время как-то и не знал, что тут есть рисование в размерах XL, не обращал внимания, а когда увидел, выбор нейросетей там был невелик, что первое чуть более приглянулось, тем и стал пользоваться. В общем, всё, о чём здесь далее пойдёт речь, прежде всего имеет отношение к «RealDream12», несколько менее к «Envy Starlight XL 01 Lightning» или «JuggernautXL 9 Lightning», и не факт, что будет точно так же работать и в других сетях, а иногда не будет работать в каких-то отдельных сетях вовсе, в отдельных случаях. Имейте это в виду.

Сайт Dezgo: https://dezgo.com
Сайт, куда Dezgo направляет за справкой: https://www.reddit.com/r/stablediffusion/wiki/tutorials
Блог Dezgo: https://blog.dezgo.com



Особенности рисования людей

Есть у меня ощущение, что людей Dezgo рисует иначе, чем всё прочее. На основании того, что я наблюдаю, я бы предположил, для него рисунок состоит из элементов двух типов - фона и объектов, и сии типы зачастую рисуются совершенно по-разному. При этом из всех видов объектов (человек, животное, автомобиль и т.п.) для рисования людей в нём предусмотрено несопоставимо больше различных механизмов. Людей он способен рисовать наиболее качественно, часто может воссоздавать и моделировать в 3d, у него имеются текстуры тел, одежд и так далее. Человек так или иначе ключевой объект внимания нейросетей. Потому их возможности при рисовании его и чего-либо иного несопоставимы. Правда, как ни странно, в случае Dezgo это не всегда в плюс. Например, у его XL функций качество графики картинок с людьми очень часто ниже приемлемого (на мой вкус), а у всех прочих картинок нет. Почему, бог его знает, я могу только гадать. Моё главное предположение – дело в бесплатности. На формирование фона, думаю, уходит гораздо меньше ресурсов, затрачивается гораздо меньше интеллектуальных операций, он намного экономичнее. Вследствие чего на него выделяется всегда одно и то же количество ресурсов. Его качество в целом стабильно, почти ни от чего не зависит, не изменчиво. А про объекты того же не скажешь. Особенно про людей. Наблюдается ли та же ситуация в платном режиме – интересный вопрос, на который у меня нет ответа. В общем, я бы выделил два проблемных момента, каковые следует учитывать при работе с Dezgo и возможно с другими нейросетями:

1) Зависимость качества от крупности плана. У иных сетей она носит критический характер. Крупный план человека – это в любой сети Dezgo красиво. Лицо во весь экран – великолепно. От головы до верха груди – замечательно. По пояс – очень хорошо. А далее уже начинаются варианты. Чем мельче человек в кадре, тем хуже он выглядит, становится меньше чёткость, проседает качество графики, при совсем мелких планах расплывается и деформируется лицо. В разных сетях это проявляется при разной крупности, в каких-то уже менее чем по пояс, в каких-то, когда человек входит в кадр более чем по бёдра, или по колено, порой и в полный рост покажут нормально, и более чем в полный, с зазором свободного пространства, допустим, от головы до верха кадра. Так или иначе, эта проблема есть у всех сетей Dezgo, и в целом весьма заметна. Наиболее она проявляется при горизонтальной (ландшафтной) ориентации картинок, то есть когда их ширина двукратно более высоты. При такой ориентации все объекты выходят значительно меньше размерами (исключая лежачие позы). По пояс в вертикальной ориентации и в горизонтальной – совсем не одно и то же, в первой человек будет намного крупнее. И значит в одной и той же сети проблемы мелкого плана начнут проявляться в ландшафтной ориентации гораздо ранее (на гораздо более крупных планах). Я в экспериментах с Dezgo фактически отказался от рисования людей в ландшафтной ориентации, при том что люблю именно её. Наиболее подвержены потере качества при мелких планах картинки, рисуемые в полном реализме (когда человек выглядит словно настоящий на фото), наименее – нарисованные в мультяшных 2d стилях. Если же говорить о сетях XL функций Dezgo, есть у них проблема совсем уж странного свойства. У большинства из них при недостаточной крупности плана резко ухудшается общее качество графики. Начинается размытие, сильное зашумление (шумы – это сторонняя информация, в графике выглядит словно грязь на однотонных областях вроде кожи, и так же как зернистость и нечёткость линий). Вид просто мерзкий. Подчеркну, всё это характерно для рисования преимущественно именно людей. Всё, что может быть нарисовано просто как фон (то есть почти всё кроме людей) не имеет выраженных проблем зависимости от крупности плана. По моим ощущениям не имеет. В том числе в ландшафтной ориентации. Безусловно, что угодно крупно рисуется красивее. Но критического проседания качества при мелкой отрисовке элементов фона как правило нет. В общем, при рисовании людей в Dezgo всегда надо следить за крупностью плана, ловить приемлемую и стремиться делать её по возможности больше (если вы хотите чтобы люди у вас выглядели красиво).

2) Разнообразие стилистик фона значительно беднее. Имеется в виду, по сравнению с людьми. Последних многие сети позволяют рисовать по-разному, а некоторые в бесконечности разных стилей, умеют тонко смешивать, напиши им «фотореалистичное аниме», или «мультяшное 3d искусство», или «2d цифровой аниме мульт рисунок», они тебе нарисуют. А фон нет, те же самые сети не факт что соизволят и просто в реализме или в аниме без всяких смесей. В качестве примера – рисовал я в одной из нейросетей Dezgo персонажа, как раз экспериментируя со стилями. Наверное десяток разных стилей смог применить. А потом попробовал проделать тот же трюк с динозавром. И бесполезно, что ни указывай в качестве стиля, он никак не менялся. Я тогда указал нарисовать человека и динозавра в одной картинке, думаю, ну сейчас-то ты мне сменишь стиль. Сменила, но только для человека, он стал, как указано, трёхмерным аниме, а всё остальное осталось в стилистике близкого к реализму рисунка. Это смотрелось странно, мягко говоря. Вот с фоном примерно так и обстоят дела. По-моему большинство сетей сами выбирают ему стиль, и выбор у них не очень широк. При рисовании аниме персонажей на природе стиль природы как правило реализм, при рисовании фантазийных картинок на сказочные темы чаще всего фон выглядит как рисунок с обложки книг сказок, даже у сетей, которые рисуют в реализме. Но конечно не исключение и когда стиль персонажа и фона совпадают, просто не всегда и не для всех стилей это возможно.

Трудности с фоном наверное не слишком критичны, особенно по сравнению с качеством графики, а вот оно – весьма неприятный момент, который не проигнорируешь. Отчасти он есть и в других нейросетях, не только в Dezgo, в нейросети Сбера «Кандинский2.1» я тоже сталкивался с серьёзным ухудшением отображения людей при недостаточно крупных планах. Но там всё же нет словно намеренного понижения общего качества графики до неприемлемо плохого, как в здешних XL нейросетях. Лично я, когда поэкспериментировал впервые с XL-функциями Dezgo, понял, что мне не нравится результат, как бы был разочарован, ну и продолжил работать с обычными сетями, которые меня вполне устраивали. Если вы новичок в деле рисования в нейросетях, могу посоветовать то же самое и вам, во всяком случае при генерации картинок людей в стилях реализма. Например, сеть «RealDream 12» в портретной ориентации обеспечивает прекрасное (по моим ощущениям) качество при крупности плана как минимум по бёдра, иногда и по колено и более, бывает что и в полный рост сносно нарисует. В ней не надо заморачиваться, подбирать какие-то усиливающие качество параметры. Ну а если вам не лениво и позаморачиваться, то отдельные XL-сети тоже могут в определённых ситуациях породить вполне качественный контент с людьми – только чтобы заморчиваться, надо знать, как и чем усиливать качество в Dezgo, а когда знаний нет - «RealDream 12» прекрасная альтернатива. Ну или новая функция Dezgo – flux, эта не особо реагирует на попытки усиления качества, в ней оно сразу усилено, вам уже вроде и делать ничего не надо, только составлять тексты. Единственная проблема – при работе с flux функцией вы не научитесь работать с Dezgo, потому что все его прочие функции работают иначе, чем она. По поводу рисования людей добавлю, главный деструктивный элемент при маленькой крупности плана – лицо (ну и морда у животных и монстров). Физиономия расплывается, искажается, деформируется, становится уродливой. Если же человек стоит спиной или лицо его скрыто (рыцарь в шлеме, к примеру), то соответственно требования к крупности плана уменьшаются или вовсе сходят на нет. Правда тогда человек может быть нарисован как часть фона и в стилистике фона. Ну и вообще при излишне мелких планах он может быть так нарисован.

Из прочего о людях. Весьма занятный момент, на котором я бы хотел заострить внимание – эмоции. В иных нейросетях Dezgo персонажи наделяются ими автоматически в зависимости от ситуации. Это опять же мой личный вывод, а значит, я не могу утверждать наверняка, что всё так и есть. Но тем не менее. Почему вопрос эмоций важен, ну наделяются и наделяются, что с того? Хитрость в том, что эмоции персонажей влияют не только на выражения их лиц, но и их управляемость. Особенно значимо при перерисовках. Я буду сейчас говорить в какой-то мере забавные вещи. Представьте, у вас есть картинка, на ней персонаж, и вы хотите перерисовать её, указывая что-то поменять в его действиях или позе. Но сколько бы вы ни перерисовывали, что-то идёт не так, он вас словно откровенно не слушается, не делает того, что вы указываете. Тут есть ещё такая штука, как настройка процента сохранения контента, чем она выше установлена в функции перерисовки, тем менее значимые изменения удастся внести в рисунок. Есть и противоречивость инструкций, тоже способная стать источником затруднений. Скажем, если из внешности персонажа вы описали только красоту глаз, маловероятно, что вам его покажут не крупным планом, сколько бы вы ни писали нечто вроде «стоит на отдалении». Нейросеть понимает, что красоту глаз нельзя оценить издалека. Разных подводных камней реально много. Так или иначе, эмоции тоже один из них. Если вы задаёте рисовать персонажа в таких условиях или обстоятельствах, которые должны ему не нравиться, или пугать, или смущать… некоторые нейросети это обрабатывают, просчитывают, как он должен реагировать на ситуацию. И он реагирует, игнорируя все ваши инструкции, противоречащие его естественным реакциям. Сколько бы вы ни делали попыток перерисовки, сколько бы ни правили текст в деталях, вы не добьётесь ровным счётом ничего. Будет происходить всё что угодно кроме того, что вы заказывали. Я сталкивался с чем-то подобным. Причём это может происходить от таких невинных вещей, на какие никогда не подумаешь, и не догадаешься. Например вы задаёте в описании персонажа «прячется в тени». Где тут что-то проблемное? Но оно есть, нейросеть начинает додумывать – прячется, значит от кого-то. Видимо от кого-то опасного. И наступает реакция испуга. Суть в том, что у проблемы эмоций существует очень простое решение. Нужно всего лишь указать, что персонажу нравится происходящее. Нравится быть в аду, нравится наблюдать за зомби или демонами. Или что он «весело прячется в тени». Именно такой подход устранял у меня все проблемы эмоций сразу и до конца. Это моё изобретение, каковое вероятно может показаться странным – нейросеть это инструмент, мы указываем ему, что хотим от него, а он должен исполнять. Задавать персонажу настроение только чтобы его нарисовали согласно нашим пожеланиям? Словно немного противоречит здравомыслию. Я всё же подозреваю, современный искусственный интеллект не такой уж и интеллект. Он не понимает, что вы от него хотите, он обрабатывает ваши текстовые запросы по определённым алгоритмам. Эти алгоритмы видимо ещё не настолько совершенны, чтобы избегать странностей и казусов.

Иногда нейросети Dezgo могут неправильно определять пол. Например, я такое достаточно часто наблюдал при использовании слова «model». Пишешь его, чтобы женский персонаж был посимпатичнее, а тебе рисуют нечто явно промежуточное между мужчиной и женщиной. Мужская причёска, порой и мужская физиономия на женском теле. И указания на женский характер одежды (платье, чулки или т.п.) как-то не очень помогают. Почему-то нейросети откровенно тупят, изредка, когда речь идёт о поле. С мужскими персонажами тоже могут быть те же проблемы. Знаете Наруто? Известный персонаж аниме. Мне его как-то нарисовало с явно женскими формами под одеждой. Решается указанием пола. Female – женский («female model»), male – мужской. Можно использовать и другие слова, «девушка» например («girl model»). Главное тут вообще обращать внимание, понимать, что такое бывает. Видите, что у женского персонажа вроде бы и женские формы тела, но уж слишком мужская причёска, и физиономия не блещет женственностью, значит, некие проблемы имеют место, и потому надо бы указать пол, дабы вернуть внешности гармоничные черты. Кстати, о слове «girl». Это весьма широкое понятие в английском языке, означающее лиц лет от 5 и до 25. Нейросети обычно пытаются определить по контексту возраст персонажа, если вы его не указали специально. Пишете что-то нейтральное, чаще всего будет рисоваться взрослым (впрочем это зависит от конкретной сети), пишете с оттенком чего-то детского (упоминаете сказочные детали, допустим), вероятно будет ребёнком. Возраст проще всего задавать с помощью сокращения «yo» - «girl 20yo», «fairy 5yo», абсолютное большинство нейросетей понимают его. Но не все. В Dezgo есть минимум одна нейросеть, не принимающая указание возраста в таком виде, ей надо писать «20 y. o.» или «20 old».

Некоторых существ можно превращать в антропоидов. Придавать им человекоподобие. Для этого наверное есть разные варианты, но самый простой, пожалуй, слово «anthro». Пример: «female anthro tiger» - по идее нарисует нам даму с человеческим телом (возможно в тигриных полосках) и тигриной головой. Это не всегда срабатывает с первого раза, в том смысле, что нейросети своевольны, порой не хотят понимать вас в нужном ключе, вполне вероятно вам понадобится сколько-то попыток, чтобы получить картинку человека-тигра. Но так или иначе вы её получите.

По умолчанию большинство сетей Dezgo по-моему рисуют персонажей корейской национальности. Как минимум азиатской. То есть когда вы пишете без подробностей, без деталей, коротенькие тексты вроде «cute girl», вероятнее всего вам сгенерируют выраженную азиатку. Любые детали – это образы, образы могут поменять национальность, чем их больше, тем видимо больше вариантов, кем персонаж может быть. Некоторые сети хорошо знают национальности, просто пиши им rus, jpn, eng, thai или прям указывай страну: «France», «Indonesia». Есть реально знающие физиономические национальные черты (у них китаец и японец не одно и тоже именно в плане физиономии), знают национальные наряды, некоторые плохо в этом смыслят. Я почти не экспериментировал насчёт национальностей в Dezgo, а вот в нейросети Кандинский 2.1 как-то у меня получился текст, фактически приводящий к случайной генерации разнообразных экзотических национальностей. Это был прям экскурс по ним, я большинство и не знаю, с национальными украшениями, нарядами, физиономически очень непохожие (но почти все весьма красивые – Кандинский знает толк в гармонии лиц, если речь идёт о достаточно крупных планах). Далеко не факт, что они все реальные, а не выдуманные, однако если подсовывать Кандинскому прямые указания на национальность, он рисует их тоже, видно же, что как минимум примерно всё соответствует. В общем, целый атлас национальностей всего мира, сборник, позволяющий вам ознакомиться с ними при желании. Вот чем в том числе могут служить некоторые нейросети.



Функции Dezgo (краткое описание)

В настоящий момент я наблюдаю у него наличие 9-ти функций. Приведу их тут именно в том порядке, в каком они расположены на сайте.

1) Text-to-image XL – генерация по тексту картинок размеров XL или Flux. В действительности это три функции, потому что в правом верхнем углу окна данной функции имеется опция выбора между «Flux», «XL Lightning» и «XL». И это разные функции, достаточно сказать, что у «XL Lightning» и «XL» есть у каждой свой набор нейросетей, а у Flux на данный момент фактически вообще нет никаких настроек. Если я правильно понял, XLL отличается от XL более быстрой работой и на 60% большей «дешевизной», под которой подразумевается что, если Dezgo бесплатный? Вероятно всё же деньги, так как в платном режиме плата за генерацию картинок взимается, и в размерах XL она выше, чем не в XL, вроде бы 133 картинки за доллар. Максимальный размер картинок в XL и XLL одинаков - 1016x576, 576x1016 и 768x768. Размеры картинок Flux на сегодня самые большие в Dezgo – 1344x768, 768x1344 и 1024x1024. Функция Flux была добавлена совсем недавно, выражаясь точнее, буквально на днях, я с ней фактически ещё не знаком, потому мало что могу сказать про неё, по-моему она работает нестандартно в сравнении с прочими функциями Dezgo, и соответственно потребует отдельного освоения рисования в ней, зато у неё минимум настроек, считай нет совсем, осваивать придётся не так много. Что касается функций XL и XLL, их сети на мой взгляд относительно недружественны к новичкам, они не дают вам лучшего качества, если для этого не приложить усилий, особенно при рисовании людей, я долгое время думал, людей в них вообще нет смысла рисовать (исключая крупные планы), настолько всё у меня получалось плохо, на данный момент отчасти поменял мнение – но лишь о некоторых из них, не о всех. В любом случае, как минимум при рисовании не людей они и для новичка имеют свои плюсы, главный из которых конечно же размеры картинок. Размер всегда имеет значение так или иначе.

2) Text-to-image – генерация картинок по тексту. Максимально возможные размеры картинок при генерации: 384x672 или 672x384, или в варианте квадрата 512x512. Мелковато конечно, но терпимо. Кроме того, есть функция «upscale», позволяющая увеличить картинки в два раза, есть другие нейросети в интернете, тоже увеличивающие картинки. На мой вкус горизонтально ориентированные изображения выходят тут слишком уж мелкими, и никаким увеличением это не исправить, качество получается низковатым, а вот в вертикальной ориентации всё выглядит вполне неплохо. На данный момент выбор нейросетей в text-to-image наиболее широк – 31 (против 12 суммарно в XL и XLL). Вдобавок у Dezgo есть несколько функций перерисовок, ориентированных на работу с ней – они имеют тот же набор нейросетей, иными словами, могут рисовать то же самое, что позволяет и перерисовывать с наименьшими отклонениями от оригинала. Почему они ориентированы именно на text-to-image, почему именно у неё так много сетей? Потому что ещё недавно именно она была основной для Dezgo. Flux-функция появилась только что, XLL в начале года ещё не было, Dezgo быстро развивается. Знаменательными достоинствами text-to-image являются, во-первых, собственно ориентированность на неё функций перерисовок, что расширяет возможности по редактированию картинок, во-вторых, опять же большое количество нейросетей, и в-третьих, конкретно для новичков, хорошее качество без затей. По умолчанию в ней выбрана для вас сеть RealDream12, которая отлично рисует, не требуя никаких выкрутасов, чтобы добиться качественности графики или эффектности контента, комфортная сеть во всех отношениях, поддерживает разные спецэффекты, чего нельзя сказать про многие другие сети, по-моему идеально реалистично рисует людей, способна рисовать в самых разнообразных стилях (хотя заставить её отклоняться от реализма не всегда легко).

3) Controlled Text-to-image – перерисовка картинки по тексту. Во многом повторяет предыдущую функцию – создаёт картинки тех же размеров (384x672 или 672x384, или 512x512), имеет тот же список из 31-ой нейросети. По сути это тоже генератор картинок, просто использующий картинку-образец как способ задать часть параметров графическим путем, а не текстом. Ну например, чтобы персонажи рисовались приблизительно в такой же позе, приблизительно на таком же удалении, приблизительно в такой же одежде, и т.д. Он не копирует в новую картинку ни пикселя информации из старой, он распознаёт, что там есть, и воспроизводит с той или иной степенью точности. Воспроизвести с высокой точностью, близкой к 100%, с абсолютной похожестью, чтобы это выглядело чуть ли не как полная (или исправленная заданным вами образом) копия, можно только если исходная картинка была сгенерирована ровно той же нейросетью, в какой вы её здесь правите, это надо понимать. Нейросети рисуют по-разному, и другая просто не сумеет выдать вам ту же графику, ту же стилистику, те же физиономии персонажей. Что-то близкое есть шансы, но прям один в один никак. Степенью схожести можно управлять с помощью настроек, т.е. вам не обязательно генерировать схожие картинки, вам доступно переносить в новое изображение определённые детали со старого. Или не переносить фактически ничего. Снова повторюсь, это генератор картинок, не редактор, но его особенность такова, что он в определённой мере способен исполнять функции редактора, имитировать их. Очень важный момент: так как Controlled Text-to-image создаёт картинки с нуля, она абсолютно не зависит ни от качества исходной картинки, ни от её размеров. Главное, чтобы объекты на исходной картинке можно было распознать (если они не распознаны, они будут сгенерированы случайным образом, то есть всё равно будут, просто другие). Вы можете взять махонькую картинку, фигового качества, можете вырезать из картинки с множеством персонажей нужного и подсунуть для перерисовки только его, и даже если он с ноготок размером, он нарисуется в полном качестве в полный размер. Но опять же это всё имеет отношение прежде всего к исходным картинкам, сгенерированным в Dezgo, так как объекты на них гораздо лучше распознаются его функциями.

4) Image-to-image – тоже перерисовка картинки по тексту. Условно нечто вроде упрощённой версии предыдущей функции, так как имеет минимум настроек. Однако она работает совершено по другому принципу. Я сейчас буду излагать свои домыслы, я нигде это не прочёл, я пришёл к такому выводу, глядя на полученные здесь результаты. По моему мнению, функция Image-to-image тоже генерирует изображение на основе вашего текста и заданной вами исходной картинки, чем отчасти подобна «controlled text-to-image», но вам оное даже не показывает, вы его не увидите. Это невидимое изображение и ваша исходная картинка смешиваются по некоему сложному алгоритму с заданным вами в настройках функции процентным соотношением, и вот эта смесь и выдаётся вам в качестве результата. Таким образом данная функция позволяет более плавно менять исходную картинку. Чем меньше вы задали в настройках процент допустимых изменений, тем менее картинка изменится, но и тем менее её в принципе можно будет изменить хоть в каких-то деталях. Вот и ловите золотую середину. На 40% изменения будут достаточно незначительными, на 60% уже очень большими, а если установить уровень допустимых изменений на 100%, исходная картинка перестаёт влиять на результат, и функция Image-to-image превращается в просто генератор изображений по тексту. Принимает картинки для перерисовки только в размерах не более 512x512, если они больше, они будут пропорционально уменьшены при загрузке на сайт. Создаёт изображения тоже не более 512x512 – соответственно, если они не квадратные, а вертикальные или горизонтальные в характерных портретной или ландшафтной пропорциях Dezgo, на выходе это будет 288x512 или 512x288, что мелковато. Потому, если мы хотим далее получить полные размеры (384x672 или 672x384), придётся созданную здесь картинку перерисовывать снова уже с помощью Controlled Text-to-image. Помимо прочего, Image-to-image позволяет осуществлять плавную конвертацию изображений, сгенерированных в одних нейросетях Dezgo, в стиль других. Вот тут она реально хороша.

5) Upscale – увеличение размеров картинок в два раза. Размеры загружаемой на сайт картинки не должны превышать 768x768, если они превышают, картинка при загрузке будет автоматически пропорционально уменьшена в размерах, чтобы не превышать 768 пикселей ни по длине ни по ширине.

6) Inpainting from text – перерисовка конкретных деталей. Указываете (текстом), какую деталь картинки хотите изменить, указываете (текстом), как должен выглядеть конечный результат (без особых подробностей, если те не относятся к изменяемой детали). И собственно всё. Деталь будет перерисована. А весь остальной рисунок нет (кроме тех его элементов, что соприкасаются с указанной деталью, и потому без их перерисовки никак не обойтись). В общем, это такой, можно сказать, хирургический инструмент внесения в изображения точечных очаговых правок. Что порой довольно удобно. Позволяет редактировать и сторонние картинки, а не только созданные в Dezgo. Если конечно вас устроит размер. Картинки для перерисовки принимаются в функцию не более чем 512x512, если они больше, произойдёт автоматическое уменьшение размеров при загрузке. На выходе можно получить картинку максимум тех же размеров – 512x512. В целом качество контента исправленной части рисунка здесь наверное выходит несколько хуже, чем у функций редактирования, которые перерисовывают всю картинку с нуля (пункты 3 и 4), он смотрится менее гармонично. Ну и опять же размеры мельче (чем у пункта 3), если мы рисуем не в квадратной ориентации. Посему далее есть смысл отправиться в функцию Controlled Text-to-image и перерисовать полученную здесь картинку уже там. Зачем тогда её править здесь, почему не сразу там? Там крупные изменения сложно внести в отдельную часть, надо задавать низкий процент сохранения деталей, а когда нужные изменения уже произведены, они будут распознаваться и гораздо чаще рисоваться именно такими и на высоких процентах в Controlled Text-to-image.

7) Edit image from text (это название в меню сайта, а в окне функции она обозначена как «Edit image with instructions»)– редактирование картинки по заданным текстом инструкциям. Позволяет вносить более существенные изменения, чем редактор из предыдущего пункта (Inpainting from text), не по одной детали править, а некие преобразования делать, так же не меняя то, что не указано менять. Картинки для перерисовки принимаются в функцию не более чем 512x512, если они больше, произойдёт автоматическое пропорциональное уменьшение размеров при загрузке. На выходе можно получить картинку максимум таких же размеров – 512x512. Качество картинок убойно низкое, просто никакущее, потому их обязательно придётся перерисовывать потом в Controlled Text-to-image.

8) Remove background – удаление фона. Возвращает картинку с персонажами на прозрачном фоне или чёрно-белую маску (это когда фон закрашивается чёрным, а фигура персонажа белым). В качестве персонажей могут выступать не только люди, например, я нарисовал в Dezgo собаку, и с её картинки фон тоже удалился без проблем. И у сторонних картинок (созданных не в Dezgo) фон удаляется, и маски для них создаются. Максимальные размеры принимаемых картинок – 768x768, при больших размерах они автоматически уменьшаются при загрузке на сайт. При переключении опции между прозрачным фоном и чёрно-белой маской, если я до этого уже запускал данную функцию для какой-нибудь картинки, у меня почему-то происходил сбой функции и она переставала возвращать хоть какой-то результат – думает, думает, и потом ничего. Лечится перезагрузкой страницы.

9) Text-to-video – создание видео по тексту. Бета версия. Не юзал, потому что тут всё не так просто. Во-первых, надо иметь Discord, коим я никогда не пользовался. Во-вторых, даже если его имеешь… Насколько я понял, предполагается, что люди будут отправлять свои тексты, будет осуществляться голосование (лайками) среди всех пользователей, и каждые пять минут по самому популярному тексту будет генерироваться видео.



Настройки функций

У многих функций Dezgo есть настройки одинакового типа. Скажем, «prompt» присутствует в 6-ти функциях из 9-ти. Чтобы не описывать одни и те же настройки в разных функциях, я выписал большинство из них сюда.

Prompt – окно, в котором мы задаём текст с описанием, что должно быть нарисовано на картинке. Писать надо на английском. Чуть ниже о данной опции будет рассказано детальнее в отдельной главе.

Model – выпадающий список нейросетей, из которых можно выбрать желаемую, рисующую в желаемом стиле. Выбор есть не во всех, но в большинстве функций.

Resolution – здесь можно задать, в каких размерах рисовать картинку – в горизонтальных, вертикальных, в форме квадрата, есть несколько промежуточных значений между тремя перечисленными вариантами. При рисовании людей лучшее качество всегда получается, если выбрать вертикальную ориентацию (перевести ползунок настройки до конца влево), ну и рисовать их крупным планом. При перерисовках картинок размер исходной картинки не имеет существенного значения, но вот ориентация имеет, надо перерисовывать в строго тех же пропорциях, иначе полученная картинка исказится – её содержимое растянется или сожмётся, т.е. некорректно изменится в пропорциях.

Negative prompt – (для краткости будем называть это далее «негативами»), тут вы можете задать текстом, что не должно быть нарисовано на вашей картинке. В некоторых функциях по умолчанию много чего уже прописано в этом окне, например «лишние конечности», «плохо прорисованное лицо» и т.д. В некоторых ничего не написано. Я так полагаю, здесь нельзя задать всё что ни захочешь, можно только определённые вещи. Какие конкретно – вопрос, требующий своего изучения.

Guidance – ползунок, задающий послушность ИИ, т.е. насколько точно он будет исполнять ваши указания. При рисовании функциями обычных размеров и XL крайние значения для данного параметра ни влево ни вправо не желательны, иначе качество создаваемых картинок практически гарантированно радикально испортится. Рекомендуется держать его в диапазоне 6-10. Но наверное лучше вообще не трогать без особой нужды. А вот у функции рисования XLL он по умолчанию стоит в крайнем правом положении, и вроде бы ничего не портит. Шкала там тоже другая – дробная от 1.0 до 2.0. Причём у неё только 10 возможных значений, между которыми можно переключаться, тогда как у обычных и XL функций их 200.

Sampler – определяет метод выборки, используемый для создания изображения. Это как бы дословный перевод краткого описания данной настройки на сайте Dezgo. От себя добавлю, кажется, тут вам предлагают выбор «рисовальщика» - того, что ответственно за рисование картинки, под чем подразумевается во-первых, качество её графики, и во-вторых, собственно её контент – то, что конкретно на ней будет нарисовано, отчасти его задаёт нейросеть, а отчасти сэмплер. Всего их тут 6. Все они так или иначе взаимосвязаны, насколько и каким образом, зависит от конкретной сети и в некоторых сетях от конкретной картинки (даже не от текста), при этом всегда есть как минимум два сэмплера (исключений я не видел), рисующие на 99-100 процентов одно и то же, ту же самую картинку. Бывает что и больше рисуют одну и ту же, или словно разбиваются на группы – одна группа сэмплеров рисует один в один одно, вторая очень похожее друг на друга иное, третья что-то ещё иное. Бывает, почти все рисуют достаточно по-разному (кроме той пары, что совпадает полностью). Я бы сказал, новичку в работе с нейросетями может быть лучше не заморачиваться насчёт сэмплеров, просто не трогать эту настройку и всё. Я очень долго так и делал. У большинства сетей по умолчанию уже выбран оптимальный сэмплер, дающий наилучшее или не хуже чем у других качество изображений. Хотя есть и отдельные исключения.

Image – окошко, куда надо перетащить или загрузить картинку. Есть только у функций, предполагающих перерисовку или преобразование картинок.

LoRA – новичку это опция по-моему без надобности, есть с чем разбираться и без неё. Просто приведу вам перевод её описания с сайта Dezgo: LoRA это расширение, которое изменяет поведение ИИ, обучая его новой концепции, стилю, персонажу или объекту. Вы можете импортировать LoRA из CivitAI в Dezgo. Просто скопируйте хэш SHA256 LoRA, который вы хотите импортировать, и вставьте его ниже. Он будет загружен автоматически на лету. Убедитесь, что он имеет тип «LORA», базовую модель: SD1.5 и размер < 150 МБ.

Format – свежий параметр, появившийся в Dezgo относительно недавно. Позволяет указать формат сохраняемых файлов картинок. Можно выбирать между Png, Jpg и WebP. По умолчанию выбрано Png. Картинка генерируется в выбранном формате, то есть его ей надо задавать до генерации, а не после.

Seed – ключевой элемент определения случайных деталей картинки. Являет собой целое десятизначное число, к примеру «4172394280». Если не задан, всякий раз выбирается случайным образом. Потому при генерациях изображений они у вас всякий раз разные. Если вы зададите seed и не будете менять никаких иных настроек, при одном и том же тексте в prompt у вас будет генерироваться всегда одна и та же картинка – в некоторых сетях строго одна и та же, без единого отклонения, в некоторых отдельные элементы чуть-чуть могут и меняться. Значение seed только что нарисованной картинки отображается непосредственно над ней.

Transparent background – есть лишь у XL функций. Если включить, будет делать фон генерируемых изображений прозрачным. Чтобы он мог быть прозрачным, нужно в настройке «Format» задать «Png», и точно не надо «Jpg», так как графический формат jpg не поддерживает прозрачность. Если вы забыли задать Png или забыли включить опцию прозрачности, нарисовали картинку, и вдруг поняли, что неплохо бы сделать её фон прозрачным, не беда, скопируйте seed-номер картинки в поле «seed» и просто перерисуйте её.



Специальные команды Dezgo

В Dezgo есть две особые команды, каковые, как я понимаю, действуют во всех его нейросетях. Знать эти команды очень важно, так как они чрезвычайно облегчают жизнь в некоторых случаях, существенно повышая восприимчивость ИИ к вашим текстовым инструкциям. Позволяют усиливать и ослаблять отдельные параметры в оных инструкциях на ваше усмотрение. Все параметры, какие бы вы ни задавали в тексте, изначально имеют… назовём это «значимостью для ИИ», так вот, значимость их, условно говоря, нейтральная. Они считаются рядовыми инструкциями, каковые надо исполнять без чрезмерного усердия. Придать им большую или меньшую значимость можно двумя способами – либо плюсами и минусами, либо дробным числом от 0 до 2. По умолчанию (если вы ничего не указали) их значение значимости равно 1, числа от 1 до 0 уменьшат значимость, числа от 1 до 2 увеличат. Примеры:

Stars-- and planets++
(Stars)0.8 and (planets)1.2

В переводе «звёзды и планеты». Звёзды мы ослабили, их будет нарисовано меньше (чем было бы без ослабления), а планеты усилили, их нарисуют больше количественно, или крупнее, или и то и другое. Усиление с помощью дробных чисел надо применять только со скобками, иначе оно не работает. Также можно усиливать группы параметров, опять же заключая их в скобки:

(Stars and planets)++
(Stars and planets)1.2
(Stars and planets:1.2)

Все три примера задают ровно одно и то же – усиливают на два пункта и звёзды и планеты, чтобы их количество на картинке, яркость, крупность – что-то из этого набора добавилось. Третий пример (с двоеточием) – альтернативный способ применить усиление дробным числом для слов, заключённых в скобки, оно влияет на все слова, что есть внутри скобок, а не только на последнее.

Немного деталей:

  1. Дробные числа надо писать только через точку. Запятая не считается в Dezgo частью числа при усилении, то есть если вы напишете «1,5» вместо «1.5», вы зададите усиление, равное «1.0».
  2. Дробная часть может быть точно не скажу сколько цифр, так как задачи выяснить это я себе не ставил, но (по-моему) как минимум принимает три цифры после точки, то есть вот так тоже можно писать: «1.999», и это не будет равно «2.0» или «1.9», разница и в сотые и в тысячные влияет на конечный результат рисования, пусть и несущественным образом (для тысячных). В Dezgo на его сайте указаний про сотые и тысячные нет, в нём в примерах есть только десятые, т.е. остальное – мой вывод, в коем даже я не уверен на 100%, но на 90 пожалуй уверен.
  3. Влияние плюсов и чисел может не совпадать. Часто совпадает, но не всегда. Например, у меня при проверке, как это работает, в сети RealDream12 пять плюсов дали примерно такой же результат, как число 1.6, хотя оно означает 6 пунктов усиления, а не пять. Закономерность это или единичная случайность, я не проверял, так как по идее это неважно. Я несколько раз проверял 10 плюсов и число 2.0, и почти во всех проверках (но не во всех) результат рисования был строго одинаков. Прям в точности, вообще без отклонений.
  4. Усиление не всегда работает очевидным образом. Например, я нарисовал ангела, и пытался перерисовать, проминусив крылья (с целью уменьшить их). Но ничего не менялось, несколько минусов вообще ничего не дали. А всё дело видимо в том, что у меня у ангела были крылья на всю картинку (ландшафтной ориентации). Нейросети Dezgo часто такое делают – вписывают крылья персонажей от угла до угла, ровно на всю картинку, по всей её ширине, для эффектности кадра, так сказать. То есть они решают свои задачи – гонятся за эффектностью, минусы в данном случае противоречили этой задаче, вся эффектность картинки, весь её контент, держался на том, что крылья касались кончиками верхних её углов. Смысла уменьшать при таком раскладе сеть видимо не нашла. Ну или была какая-то иная причина. Так или иначе, это не всегда заметно работает.
  5. Усиление «0.0» равноценно удалению слова, которое оно, ослабляет, из текста. Влияние слова на смысл текста прекращается. Порой это удобно – исправил циферку, параметр заработал, исправил снова на ноль, и он опять не действует. Однако нейросети не всегда благосклонно относятся к нулевому усилению. Пару раз, когда я его использовал, они вообще переставали реагировать на мой текст, выводя случайную простую картинку, никак с ним не связанную. Правда я использовал его относительно много раз, а вот таких сбоев было всего два.
  6. Задавать дробную часть, если у нас усиление равно целому числу, необязательно. Мы можем спокойно писать «2» вместо «2.0» или «0», вместо «0.0».

Важно учитывать, что излишнее усиление может приводить к порче картинки - к порче и искажению её графики. Более всего характерно для обычных сетей, в XL выражено заметно слабее, там оно зависит конкретно от того, что за параметр усиливаешь, например, если цветность, с ней можно и переборщить, а если фантазию («fantasy» - слово, влияющее только на сюжет), ничего плохого в большинстве сетей не произойдёт, ну а в некоторых отдельных может быть качество графики и подупадёт, но не порядок. В многих обычных сетях всё равно что усиливать, при избыточном усилении картинка портится, и порой радикально, в них я принял себе за правило исходно не ставить более 3-х плюсов. Всего лишь трёх. Три никогда не приводили у меня к проблемам, 4 – сложно сказать, более 4-х уже значительно повышают вероятность сильно ухудшить графическое качество изображения. Тем не менее, гарантии, что это обязательно произойдёт, тоже нет, иногда и пять, и шесть плюсов у меня принималось как будто даже без мелких отрицательных последствий. Кстати, не стоит забывать о перерисовщиках. С их помощью некоторые испорченные переусилением изображения, если таковое всё же произошло, есть шанс нормализовать, как минимум те, у которых возникли проблемы с чёткостью, размазыванием цветов, шумами или зернистостью. Что касается минусов, ими можно пользоваться без каких-либо ограничений в каких угодно сетях. Картинку портит чрезмерное усиление, а они означают усиление всегда менее 1.

Функция flux усиление не поддерживает. Во всяком случае при моих экспериментах с ней реакции на усиление у неё было ровно ноль. Правда я проверял это именно в день её добавления в Dezgo, может быть со временем поддержку усиления в неё и добавят. Но по-моему скорее всего нет, она работает иначе, чем прочие функции Dezgo, более чётко реагирует на ваши тексты, есть ощущение, что она и не нуждается в усилениях.



О некоторых настройках подробнее


Текст для генерации картинок (промпты)

Здесь я чуть подробнее расскажу о настройке «prompt» функций. Той, в окно которой вы задаёте текст, описывающий контент генерируемой или перерисовываемой картинки. В русском сегменте интернета вследствие неё тексты для генерации картинок собственно и называют «промптами», только я бы не сказал, что для русского языка данное название удобно для произношения, далее я всё же преимущественно буду называть эти тексты «текстами». Или буду использовать слово «prompt» для уточнения. Когда моё руководство было уже практически готово, я вдруг заметил, что Dezgo осчастливил нас очередным новшеством – на его сайте появилась ссылка «Blog» (https://blog.dezgo.com). Перейдя по ней, я нашёл кое-что интересное, в том числе на тему текстов. И пришлось мне дополнять свою писанину ещё одной главой. Ну, тут я постараюсь быть максимально краток. В первую очередь стоит сказать, тексты, задаваемые ИИ (искусственному интеллекту) характеризуются длиной, и она измеряется в специальных единицах – так называемых «токенах». Кажется, этот термин используется для миллиона разных вещей, включая криптовалюты, так что не надо путать, тут у него иное значение. Токен – в данном случае это именно единица длины и ничего более, величину она имеет переменную, в среднем равняясь четырём символам, однако многие слова являются самостоятельными токенами (то есть любое из них любой длины равно одному токену). Почему это для нас важно? Потому что все генераторы изображений с искусственным интеллектом, основанные на Stable Diffusion (включая и Dezgo), имеют ограничение текстов по длине, после которого слова просто игнорируются. В настоящее время это ограничение составляет 77 токенов. Как определить число токенов в вашем тексте, раз они неизмеримы простыми средами (вы же не знаете, какие слова равны одному токену, а какие нет)? Dezgo предлагает вам для этого пользоваться специальным сайтом – онлайн токенизатором: https://novelai.net/tokenizer.

Второй момент: словам в начале текста придается большее значение, чем словам в конце. Если вам не нравится получившаяся картинка, вы можете изменить порядок слов, а не менять текст полностью. В качестве примера на сайте приводятся две картинки – созданная по тексту «1 girl, classroom» и по «classroom, 1 girl». На первой картинке школьница крупным планом, на второй – школьный класс, где за одной из парт сидит школьница, то есть она гораздо более мелко нарисована, там она не главный объект, главный объект именно помещение класса.

Третий момент: если вы используете для генерации картинок сторонние тексты из интернета, составленные для других нейросетей (не для Dezgo), следует учитывать, что Dezgo не поддерживает их особый синтаксис вроде квадратных скобок, нескольких круглых скобок, и т.п. Проще говоря, в Dezgo в качестве специальных команд используются плюсики и минусики, а в других сетях применяются иные механизмы – где-то заключение в квадратные скобки, где-то в множество круглых «(((1 girl, classroom)))». В Dezgo все подобные специальные команды работать не будут.

Четвёртый момент: избегайте допускать грамматические и иные ошибки. Искусственный интеллект далеко не всегда сможет понять вас правильно. Лично по моему опыту часто ему всё равно, всё понимает. Но порой нет, например, я допустил опечатку в тексте «(Strangel world)+++. Strange nature» - лишнюю «L» поставил в тексте «странный мир, странная природа». И мне разные сети вместо странного мира стали генерировать изображение летящего примитивного (пропеллерного) самолёта.

Пятый момент добавлю от себя. Первая генерация по вновь заданному или вновь исправленному тексту иногда может происходить нестандартным образом, иным, чем в последующие. Потому если вы задали какой-то текст, и у вас первая картинка выпала интересная, а потом сколько попыток ни делаете, всё уже не то, вероятнее всего это не случайность, что именно первая была иная, это закономерность. Такое относительно редко бывает (с нестандартностью первого срабатывания), тем не менее бывает, это надо иметь в виду.

Ну и напоминаю, всё написанное вами в окне «prompt» будет сохранено непосредственно в файлах картинок (исключая формат WebP). Достаточно открыть картинку блокнотом, и в самом её начале вы обнаружите среди прочего текст, по которому она была сгенерирована.

Дополнительную информацию вы можете найти здесь: https://blog.dezgo.com/2024/07/advanced-prompting-technique.html.



Негативы

У шести из девяти функций Dezgo есть параметр «negative prompt», позволяющий указывать то, чего не должно быть на картинке. Причём у пяти из этих функций (за исключением только XL) он по умолчанию наполнен множеством значений, а именно:

ugly, tiling, poorly drawn hands, poorly drawn feet, poorly drawn face, out of frame, extra limbs, disfigured, deformed, body out of frame, blurry, bad anatomy, blurred, watermark, grainy, signature, cut off, draft

В переводе это: «некрасиво, черепица, плохо прорисованные руки, плохо прорисованные ноги, плохо прорисованное лицо, не в кадре, лишние конечности, изуродовано, деформировано, тело не в кадре, размыто, плохая анатомия, размытый, водяной знак, зернистый, подпись, обрезанный, черновик». Что такое «tiling» (черепица) мне непонятно, а по поводу остального, из всего, как видим, только «водяной знак», «подпись» и «лишние конечности» можно отнести к объектам, запрещённым к рисованию, прочее скорее призвано улучшать отрисовку чего-либо, а не запрещать. Всего в вышеприведённом примере фактически присутствуют 4 типа указаний:

1) Запрещать рисовать определённые детали.
2) Заставлять принудительно перерисовывать недостаточно качественно отрисованные детали.
3) Исправлять проблемы искажения анатомии, если они были допущены.
4) Помогать управлять размещением тел персонажей в кадре.

Так как проблемы с лишними конечностями периодически возникают (у меня такое регулярно случается), очевидно, что негативы не дают гарантии от появления указанного в них, видимо только понижают вероятность. Я пытался управлять с их помощью размещением персонажа в кадре, очевидных подтверждений, что это работает, не получил. Если оно вдруг и работает, то настолько нестабильно, избирательно и ненадёжно, что особо не о чем и говорить. В целом процент успеха у меня стремился к нулю. Хотя всё же был не нулевым. Также я пытался улучшать прорисовку каких-то деталей и исправлять искажения анатомии (именно перерисовывая уже полученные картинки, имеющие данные огрехи). Здесь положительные результаты у меня имели место, и достаточно часто, однако насколько они вызваны негативами, а насколько случайностью, трудно сказать. Всякий подобный огрех, это тоже в определённой мере случайность, при перерисовке он может устраниться сам собой, есть такая вероятность. Негативы отчасти равноценны тексту prompt, они тоже определяют в том числе какие-то случайные детали рисунка, нейросеть в том числе по ним выбирает оные детали. То есть картинка вследствие них будет изменена, а каким образом, зависит не только от их смысла, но и от случайности, от каких-то ещё факторов, управлять которыми нам не дано. Это надо понимать. Так или иначе, в целом они вроде очень удобны именно для исправления проблем анатомии. Я много раз устранял с их помощью лишние конечности. Сколько-то раз устранял искажения физиономии, сколько-то искажения формы конечностей. Проще всего исправлять такие огрехи не в функциях редактирования, а перерисовкой непосредственно в генераторе картинок с использованием свойства seed, о котором я расскажу в следующей главе.

Что касается запрета на отрисовку каких-либо деталей. Например, деревьев на улице, или облаков на небе, или шляп на персонажах, ну и т.д. Я не слишком много с этим экспериментировал, если судить по тем сетям, где я такие тесты проводил, оно работает очень по-разному для разных объектов запрета. Что-то как будто вообще не работает (деревья мне не удалось убрать с улиц), что-то убирается практически на 100%, что-то процентов на 30-50%. Я бы сказал, если вам требуется убрать некую деталь из рисунков, просто прописывайте её в негативах, да и всё, хуже поди не станет, но есть шанс, что всё получится, или что количество картинок, где указанной детали нет, возрастёт. И вообще, пробуйте негативы для чего угодно, они работают нестабильно, ненадёжно, негарантированно (я бы сказал, сети Dezgo своенравны, не всегда предрасположены выполнять ваши инструкции), тем не менее в целом улучшают управляемость рисованием, и порой срабатывают даже в каких-то аспектах, каковые и объектами-то не назовёшь. Например, я с их помощью изменял стиль картинок. Одна сеть рисовала мне в 3D, делая это крайне некачественно, и посредством текста у меня не вышло снизить степень трёхмерности её изображений. Я попробовал прописать в негативах «3D». Ничего не произошло. Я тогда прописал там «3D+++». То есть применил в них усиление. И вот после этого вместо чистого 3D сеть стала рисовать в смеси 3D и 2D, в этаком 2,5D, что выглядело в её случае гораздо симпатичнее. Таким образом, я берусь утверждать, что усиление в негативах тоже работает. Это очень важный момент, потому что если оно реально работает, эффективность негативов как инструмента влияния на рисунок заметным образом возрастает. Информации про возможность их усиления кажется нигде нет, ну или она мне не попадалась, то есть это мой личный вывод, каковой вам не обязательно принимать на веру, но учитывать при использовании негативов стоит. Сам я применял в них усиление неоднократно, по моим ощущениям визуально разница с усилением и без неплохо видна, потому сомневаться в его работоспособности у меня самого нет причин. Также отмечу, чрезмерное усиление и в негативах может приводить к искажениям и порче качества графики рисунка.

Вот ещё пример группы негативов, каковой я нашёл в интернете в справке по нейросети stable diffusion (из него я исключил ряд значений, одинаковых с уже приведёнными выше из функций Dezgo):

low resolution, amateur, poorly drawn, flat, duplicate, morbid, mutilated, extra fingers, mutated hands, mutation, deformed, bad proportions, missing arms, malformed limbs, missing legs, extra arms, extra legs, mutated hands, fused fingers, too many fingers, long neck, melting faces

В переводе: «низкое разрешение, любительский, плохо прорисованный, плоский, повторяющийся, болезненный, изуродованный, лишние пальцы, мутировавшие кисти, мутация, деформированный, неправильные пропорции, отсутствие рук, уродливые конечности, отсутствие ног, дополнительные руки, удлиненные ноги, мутировавшие кисти, сросшиеся пальцы, слишком много пальцев, длинная шея, плавление лица».

Остаётся напомнить, что текст негативов сохраняется в файлах сгенерированных картинок. Достаточно открыть картинку блокнотом, и вы сможете его увидеть.



Seed

Опция seed – это отличный инструмент, позволяющий редактировать картинки (сгенерированные в Dezgo) и изучать работу нейросетей Dezgo (если вам это надо). Мне с ней «немного» не повезло. Я очень долго не обращал на неё вообще никакого внимания. Фактически до тех пор, пока не написал полностью это руководство, не понял, что она у меня не описана, и не решил посмотреть, что же она такое. Описание её на сайте Dezgo вводит в заблуждение неспециалиста, потому я и не придавал ей значения. «Unique image seed number. If not provided, the image will be random». При слабых познаниях английского и полном непонимании, что такое нейросети, для меня ключевыми стали слова «Unique number», я решил, это какой-то идентификатор служебный. Допускал, что он может использоваться в том числе в целях генерации случайных деталей картинки. Но не предполагал, что он влияет на них настолько. Вот и выходит, что я изучал работу Dezgo, не используя главный (по сути единственный) инструмент, позволяющий её изучать. Иногда тебе просто не везёт. Настроек много, понимания мало, и как выбрать именно нужное? Итак, в чём конкретно заключаются знаменательные возможности опции seed:

1) Она позволяет редактировать картинки. Любой генератор изображений с её помощью можно превратить в редактор. Вы сгенерировали картинку, в целом она вам очень понравилась, но отдельный её элемент требует исправления. Допустим, у персонажа нарисовалось три руки (такое иногда бывает). Как убрать лишнюю руку? Копируем в поле seed значение seed картинки (оно отображается сверху над ней), прописываем в негативах «extra hand» (лишняя рука) или «extra arm», если это именно кисть руки (тут желательна максимальная точность), и генерируем картинку по новой. Вероятнее всего она будет перерисована нормальной, без третьей руки, но высоки шансы, что с полным или близким к тому сохранением всего остального содержимого, если же лишняя рука останется, можно поменять что-то аккуратно в тексте prompt, всё равно третья рука – это редкая оплошность, что-то чуть изменится на картинке, и сия оплошность сама собой устранится. Помимо лишних конечностей, естественно, можно менять и многое другое. Однако у такого способа редактирования имеются свои ограничения. Картинка генерируется у вас на основании трёх вещей: seed, текста prompt и совокупности значений некоторых прочих опций, к примеру негативов и заданных в «resolution» пропорций. То есть она зависит не только от seed. Когда вы меняете текст, всегда есть шанс, что контент изображения сменится резко кардинальным образом на совершенно другой, вы получите не небольшие заданные вами изменения, а вообще другую картинку. Потому текст нужно менять осторожно и не слишком сильно. И тем не менее даже это очень многие правки позволяет внести. Особенно если приложить некоторые усилия и попытаться понять, как seed работает. Я опробовал данную опцию пока что всего на 4-х текстах. В одних у меня выходило править картинки с её помощью лучше, в других хуже, суммарно у меня получалось, сохранив персонажа тем же самым узнаваемым: перемещать его немного в кадре в ту или иную сторону, изменять позу, угол поворота тела (по отношению к нам - прямо персонаж стоит или боком), характер одежды или её отдельные элементы, цвет одежды, волос, эффектность внешности (очень существенным образом, от заурядного до модельного – только в одном тексте такой фокус прокатил), устранять огрехи анатомии, изменять фон, и даже управлять крупностью плана, придвигая или отодвигая персонажа в переделах некоторого расстояния. Ну а если вам не требуется сохранение узнаваемости, при желании можно много чего ещё делать. В целом мне внесение управляемых точечных правок давалось непросто, и далеко не всегда всё получалось, многое из того, что я перечислил, вышло у меня не целенаправленно, а случайно, но какая разница, раз это возможно случайно, значит это возможно в принципе, вот в чём суть.

2) Она позволяет улучшать картинки. Это тоже определённое редактирование, только всё же подразумевает нечто иное, когда вам надо не заменить что-то, не убрать лишнюю конечность, а улучшить общую эффектность без указания конкретных деталей. Если вам выпала недостаточно эффектная картинка, попробуйте добавить в текст, допустим слова «(professional picture)1.3» (для XL сетей лучше «(professional picture)1.6»), и перерисуйте её. Результат, есть шанс, что приятно вас удивит. Мало цвета, напиши «(vibrant colors)+++» либо «mad colors» и перерисуй. Низкая контрастность, пропиши в негативах «low contrast». Ну и так далее.

3) Она позволяет видеть, как влияют те или иные параметры на контент. Как определить влияние слов «(professional picture)1.3» на генерацию, если у тебя всегда разные картинки? В целом можно, но обычно времязатратно, надо генерировать много изображений и делать некие статистически обоснованные выводы. А с seed задал его, и нарисовал с использованием указанных слов и без них. Две картинки всего лишь. У них одинаковое содержимое, или примерно одинаковое, разница сразу видна. Благодаря seed можно под всякий конкретный текст подбирать улучшающие именно его (генерации по нему) параметры.

4) Весьма интересные перспективы seed открывает для функций перерисовок. Если вы сгенерировали картинку в обычном генераторе, не в перерисовщике, её seed наверное не имеет большого значения для перерисовщиков. Я собственно не знаю, имеет ли он вообще для них какое-то значение, картинка при первой перерисовке в них в любом случае меняется в той или иной степени (ведь меняется функция, которой вы её рисуете, это большое изменение параметров генерации), меньше ли она меняется при использовании seed исходной картинки или нет, бог его знает. Надо проводить много тестов, чтобы это выяснить, я же, как уже сказал, лишь недавно понял, что такое seed, посему ничего подобного не делал. Однако как только вы перерисовали картинку именно в перерисовщике, вы получаете «родной» для него действующий на него её seed, введя который и не меняя никаких настроек будете всегда при попытках перерисовки получать одну и ту же картинку. Знаменательная особенность перерисовщиков в том, что они ориентируются не только на seed, но и на исходную картинку (на её содержимое), посему им можно вносить значительные изменения в текст, не боясь её излишне изменить. Например, в обычных генераторах картинок при перерисовке по seed, если мы чрезмерно изменим текст, существует вероятность, что произойдёт значительная смена крупности плана, и тогда весь контент изображения кардинально изменится на другой, а в перерисовщиках в определённых режимах работы крупность плана просто не может измениться, это серьёзно стабилизирует содержимое картинки, не давая ему превратиться в слишком другое. Также seed в перерисовщиках позволяет чётче удерживать некоторые детали от изменений. Я опять же только чуть-чуть с этим поэкспериментировал, буквально в момент написания данных строк, но разница видна, с использованием seed и без него она определённо есть и заметна. Ну а больше подробностей, что и как там работает с seed, вам, боюсь, придётся выяснять самостоятельно.

Лично меня интересовал вопрос – раз картинка по одним и тем же настройкам рисуется всегда одна и та же, значит ли это, что мы можем нарисовать её снова ту же самую и через месяц, и через год. Ответ я получил довольно скоро. Нет, так не получится. Дело в том, что и нейросети Dezgo и его функции не статичны, их улучшают время от времени, вносят в них какие-то поправки. И похоже это происходит относительно часто. После подобных улучшений они начинают рисовать по тем же самым параметрам иное. Так что недели может быть, а через несколько месяцев очень маловероятно. У меня картинки месячной давности уже не воспроизводятся в том же виде, какие-то отдельные детали наверное сохраняют сходство (иногда), но в целом не то что на идентичность, но и на хоть какое-то отдалённое подобие нет и намёка. Таким образом, если вам выпала интересная картинка, имеющая небольшие огрехи, требующие устранения, а вы отложили её редактирование на потом, вы должны понимать, когда это потом наступит, есть вероятность, что её seed в редактировании вам уже не поможет.



Sampler

Что такое сэмплеры, невозможно понять (разбираясь экспериментальным путём) без использования seed, потому я с ними фактически не работал. Если рисовать в RealDream12, с их сменой принципиально ничего не меняется, в сетях XL меняется обычно в худшую сторону (при рисовании людей) – качество графики падает, что не способствует желанию вообще к ним прикасаться. Лишь когда я узнал про seed, я решил и им уделить сколько-то внимания, дабы сделать хоть какие-то выводы. Всего их шесть, напомню, они отвечают за качество графики и отчасти за содержимое картинки, минимум два из них всегда рисуют одно и то же, бывает и больше, а сколько конкретно, и сколько на шестерых они неодинаковых картинок порождают, зависит в первую очередь от сети, в разных может быть по-разному. Из-за того, что они работают в разных сетях не единообразно, достаточно трудно их как-то однозначно описать, и всё же я попытаюсь это сделать в меру своих скудных (и наверняка в чём-то неверных) знаний о них.

1) DDIM – в XLL сетях качество графики достаточно низкое, и часто наблюдаются шумы в ней, в XL и обычных сетях вроде бы с качеством всё нормально.

2) Euler – в большинстве сетей, в которых я проверял сэмплеры (а я делал это далеко не с каждой из них), совпадает на 99-100 процентов в том, что рисует, с DDIM, т.е. они по одному seed фактически выдают ровно одну и ту же картинку, иногда различающуюся в отдельных мелких деталях. Однако мне попадалась и парочка сетей, где они не совпадают вообще, но тогда Euler совпадает с каким-то другим сэмплером, или с несколькими из них, ну вот он такой, что всегда с кем-то совпадает, иного я ни разу не видел. С качеством графики в XLL сетях у него почти ровно те же проблемы, что и у DDIM, тоже рисует плоховато, но у него заметно меньше шумов, чем у DDIM, так что он лучше. В XL и обычных сетях вроде бы с качеством проблем нет. В списке сэмплеров у функций Dezgo он предпоследний, а DDIM первый, но я разместил их тут рядом, потому что они реально почти близнецы.

3) DPM++2M – обычно тяготеет к одинаковости картинок с Euler, но эта одинаковость в разных сетях разная, в одних почти один в один, в других… даже затрудняюсь сказать какая, к примеру в RealDream12 она переменная в очень широком диапазоне, процентов от 30 до 90, также в RealDream12 он частью деталей может совпадать с ещё одним сэмплером – «DPM++», ну то есть он там вот такой, нацепляет одинаковых деталей каких-то от Euler, каких-то от DPM++, а в результате у него там всегда картинка, выглядящая не так, как у остальных сэмплеров, похожа в чём-то – лицом персонажа, позой и т.п., но в целом всё же отличается, иногда слабо, иногда значительно. И фон у него никогда (в RealDream12) ни с кем не совпадает, но во многих других сетях вроде бы он имеет обыкновение совпадать с Euler почти на 100%.

4) DPM++ – выбран сэмплером по умолчанию для ряда XLL сетей, как минимум для Juggernaut9 и Juggernaut10. То есть по качеству графики для XLL вроде как один из лучших. В прочих сетях качество тоже хорошее. Часто бывает сходен или идентичен содержанием картинки с каким-нибудь другим «DPM++» (которых, как видим, тут вместе с ним три). Сходство может быть относительно низким или переменным, например в сети RealDream12 (я просто на ней в основном экспериментирую) обычно у него с Karros (следующим по списку «DPM++») одинаков характер одежды и фона, но также он мог порой иметь отдельные детали одежды, физиономию, возраст, позу от DPM++2M. В большинстве тех сетей, что я проверял, полностью совпадал картинкой с Karros.

5) DPM++ 2M Karros – выбран сэмплером по умолчанию для всех сетей обычного размера и для ряда сетей XL (не XLL). То есть для них считается лучшим. По-моему в большинстве сетей полностью совпадает картинкой с «DPM++», но, как я только что сказал, в сети RealDream12, к примеру, это не так, там он лишь характером одежды и фона похож, а остальное у него всё своё. В сетях XLL нередко приводит к порче графики из-за чрезмерной контрастности. Если это произошло, можно или уменьшить настройку «Guidance» (только при смене сэмплера нужно не забывать вернуть её назад, другие сэмплеры как раз будут иметь слишком низкую контрастность с этой убавленной настройкой), или поискать способ снизить контрастность текстом либо негативами.

6) Euler Ancestral – этот стоит ото всех в сторонке, минимально похож на остальные сэмплеры хоть в чём-то, у него всё своё – физиономии, позы, одежда, фон. Определённая схожесть всё равно у него с ними есть, причём степень её может сильно варьироваться в разных картинках, в разных сетях. Так или иначе он всегда выделяется тем, что сам по себе. Является сэмплером по умолчанию для обеих сетей «PurpleSmart.ai’s PonyXL 6» (таковая есть и XL, и XLL). Но я совсем не уверен, что он даёт в них лучшее качество графики.

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

  1. Главная для нас, ну или первоочередная. Качество графики. Мы ведь должны получить качественное изображение, лишь тогда будет смысл оценивать, насколько оно нам нравится по содержанию. В Dezgo не во всех сетях качество графики одинаково удовлетворительно у всех сэмплеров. Если в какой-то сети оно явно слабое, а вам почему-то край как надо рисовать именно в ней, может быть есть смысл попереключать сэмплеры, дабы подобрать тот, что рисует лучше прочих.
  2. Качество контента. Я не могу утверждать этого наверняка, но практически уверен, что разные сэмплеры в разных сетях настроены решать отчасти разные задачи, а какие конкретно, зависит от сети. Например, в RealDream12 по моим ощущениям, Karros нацелен наиболее эффектно представить персонажа, а в Euler Ancestral подбавлено чуть больше художественности, он старается чуть-чуть покрасивее всё нарисовать. Я конечно могу и ошибаться, это очень субъективно. В RealDream12 все сэмплеры рисуют с отличным качеством, и на 6 сэмплеров порождают 5 вариантов картинок, из них два достаточно близких. Я попробовал сначала в каждом из 6 нарисовать по 20 картинок просто персонажа в фантазийном ключе (слово «fantasy» добавил, чтобы он выглядел как герой мира фэнтези). Великих отличий не обнаружил, все справились примерно одинаково, вполне хорошо. А потом добавил к персонажу яркий цветовой спецэффект, и ещё по 20 нарисовал. И вот тут разница имелась, когда персонаж перестал быть единственной важной частью изображения, он иногда стал рисоваться слишком мелко, из-за чего у него появлялись деформации лица, или глаз, а иногда спецэффект был неудачным, неинтересным, слабым. То есть часть картинок сразу на удаление. В большинстве сэмплеров процент таких забракованных изображений был более 50%, у Euler Ancestral наверное под 40, а у Karros откровенно неудачная картинка была только одна. Случайность это или закономерность? Бог его знает, таких экспериментов не проведёшь слишком много – по 20 картинок на сэмплер это уже суммарно 120 (умножаем на 2, то есть всего мне пришлось их нарисовать 240). Но зачем-то же нужны сэмплеры. Я всё же подозреваю, что какие-то дополнительные неодинаковые функции они в себе заключают. Или настроены немного неодинаково и оттого в разных текстах могут проявлять себя одни чуть лучше, другие чуть хуже.
  3. Разные ракурсы и вариации. Если ряд сэмплеров рисуют у сети почти одно и тоже, но с небольшими отклонениями, мы можем, перерисовывая в них одну и ту же картинку, получить её вариации, словно это кадры одной сцены, снятые последовательно с минимальным временным интервалом.
  4. Разный однотипный контент – если допустим вам выпал персонаж в очень необычном наряде (какой более вы никогда не увидите, сколько попыток генераций ни делай), перерисовав такую картинку в разных сэмплерах, если речь идёт, например, о RealDream12, вы имеете шанс получить в сумме до 5 вариаций этого наряда.

Вот и всё, что я могу сказать о сэмплерах в данный момент. Повторюсь, что для новичка принципиально только качество графики. Если оно вас устраивает, сэмплеры лучше вообще не трогать, сосредоточив внимание на чём-то другом.



О некоторых функциях подробнее


Text-to-image Flux

Добавлена 07.09.2024. То есть совсем свежая, я ей не пользовался. Служит для генерации изображений по текстовому описанию. Делая это иначе, чем прочие генераторы Dezgo. Отныне является функцией по умолчанию для набора из (теперь уже трёх) функций «Text-to-image XL» – переходя по ссылке «Text-to-image XL» в меню сайта Dezgo вы попадаете именно на неё (а чтобы переключится с неё на какую-либо из двух других XL функций, надо воспользоваться опцией «Architecture», расположенной в правом верхнем углу). После беглого поверхностного ознакомления что могу сказать (пишу это именно 07.09.2024):

  1. Самые большие по размерам картинки в Dezgo - 768x1344 или 1024x1024. Это мило.
  2. Не имеет никаких настроек. Только «resolution», «format» (формат файла) и «seed», ну то есть для управления собственно рисованием вообще ничего нет. Нет нейросетей на выбор.
  3. Может рисовать в полном реализме, аниме арт, в pixar, в 3d render, 3d cartoon. Других стилей пока не попробовал. Реализм у неё весьма неплох.
  4. Игнорирует параметры улучшения эффектности (если вы задаёте их в тексте – те, что я пытался применять, не действовали), игнорирует усиление (плюсование и минусование). То есть она работает довольно нестандартно для Dezgo.
  5. Не имеет явных проблем с качеством графики. Но порой словно слегка перебарщивает с чёткостью, иногда с цветностью. У неё очень высокая чёткость и цвет явно уже усилен. Может потому она не и реагирует на усиление – в ней многое уже усилено.
  6. Чёткость требует отдельного упоминания. Она тут впечатляет. К сожалению (по моим ощущениям) она усилена программно, она высока не за счёт высокого разрешения графики, потому если картинку даже немного увеличить, сразу появляются проблемы с качеством. Но если картинки не увеличивать, и особенно если подуменьшить, чёткость просто сияющей иногда бывает, прям выдающаяся. В некоторых случаях столь высокая чёткость может быть во вред, лица крупным планом не всегда выглядят хорошо, искажения мелкие появляются в графике, животное крупным планом тоже вышло у меня не супер. Зато те объекты, у которых слишком мелких деталей нет (робот, солдат будущего в закрытом шлеме, спортивный автомобиль) получаются отлично. Паук, кстати, блестяще был нарисован, хотя вроде он сам мелкий, у него все детали мелкие. В общем, тут надо приспосабливаться, искать, что хорошо рисуется, а что не очень. Так или иначе функция Flux выделяется оригинальными возможностями, каких более в Dezgo кажется ни у одной функции нет.
  7. Не реагирует на стиль photorealistic (при том, что рисует в полном реализме, вот парадокс), слабовато реагирует на стиль realistic. Полный реализм эта функция выбирала у меня всегда только сама, в зависимости от содержания текста. Я бы не сказал, что это слишком удобно.
  8. Очень точно и чётко выполняет некоторые инструкции. В других функциях Dezgo мы применяем усиление, чтобы сеть лучше слушалась, а тут она часто слушается и так. В некоторых вещах. Например, здесь можно воспроизводить надписи. Я мало где это пробовал, но где пробовал, у меня ничего не вышло, буквы искажаются, изменяются, выводятся не все. Тут чаще всего строго отображается именно то, что вы написали написать. Таким образом, эта функция, помимо прочего, позволяет выводить надписи с разнообразными спецэффектами – любыми, на какие вам хватит фантазии. Правда только на английском, с русскими буквами у меня такой фокус не прокатил. Ещё один момент – окраска. Её тут можно задавать точно – написал «красная шляпа синяя майка», тебе нарисуют именно это. В других функциях Dezgo такого ответственного отношения к заказам на цвета я не замечал, просто не видел чего-либо подобного.
  9. Тоже сохраняет ваш текст prompt внутрь файлов. Моя программа основной блок информации из файлов сгенерированных ей картинок не читает (чтобы читала, надо некоторые правки вносить), но блок GenInfo (есть только в файлах Png) читает.

Мои выводы – не идеальна, работает иначе, что потребует отдельно приспосабливаться к ней, у неё собственный набор достоинств, я бы не назвал её лучшей, но и к худшим её явно не отнесёшь, ещё один интересный инструмент, предлагаемый Dezgo, о котором я так или иначе пока могу судить весьма поверхностно. Никакие иные стили кроме реализма меня в ней не впечатлили, чёткость в них тоже была высока, но мультяшные картинки выглядели бедновато по содержанию и тяготели по стилю к аниме арт, а это довольно специфический стиль очень на любителя, 3d render получались (у меня) не слишком красивыми, а попытка улучшить их эффектность использованием жанра cyberpunk привела к не самой приятной графике вследствие излишней чёткости и излишней цветности. Что касается реализма, не все, но достаточно многие картинки вышли у меня тут очень хорошо, иные просто загляденье. Только их нельзя увеличивать, иначе их выдающаяся чёткость перестаёт быть таковой.

В последующем, если я буду где-то упоминать данную функцию, я буду говорить о ней как о XL функции Flux-размеров, или как о Flux-функции. Но в целом буду относить её именно к XL-функциям. Впрочем, пока что у меня нет причин особо о ней говорить – в ней нет никаких настроек, она не предрасположена реагировать на параметры повышения эффектности изображений, о чём говорить-то? Ну и текст моего руководства уже написан, то есть в нём она нигде не упоминается. Dezgo не стоит на месте, что-то в нём регулярно меняется, у меня же в силу обстоятельств не получилось быстро закончить свой, так сказать, литературный труд о нём, эта растянутость по времени к сожалению приводит к тому, что некоторые написанные мной про его работу вещи в какой-то мере устарели ещё до публикации руководства.



Text-to-image XL

Генерация картинок размеров XL по тексту. Повторяя уже говорившееся в кратком описании: в действительности это две функции – «Text-to-image XL Lightning» и «Text-to-image XL», между которыми для нас принципиальной разницы наверное нет, просто XLL работает быстрее (вероятно в платном режиме, в бесплатном по моим ощущениям всё едино). Переключение между функциями производится посредством опции «Architecture», расположенной в правом верхнем углу. При переходе в окно функций XL вы попадёте не на них, а на flux-функцию, каковая по какими-то загадочным причинам объединена с ними в одном окне, хотя являет собой нечто принципиально иное, потому чтобы переключится на них, опцией «Architecture» придётся воспользоваться обязательно. Максимальный размер изображений: 1016x576 или 576x1016, или 768x768. Если вы планируете увеличивать полученные здесь картинки с помощью функции Dezgo «upscale», при любых иных размерах кроме 768x768 вам для сохранения наилучшего качества придётся резать картинку надвое в фотошопе, увеличивать каждую из частей по отдельности и потом склеивать их в фотошопе снова. Ну или можно воспользоваться какой-то иной сторонней увеличивающей нейросетью. Насколько падает качество, если ничего не резать и пользоваться именно «upscale» Dezgo, легко подсчитать. При загрузке на сайт картинка уменьшится с 1016x576 до 768x435, то есть потеряет около 43% своей графической информации. Неслабо. И потом будет увеличена в два раза, до соответственно 1536x870 – в 1,5 раза от исходного размера. При увеличении ей подбавится чёткости, так что она вероятно будет выглядеть лучше, чем была, как минимум неплохо. И всё же 43%. Если вам картинка важна и вы хотите наилучшего качества, всяко надо или резать, или искать другие увеличивающие нейросети. Если резать и увеличивать по частям, мы получим в результате картинку 2032x1152.

https://dezgo.com/text2image/sdxl

Количество нейросетей (на момент сентября 2024): XLL – 5, XL – 7. Небольшое, прямо скажем. Но оно растёт, ещё недавно в XLL было только 3 сети, и потом сразу добавилось две. А в начале года вроде и вообще XLL не было. Перечень сетей:

XLL

  • JuggernautXL 9 Lightning (realistic) – предлагается по умолчанию (выбрана, когда вы заходите в окно функции XLL), рисует не только в реализме, но и в других стилях, самых разнообразных, при этом, во-первых, для управления стилями надо не стеснятся плюсить по всему диапазону – от 0.0 до 2.0, и во-вторых, многие стили нестабильны – если их задать в тексте, вам будет в зависимости от крупности плана, насыщенности цветом и иногда случайности рисовать в совершенно разных стилях. Людей в стилях реализма или близкого к нему до крупности плана по пояс обычно рисует в приемлемом и даже великолепном качестве, при большем отдалении начинаются варианты, качество может стремительно ухудшаться. Но может и нет, тут как повезёт. С рисованием почти чего угодно другого, кроме людей (ландшафтов, животных и т.п.) я великих проблем с качеством не заметил. Порой даже наоборот – насколько красиво рисует, к примеру, микробов (как ни странно это прозвучит), просто нет слов. Тигры хороши у неё. Мне данная сеть понравилась так или иначе. При этом я бы не назвал её дружественной к новичкам. Она требует усилий, требует каких-то хотя бы начальных знаний, как составлять тексты, я в Dezgo большей частью просто экспериментировал, смотрел что и как работает, бросишь в текст несколько слов, и всё, а тут так не получается, надо задавать детали, усиливать цвет, она не хочет за тебя фантазировать, при рисовании людей тяготеет к крупным планам, без деталей ты получишь лицо во весь экран, да и с деталями не факт что будет иначе (другие сети как-то адекватнее ведут себя в вопросах крупности плана, но тут с этим просто жесть). Часто не очень красивые лица, и надо что-то изобретать, дабы персонаж выглядел презентабельно. В некоторых вещах она плохо управляема, вот не слушается тебя, и всё. Стоит ли сеть подобных усилий, чтобы сидеть и изощрятся в поисках, как заставить её сделать то, что тебе надо, я не знаю. Для экспериментов пожалуй это даже хорошо, если же тебе нужно реально что-то нарисовать… Но возможно дело именно в том, что я новичок, а у знающих граждан излишних проблем не возникнет.
  • JuggernautXL 10 Hyper (realistic) – новая недавно добавленная сеть, которой я пока совсем мало успел попользоваться. «Hyper» видимо означает «Hyper realistic» (гипер реализм). Судя по тому, что я вижу, она не является некоей улучшенной версии предыдущего пункта, это другая сеть, кажется, старающаяся всё рисовать в повышенном реализме (если вы ей специально не указываете иное). После небольшого ознакомления с ней у меня сложилось ощущение, что людей она рисует ещё с чуть более худшим качеством (основная проблема в обеих сетях – размытие, особенно страдают глаза), а краски в ней несколько насыщеннее (если применять красочные режимы). Да и в целом у неё качество графики как будто похуже. Но многое она рисует и отлично, особенно если не выбирать слишком мелкую крупность плана.
  • PurpleSmart.ai’s PonyXL 6 Turbo DPO (artistic) – тоже недавно добавлена. Из названия следует что? Что она ссылается на какую-то нейросеть, содержа непосредственно ссылку на неё. Перейдя по ссылке (PurpleSmart.ai) я обнаружил, что да, сеть, заточенная рисовать… я не знаток мультяшек для малышей, кажется это мультсериал «My Little Pony», вот более под персонажей подобного типа ориентирована стилистика. Это всё про пони так или иначе, правда судя по картинкам, можно рисовать много чего на их тему, включая кентавриков, в том числе с взрослыми женскими формами, вряд ли рассчитанными впечатлить детей, включая человекоподобных двуногих лошадо-дам. В общем, весьма странная штука, явно не очень предрасположенная к россиянам (без ВПН не отображаются картинки на сайте), требующая регистрации по Discord, дабы рисовать в ней. Видимо Dezgo представляет альтернативу регистрации там, позволяя рисовать что-то подобное у себя. Попробовал порисовать, задал текст «пони в розовой попоне», получил очень миленькую мульт-пони, лежащую в кроватке, попробовал указать стиль «реализм», получил более-менее реалистичную лошадку, лежащую в кроватке, попробовал задать стиль «реализм аниме» и… получил полуобнажённую девушку, лежащую в кровати. Рисовал по тексту «a pony in a pink blanket. Photorealistic anime». Где вы здесь видите указание рисовать полуобнажённых дам? Но тем не менее, мультяшных пони рисует очень миленько, если вашим детям нравятся такие картинки, эта сеть, есть шанс, что поможет вам порадовать их. Её недостатки – контрастность низковата, размывает лица (пони и некоторые мультяшные картинки исключение), часто есть проблемы с шумами. Мало что умеет рисовать кроме пони и дам. Затруднено управление возрастом. В общем, не фонтан.
  • DreamshaperXL Lightning (realistic) – с одной стороны мне наверное даже более нравится, как она рисует людей в реализме (в сравнении с «juggernaut 9»). С другой, она исходно выделяет для этого очень мало ресурсов, картинка даже при крупном плане получается достаточно зашумлённой, а уж при хоть каком-то отдалении, скажем, в кадр по колено, это просто отстой. Людей рисовать тут как минимум в стилях реализма не самый лучший вариант. Если только с целью потом перерисовать не в XL. Редко какая картинка лично у меня была приемлемой. Впрочем, такие всё же были. Чем более цветасты картинки, чем более на них контента, тем менее заметны шумы, так что неплохо стремиться к буйству цвета или множественности деталей, чтобы как можно менее было однотонных мест, тогда при достаточно крупных планах есть вероятность получить что-то терпимое. Ну а всё прочее кроме людей опять же рисуется вроде бы неплохо.
  • Envy Starlight XL 01 Lightning (drawing) – при рисовании людей проблем с шумами здесь по-моему нет, что уже хорошо. Однако чаще всего некоторая размытость имеет место. Тоже далеко от идеала. Хотя размытость в целом небольшая, вполне терпимая. Всё прочее кроме людей рисует отлично: ландшафты, монстров. Рисовал букашек, просто сияющее качество, у шмелька каждую шерстиночку видно. К слову, людей мне иногда рисовало в очень специфической стилистике, что-то вроде предельно реалистичного 2,5D аниме. Это было красиво.

На данный момент я склоняюсь назвать лучшей сеть «JuggernautXL 9». Наверное не зря она является сетью XLL по умолчанию.

XL

1) JuggernautXL 5 (realistic) – своеобразна, по моим ощущениям уступает вышеописанной версии 9 XLL, ничем излишне меня не удивила, правда я ей особо и не пользовался. В любом случае работает иначе, чем версия 9, и порождает несколько иной контент.

2) PurpleSmart.ai’s PonyXL 6 (artistic) – и тут пони. Зачем их так много, хотел бы я знать. Поначалу я думал, что это примерно то же самое. Оказалось, отчасти да, но не совсем. Какая сеть лучше? Однозначно эта. Она работает нестандартно, в двух словах не опишешь её особенности, ниже я уделю ей отдельное внимание.

3) BluePencilXL 3.1.0 (anime) – одна из немногих нейросетей размеров XL Dezgo, у которой я не наблюдаю очевидных проблем с качеством графики при рисовании людей. Даже во весь рост выходит нормально. Это аниме сеть, персонажей она рисует большеглазых, что вроде бы никак их не портит, просто делает своеобразными. Выглядят весьма симпатично. Можно рисовать в стилистке, очень близкой к реализму (и даже с глазами нормальных размеров).

4) DreamshaperXL (general) – изначально все мои попытки рисовать в этой сети не приносили позитивных результатов. Люди, животные, ландшафты – всё получалось или мерзко, или плохо, или не очень хорошо. Единственное исключение – микробы, эти вышли столь же как шикарно, как в «JuggernautXL 9» (только тут надо задавать реализм: «microbe. realistic++»). Потом я прописал разные улучшающие слова в негативах, добавил усиления качества в текст, сменил в настройках sampler на DPM++ (по умолчанию там Karros), и ситуация заметно улучшилась. Но много я тут не рисовал, большого желания воевать с сетью за каждую качественную картинку у меня нет. По моим ощущениям она претендует на некую живописную художественность, на взаимосвязанность с искусством живописи или т.п.

5) JuggernautXL + RunDiffusion 8 (realistic) – качество рисования людей может и не всегда падает критическим образом при уменьшении крупности плана, но оно изначально ниже, чем хотелось бы. И оно всё равно падает. У других нейросетей нередко в цифровых и мультяшных стилях рисования качество картинок с людьми выше, но данная сеть крайне неохотно рисует в стилях, отличных от фотореализма, заставить её сделать это тяжело. Я экспериментировал с ней мало, никаких выдающихся результатов не получил, ничем особым она моё внимание не привлекла.

6) Stable Diffusion XL (general) – мне не понравилось качество графики. Что ни рисовал, выходило так себе, это быстро отбило у меня всякую охоту продолжать с ней работать. При нормальном качестве она наверное была бы недурна. А так… Убого.

7) Tshirt Design Redmond (Tshirt) – «Tshirt» в переводе означает «футболка», судя по всему эта сеть подчёркивает своим названием, что ориентирована создавать картинки для нанесения на футболки (кстати, в Dezgo кажется у всех сетей предусмотрена возможность заказа футболок – после генерации любой картинки под ней появляется кнопочка «shop» - предположительно это как раз заказ футболок с данной картинкой). Людей рисует по-разному. В реализме как правило очень плохо, в мульт часто вообще нет никаких проблем, в смеси, когда вроде бы и стиль рисунка (а не фото), но очень реалистичного, может быть и так и эдак. В целом, получается, она позволяет рисовать людей, просто не во всех стилях (вернее сказать, в каких-то стилях гораздо реже бывает хорошее качество). Стили зачастую сама смешивает, постоянно выдавая что-то иное, чем до этого. Поначалу мне показалось, что это аниме сеть, что она более всего под аниме заточена. Но потом у меня и в реализме что-то качественное начало выпадать, например в стилях «cute realistic render» и «cute photorealistic render», правда это были относительно крупные планы, а при других реалистичные лица размываются. Попробовал рисовать ландшафты, мультяшные прекрасно, особенно в стиле Pixar, реализм у меня не очень прокатил, все ландшафты не мульт получались в лучшем случае в стилистике книжных иллюстраций. Излишне много ландшафтов мне порисовать не удалось, почему-то сеть стала часто подвисать, чуть-чуть порисует, и потом задумается на 30-50 минут, и так зад перёд, вследствие чего мне пришлось отказаться от дальнейших попыток рисовать в ней. Жаль, вроде бы что-то интересное как раз стало получаться. Проблема подвисаний присуща не только Tshirt, в некоторых других XL сетях тоже имела у меня место. Однако Tshirt выделяется в этом плане, в других сетях обычно ну пять минут, ну десять, а тут 30-50 чуть ли не норма. Если она повисла у вас более чем на 10 мин, стоит переоткрыть окно сайта и перезапустить, есть шанс, что она через минут пять всё же проснётся и что-то нарисует.

Одним из недостатков генераторов картинок размеров XL в Dezgo является отсутствие функций перерисовок для них. Естественно, ничто не мешает вам воспользоваться обычными перерисовщиками (не XL), но там не будет XL сетей, вам придётся перерисовать какой-то другой сетью, не той, какой картинка была создана, и значит ничего чрезмерно похожего на исходную картинку вы не получите, не говоря уже о более мелких размерах. Да и перерисовать другими сетями выходит далеко не всегда, порой лица и тела персонажей очень деформируются. Но конечно главная проблема XL сетей не в перерисовках, а рисовании людей. Почему они делают это настолько плохо, настолько хуже, чем сети не XL, большая загадка для меня. Надеюсь когда-нибудь ситуация исправится. Скорее всего однажды добавятся новые XL сети, более адекватные. Вот и всё.

Здесь можно посмотреть примеры картинок для сети «JuggernautXL 9» - https://dvo.my1.ru/dez/pics_j9.html. Изначально я надеялся сделать что-то подобное для многих сетей Dezgo, но оказалось, это чересчур трудоёмко, нереалистично в моём случае по затратам времени.



XL сеть «PurpleSmart.ai’s PonyXL 6 (artistic)»

Как и обещал, отдельно рассказываю об XL сети «Pony» (не путать с одноимённой сетью XLL). Она как раз новая, недавно добавленная. Я бы не назвал её прям во всём адекватной. В чём-то даже как раз наоборот. И тем не менее. По умолчанию эта сеть предлагает очень гадкое качество, что ни попробуешь рисовать, выходит серо туманно размыто, и никакими параметрами в тексте у меня исправить это не вышло. Может быть вследствие недостаточного опыта. И с рисованием людей в ней тоже как будто удручающе обстояли дела, в ответ на любой текст у меня получались исключительно габаритные дамы лет 30-ти с неказистыми кривыми лицами, в тех же в серых размытых тонах. На указание возраста не было никакой реакции. Я поначалу даже был уверен, что сия сеть предназначена именно для рисования пони, а из людей только и может габаритных неказистых дам под 30 лет порождать. Что в ней другого не предусмотрено. Попробовал рисовать ландшафты, например по тексту «(fantasy world)+++», та же туманная серость, и почему-то те же дамы 30-ти лет. Причём чаще всего как минимум наполовину без одежды. Интересные взгляды на фантазию. Задал текст: «girl. bright colors», довольно часто выскакивали картинки с персонажами опять же почти без ничего. По какой-то загадочной причине я решил попробовать исправить размытость и серость через негативы. Оснований полагать, что это может помочь, у меня не было. Ну вот захотелось проверить. Предположил, что негативы по умолчанию из не XL функций тут не помешают, скопировал их оттуда сюда, добавил к ним сколько-то слов для усиления контрастности, устранения эффекта водяного размытия, запрещения блёклых цветов. И с первого раза всё получилось. Картинка стала идеальной. Вот такие негативы у меня вышли в результате:

monochrome, watercolor, dim, ugly color, low quality, fog, low contrast, poorly drawn, poorly drawn eyes, ugly, tiling, poorly drawn hands, poorly drawn feet, poorly drawn face, out of frame, extra limbs, disfigured, deformed, body out of frame, blurry, bad anatomy, blurred, watermark, grainy, signature, cut off, draft

Я попробовал рисовать по одному и тому же тексту с этими негативами и без них, разница была просто чумовая, без - мерозкорожая дама в серой бесцветной пелене, с – дама модельной внешности отличного 3d качества, и никакой тебе серости. Главное, что я обнаружил, задав негативы – у этой сети вообще не наблюдается зависимости качества картинок людей от крупности плана в большинстве стилей рисования. В некоторых стилях есть, но в основном нет. Особенно в мультяшных – cartoon, anime, artistic. Но и в 3d высокого реализма тоже. До неё я пожалуй ещё не видел в Dezgo сетей, чтобы вот так – рисуй персонажей хоть мелкими, хоть крупными, хоть в портретной ориентации (вертикальной), хоть в ландшафтной (горизонтальной) – всё едино. Везде качество просто отличное. Так что я заинтересовался ей всерьез, потратил сколько-то времени на ознакомление. У неё есть ряд недостатков, один из которых – она крайне нестандартно воспринимает текст, указывающий рисовать людей. Слово «girl» обычно порождает крупногабаритных дам под 30 лет (стиль аниме исключение), указание возраста часто игнорируется. Я долго думал, тут нельзя рисовать людей моложе. Оказалось, нет, можно, но не всегда, всё зависит от того, в каком стиле ты рисуешь. Во-первых, стоит отметить, что в хорошем качестве люди воспринимаются несколько моложе, посему и без управления возрастом дамы нередко выглядят на 25 и менее, что уже вполне приемлемо. Во-вторых, в стиле аниме вроде бы возраст неплохо управляем, в производных стилях от него хуже, но всё равно регулируется (допустим, в стилях «anime render», «anime cartoon», «anime realism»). В-третьих, если не указывать стиль, возраст тоже становится изменчив в определённых пределах, правда более случайным образом – могут выпасть картинки случайного стиля случайного возраста. Ну и в-четвёртых, во многих стилях можно переключать возраст на детский с помощью слова «child». Это совершенно не работает в стилях полного реализма «realistic» и «photorealistic», но к примеру в производных от них вроде «cute photorealistic render» или «realism» работает. Возраст необходимо указывать после слова «child», но не до, впрочем, я до конца не уверен, что таковое указание хоть на что-то влияет, то есть что возраст не устанавливается случайным образом, например попытки сделать его относительно большим («child 17yo») не увенчались у меня успехом. Также следует учитывать, что некоторые слова отменяют действие слова «child». Скажем, указание пола «female», и даже «professional shot» (профессиональное фото). Ну а некоторые слова отменяют его действие или нет в зависимости от того, в каком месте текста находятся. В общем, тут всё со странностями. Совершенно не поддавалось у меня никакими средствами управление возрастом в стилях «realistic» и «photorealistic» (и самое смешное, что поначалу-то я пытался рисовать здесь только в них, откуда же мне было знать, что они у сети Pony такие особенные). В них дамы тяготеют к крупности тел и возрасту лет 25-30.

Другой занятный момент, который наверное тоже должен быть отмечен – по-моему «PonyXL 6» всё же ориентирована на контент 18+. Это пожалуй единственная из нейросетей Dezgo, сама регулярно проявляющая инициативу в данном направлении. Персонажи женского пола тут тяготеют нескромно одеваться и показывать разные части своего тела (именно показывать, намерено демонстрировать, допустим, оттянув край одежды). Без всяких указаний на то с вашей стороны. Просто пишете «girl», и наверняка что-то такое да будет вылезать периодически. У меня особенно проявилось это почему-то в стиле «cartoon» (мультяшном). В прочих заметно реже. Вроде бы и другие сети Dezgo порой оставляют персонажей без одежды, в чём разница? В том, что в других сетях это как будто случайность – ну вот застали мы волей случая персонажа в такой момент его жизни, когда он не одет. А тут он одет, но специально показывает нам что-то, чего не надо бы. Подчеркну, без какого-то намёка даже на намёк на таковое пожелание в вашем тексте. К тому же здесь это происходит гораздо чаще, чем где бы то ни было. Проверил, как «PonyXL 6» рисует ландшафты. Кажется, она для этого не очень подходит, что ни напиши, допустим «сад фей» или «фантазийный мир», практически со 100% вероятностью тебе нарисуют габаритную даму лет под 30. Написал «5 кошек». Угадайте, получил 5 кошек или опять даму? В общем, тут сильно не разбежишься, и какие-то сложные сказочные или фантастические сцены нарисовать сомнительно что получится. Миленькие пони, фурри и т.п., миленькие персонажики мульт и аниме, девушки, склонные к нескромности нарядов, ну и контент 18+. Кажется, это весь спектр того, что здесь доступно для рисования. Или почти весь, чтобы уж не быть голословным, попробую ещё несколько картинок сгенерировать. «Динозавры» – рисует, своеобразных, но всё же. «Планета диких роботов» – дама под 30 лет. «Дикие роботы» – дама под 30. «Звёздные войны» – девушка лет 25, в платье столь оригинального покроя, что оно не просто совершенно не скрывает, скажем так, «верх», но пожалуй служит для его более эффектной демонстрации. «Монстры в лесу» – девушка лет 25 в лесу в одних стрингах. Интересно, ей не холодно? Проверка завершена. Есть ощущение, что эта сеть специально маскируется под детскую примитивную. Гадкое качество по умолчанию, пони. Чтобы кто не в курсе, пошёл мимо и не обратил на неё внимания. Ну или я чего-то не понимаю.

Остаётся сказать по поводу пони. В отличие от меня, нейросети знают сериал «My Little Pony» прекрасно, знают если не всех то многих его персонажей. Что позволяет использовать образы последних. Я немного покопался в интернете, нашёл следующих пони:

  • Fluttershy – розовая грива.
  • AppleJack – желтая грива.
  • Twilight Sparkle – тёмная грива, фиолетовая кожа.
  • Princess Luna – синяя грива, тёмная кожа.
  • Pinkie pie – розовая кожа, тёмно розовая грива.
  • Rainbow Dash – голубая кожа, радужная грива.
  • Princess Celestia – белая кожа, многоцветная грива.

Они имеют довольно своеобразный вид, особенно в плане причёсок, это можно пересаживать с них на своих персонажей, например: «Cute girl, (Fluttershy hair style)++» по идее должен нарисовать девушку с длинными пышными розовыми волосами, а «Cute girl, (Rainbow Dash hair style)++» нарисует девушку с разноцветными волосами. Самих пони по моим ощущениям всё же лучше рисует именно XLL версия «PonyXL 6», там они симпатичнее выходят (но там ниже общее качество графики). Антропоморфные пони ещё более симпатичные создания как будто, только если по умолчанию пони в обеих сетях «PonyXL 6» – это малыши, антропоморфность делает их взрослыми, и порой тоже нескромно одетыми. Чтобы вернуть их в возраст малышей, опять же подходит слово «child», пример:

a child 5yo anthro pony in a pink blanket.
a child 5yo anthro Fluttershy in a blue blanket.

В антро варианте вроде бы и XL сеть вполне симпатично рисует пони.



Text-to-image

Генерация картинок по тексту. Максимально возможные размеры картинок: 384x672 или 672x384, или в варианте квадрата 512x512. В платном режиме вроде бы можно увеличить картинку в два раза, однако как это работает, я не проверял, опция называется «upscale», как и функция увеличения изображений Dezgo, если она и означает то же самое, просто увеличение, то особого смысла платить лишь за то, чтобы тебя избавили от одной промежуточной операции, я не вижу, а если это именно рисование в удвоенных размерах, то тогда безусловно в платном режиме можно будет создавать гораздо более качественный графический контент. В данный момент функция text-to-image позволяет выбирать для рисования между 31-ой нейросетью. Нейросети преимущественно трёх видов – рисующие реалистично, в стиле аниме или нечто промежуточное между аниме и реализмом. Но есть и другие, например, создающая примитивные рисунки, словно наброски непрофессионала от руки. Или рисующая в основном фурри и индиго (людей-кошек и людей-собак). Ну и помним, что благодаря функциям перерисовки нет проблемы менять стиль рисунка – получили удачную картинку аниме, а вам хочется воплотить её в реализме – идём и перерисовываем, это не будет 100 процентная схожесть, но тем не менее.

https://dezgo.com/txt2img

В принципе мне более нечего сказать про эту функцию. Это генератор картинок, и что тут ещё говорить. Все её настройки я описал выше в других главах, а про не неё саму и её работу как можно писать что-то в обобщающем ключе, если в ней 31 нейросеть, и каждая работает по-своему, иначе, чем остальные? Каждая сеть требует отдельного изучения, отдельного поиска наиболее эффективных или эффектных методов рисования именно в ней. Чего я естественно не делал – это нереально времязатратно, и требует знаний, коих у новичка нет. Вам придётся экспериментировать с ними самостоятельно. Ещё недавно, буквально в начале этого лета (2024) функция Text-to-image была основной для Dezgo, именно на неё он автоматически перекидывал вас при заходе на его сайт. Затем он сделал ставку на XL, теперь вот на flux, тем не менее Text-to-image долго была для него основной, потому у неё много нейросетей, потому она сочетаема с функциями редактирования Dezgo, потому её картинки не требуют никаких манипуляций с резкой на части при увеличении в функции upscale, и качество графики у отдельных из них очень высокое. В общем, до сих пор у неё много значимых достоинств. Ну и главное для новичка, она по умолчанию рисует хорошо, в ней не нужны танцы с бубном, чтобы добиться красивой картинки. Вроде бы flux тоже рисует хорошо, только там одна сеть, а тут 31, там не поддерживается то и сё, а тут поддерживается всё, если не в одной сети, так в другой, там качество установлено с перебором, порой режет глаз, или выглядит противоестественно, а тут нет, там чёткость так задрана программно, что картинку даже нельзя растянуть на весь экран, она сразу теряет в качестве, а тут наоборот, после увеличения upscale порой становится качественнее, и растягивается всё тоже отлично. Может быть (и даже наверняка) через какое-то время вследствие своей мелкоразмерности text-to-image полностью утратит для Dezgo актуальность, будучи вытеснена более качественными XL, flux и т.п. сетями, но на данный момент на мой взгляд это не так, она всё ещё имеет смысл.

Далее я приведу краткое описание нейросетей данной функции. При этом опять же повторюсь, у меня не было ни времени ни знаний, чтобы качественно и досконально ознакомиться с ними, все мои выводы о большинстве из них – поверхностные, сделанные на основе генерации буквально 10-20 картинок по очень простым текстам (вроде: «миленькая девушка», «три котёнка», «динозавр на охоте», «мир фантазий», «монстры в дикой природе»), чего совершенно недостаточно. Фактически всё, что я о них напишу тут вам, не имеет значимости, вам придётся делать собственные выводы на основе собственного опыта работы с ними, а моя писанина о них – просто небольшая крупица дополнительной не самой точной информации, которая надеюсь, хоть чуть-чуть может быть кому-то полезна. На примере сетей пони мы видим, что иные сети не спешат раскрывать вам сразу все свои козыри, даже порой наоборот, словно пытаются отвадить от себя, надо сильно постараться, чтобы получить от них нечто качественное и эффектное. Каждая сеть требует освоения. Это пожалуй недостаток Dezgo – где взять столько времени на всё? Ну, мы можем делиться друг с другом своими впечатлениями или достижениями, и так совместно более быстро прогрессировать в работе с ним. Здесь и сейчас я именно это и делаю – делюсь с вами своими любительскими впечатлениями.

  1. RealDream12 (realistic) – рисует преимущественно в полной реалистичности, в других стилях (мульт, аниме, и т.д.) картинки генерирует неохотно, при том что и в них показывает по-моему тоже очень неплохие результаты. Отличный реализм персонажей (на мой вкус), хорошая фантазия у сети (может порождать интересный наполненный деталями контент, в том числе в ответ даже на текст из нескольких слов). Поддерживает некоторые спецэффекты (на что способна далеко не каждая сеть). Есть небольшая тенденция к обнажению (изредка обнажает персонажей случайным образом без всяких указаний на то с вашей стороны, риск чего я бы оценил где-то в 1-2%, ну то есть при рисовании людей примерно одна или две картинки из 100 будут вам выпадать не самого приличного содержания). Хорошее качество графики. В целом дружественная к новичкам сеть, не требующая прилагать великих усилий, чтобы получить качественные или интересные изображения.
  2. AbsoluteReality 1.0 (realistic)
  3. AbsoluteReality 1.6 (realistic)
  4. AbsoluteReality 1.8.1 (realistic) – отличный реализм персонажей, но иногда (относительно редко) имеет место определённая проблема с пластиком (персонажи выглядят немного словно сделанными из пластика). Неплохая фантазия. Хорошая сеть (вроде бы).
  5. AnyLora (general) – по умолчанию рисует в стиле 2d аниме, но может в разных стилях, кажется, кроме полного реализма – максимум, способна на очень реалистичное 3d. Ухудшение качества от уменьшения крупности плана выражено относительно слабо, а в 2d мульт стилях отсутствует вовсе. Что в принципе позволяет рисовать даже в ландшафтной ориентации. Может создавать достаточно оригинальный контент – несколько картинок (из тех немногих, что я вообще тут сгенерировал) меня приятно удивили. Рисовал монстров, получил существ в духе лучших аниме мультфильмов. Интересная сеть.
  6. Anything 3.0 (anime)
  7. Anything 4.0 (anime)
  8. Anything 5.0 (anime) – рисует в стиле аниме мультфильмов и аниме арт. Персонажи у меня получались здесь не очень, как-то примитивновато, а вот фантазийные сценки вроде ничего, как минимум некоторые, хотя и без излишней эффектности.
  9. Arthemy Comics GT (drawing) – может создавать картинки в ряде специфических стилей, каковые я бы обозначил смесью рисунка (drawing) и полуреалистичного аниме. Никаких сколько-нибудь стоящих результатов я тут получить не смог, часто имел проблему с размытием лиц персонажей при недостаточно крупных планах.
  10. Dark Sushi Mix v2.25D (anime) – 2d аниме. Людей рисует примерно в одном стиле.
  11. Deliberate 2 (general) – поддерживает разные стили, если не задавать стиль, у меня тяготела к реализму. Впрочем, это кажется очень зависит от конкретного текста, для некоторых у меня всегда выбирался реализм, для некоторых всегда художественный рисунок или «photo render», и сменить их на реализм не очень-то удавалось. Качество реализма по-моему несколько уступает сети RealDream12, здесь лица чуть более плоские и словно яркости им слегка излишне добавлено, иногда кажется, будто лицо или голову искусственно приляпали к телу, как-то неестественно смотрится. Иногда могут быть некоторые проблемы с пропорциями анатомии. И тем не менее, в целом рисует в реализме хорошо. Порой выдаёт картинки нормального качества даже при относительно мелких планах (и в реализме, и в других стилях). По моим ощущениям данная сеть - эдакий промежуточный вариант между реализмом и не реализмом, может многое, что и он, но слегка не дотягивает до него в разных отношениях, зато способна в близких к нему стилях выдавать схожие с его возможностями результаты. Но опять же я тут не рисовал слишком много.
  12. Dreamix 1 (3d remder) – прикольная сеть, рисует очень оригинальных миленьких большеглазых 3d-аниме персонажей, в 3d у многих сетей вообще проблема рисовать хорошо, особенно если не крупным планом, тут с этим как будто всё отлично. Порисовал какие-то сцены – город, монстров, мне практически всё понравилось, симпатичная сеть, рисующая в стиле художественных 3d-мультфильмов.
  13. DreamShaper 5 (general)
  14. DreamShaper 6 (general)
  15. DreamShaper 7 (general)
  16. DreamShaper 8 (general) – вроде бы неплохая сеть, рисующая в разных стилях включая полный реализм (у последнего у персонажей иногда несколько плосковатые лица). Реалистично рисует даже в стиле «drawing+++» (рисунок), то есть это явно рисунок, но почти как фото (при этом стоит в негативах прописать «drawing paper, monochrome» чтобы рисунки не были листком бумаги или чёрно-белыми). Стиль «digital art» хорош, если не слишком мелким планом. В стиле аниме есть проблемы с качеством графики. Стили рисования не всегда легко управляемы, кажется, это зависит от задаваемого вами текста. В общем, хорошая сеть, способная рисовать красиво и интересно, особенно если потратить время на освоение работы с ней (чего я не делал).
  17. Epic Diffusion 1.1 (general) – может рисовать и в полном реализме, и в других стилях, в реализме есть шероховатости, крупным планом вроде неплохо, а чуть отодвинется персонаж в кадре, уже какие-то искажения анатомии (более всего голов), пусть и незначительные, часто у меня наблюдались. Занятно рисует монстров. Наверное что-то стоящее получить в ней можно, у меня за мои непродолжительные эксперименты несколько интересных картинок выпало. Но качество графики в целом тут не самое лучшее (по моим ощущениям). И очень зависит от крупности плана.
  18. FurryToonMix (drawing) – из персонажей рисует фурри (людей-кошек) и людей в определённом наборе 2d и 3d аниме стилистик, в чём-то схожих. Ну то есть нельзя сказать, что стили аниме, cartoon и realistic тут кардинально разнятся, но всё же они отчасти неодинаковы. В 3d render может достаточно симпатично рисовать, если более-менее крупным планом. Сценки фантазийные вроде выходят неплохо. Нормальная аниме сеть. Не всегда удаётся управлять видовой принадлежностью персонажа. Указываешь «girl», и в некоторых текстах получаешь только фурри (и добавление слова «human» не помогает), в некоторых только людей.
  19. GhostMix v2 (anime) – стилистика персонажей своеобразная, что-то вроде «anime art». Качество графики в некоторых стилях малость неудовлетворительное, в некоторых нормальное. В 3d стилях (допустим «3d realistic+++ render») персонажи могут выглядеть довольно реалистично. Ничего особо интересного у меня тут не вышло, однако я бы не сказал, что это прям плохая сеть. Тем, кому нравится аниме арт, она, полагаю, вполне может приглянуться.
  20. Indigo Furry mix v120 hybrid (drawing) – рисует фурри (людей-кошек), индиго (людей-собак) и людей. По умолчанию чаще всего рисует фурри. Может создавать картинки в любых стилях от полного реализма до аниме, мульт и т.п. При этом конкретно в полном реализме у меня не всегда получалось заставить работать данную сеть.
  21. Juggernaut Reborn (realistic) – реализм. Хорошее качество, прикольно рисует животных и монстров. Вроде достойная сеть с большими возможностями. Помимо реализма умеет генерировать картинки и в некоторых других стилях, но фон по-моему практически не способна рисовать иначе чем в реализме, за исключением отдельных стилей вроде painting или cartoon. Ну или надо жёстко плюсить, например вот так я смог придать и фону и персонажам стиль аниме: «(artistic anime+++)+++».
  22. NightmareShaper (general) – может рисовать в разных стилях. Полного реализма тут кажется нет, но что-то очень близкое к нему есть. Тоже вполне достойная сеть по моим ощущениям.
  23. RealCartoon3D 13 (artistic) – аниме. Рисует персонажей приблизительно в одном стиле – если пытаться задавать стили, отклонения от него будут, но как бы это всё равно будут вариации того же стиля, который я бы обозначил как «аниме реализм». В качестве вариаций можно получить в том числе что-то очень близкое к полному реализму. Хорошая сеть – если вам нужен аниме реализм.
  24. RealCartoonAnime 10 (anime) – по моим ощущениям она в какой-то мере аналог предыдущей сети, но с меньшей трёхмерностью, от 2d до 2,75d – где-то в таком диапазоне может создавать картинки, это влияет на глубину некоторых графических эффектов, они выглядят чуть поскромнее. Ближе всего к реалистичности у меня получались результаты в стиле «3d photorealistic». Тоже вполне неплохая немного специфическая аниме сеть.
  25. RPG 5 (artistic) – реализм. «Artistic» это что-то типа «художественный». Получаем «художественный реализм», что вроде бы вполне соответствует действительности. Хорошая своеобразная сеть, может рисовать красочно и необычно, с рисованием людей как будто есть определённые шероховатости, но при этом лица отличаются красотой. Не любит никаких иных стилей кроме реализма, заставить рисовать в чём-то отличном от него непросто, и возможно потребуется использовать в том числе негативы (я указал в них «3d+++», и лишь после этого мне удалось получить рисунок, отчасти словно карандашный). В аниме мне рисовало по «(anime drawing)++». На плюсики в данной сети повышенная реакция, поэтому тут их надо использовать с осторожностью, а без большой нужды вообще лучше не использовать. При недостаточно крупных планах лица сильно искажаются.
  26. Stable Diffusion 1.5 (general)
  27. Stable Diffusion 2.1 (512pix) (general) – неудовлетворительное качество графики не вдохновляет на эксперименты с данной сетью.
  28. Toonify 2 (drawing) – 2d мультяшный стиль примерно в одной стилистике.
  29. Vintedois Diffusion (simple general) – на максимально простой текст «cute girl, summer day» выдала мне первыми несколько красивых картинок в стиле художественного реализма, но все мои последующие попытки задавать более сложные тексты и управлять стилями рисования к положительным результатам не привели. Постоянно получал странное качество, постоянно имел проблему с размытием (лицо и фронтальная часть одежды персонажей обычно не размыты, а всё остальное размыто, у животных глаза не размыты, шерсть размыта). В общем, я так и не понял, как управляться с этой сетью.
  30. Waifu Diffusion 1.4 (anime) – по умолчанию (если не задавать стиль) рисует буквально каракулями. Но она способна даже на фотореализм, правда персонажей при этом создаёт не самых симпатичных (мягко говоря). Попытки рисовать в разных стилях у меня успехом не увенчались, я ещё, помимо каракулей и фотореализма, получил картинки вида старинных примитивных аниме, вот фактически и всё.
  31. YesMix 4 (anime) – аниме 2d, без особых вариантов. Если заплюсить, к примеру, стиль photorealistic, можно придать сколько-то объёма (трёхмерности).

Для сети RealDream12 я сделал пример картинок, посмотреть можно тут: https://dvo.my1.ru/dez/pics_rd12.html. Это не какое-то всестороннее её представление, это просто небольшая демонстрация её возможностей, показывающая, что она способна нарисовать всего лишь по двум словам (если удачно их подобрать).



Controlled Text-to-image

Перерисовка картинки по тексту. Снова повторю, о чём говорил в кратком описании. Фактически это тоже генератор изображений, не редактор, предоставляемая исходная картинка для него как шаблон, с которого он считывает параметры и может воспроизводить их с заданным разбросом. Потому он совершенно не зависит ни от её качества, ни от размеров. По сути это расширенный аналог функции text-to-image, отличающийся от неё лишь тремя дополнительными опциями, создаёт изображения того же размера (384x672, 672x384 или 512x512), предлагает выбор из тех же самых 31-ой нейросети. В кратком описании вы найдёте чуть больше объяснений, что такое Controlled Text-to-image, здесь я их приводить ещё раз не буду, исходя из мысли, что они вам уже известны.

https://dezgo.com/controlnet

Ключевые опции:

Prompt – текст с описанием, как должна выглядеть конечная картинка. Важно отметить, если мы перерисовываем картинку с целью именно редактирования, т.е. хотим внести в нём некие изменения, но в целом сохранить максимально похожей, нам весьма вероятно понадобится тот текст, по которому была сгенерирована исходная картинка. Таким образом, при генерации картинок (скажем, в функции text-to-image), если в будущем есть вероятность, что мы станем их править перерисовкой, нам обязательно нужно сохранить текст, с помощью которого они были сгенерированы (ну или его можно взять непосредственно из картинки, как мы помним, Dezgo сохраняет его там, открывайте её блокнотом, и он будет вверху). Иногда картинку можно перерисовать похожей без исходного текста, иногда нет. Потому его желательно иметь. Вообще, задать текст так, чтобы нужные нам изменения произошли, а ненужные нет, непростая задача. Порой приходится поломать голову, как это сделать. Бывает, как раз с исходным текстом ничего не получается, а упростишь его прям до отдельных слов, и всё рисуется как надо.

Control scale – задаёт (в процентах от 0 до 100), насколько нужно сохранять контент исходной (перерисовываемой) картинки. По умолчанию установлено на 100%, что означает указание сохранять исходный контент максимально неизменным. При этом даже на 100% похожесть нам вовсе не гарантируется, это зависит от нескольких ключевых моментов – от того, сгенерирована ли исходная картинка в Dezgo или взята со стороны, от того, что за текст мы задали в prompt, в каком режиме перерисовываем, какой сетью, и т.д.

Control model – режим перерисовки. Задаёт, какой тип структуры следует извлечь из исходного изображения. Ну или иначе, какой из типов его структур будет считаться контрольным. Возможные режимы:

  • Canny Edges – основные края.
  • Depth Map – карта глубины.
  • Line Art – штриховое искусство.
  • Straight Lines – прямые линии.
  • Normal Map – карта нормалей.
  • Scribble – каракули.

У каждого значения есть поясняющая картинка, по которой можно сделать хоть какие-то выводы, что оно подразумевает. Например, рядом с Line Art нарисована чёрно-белыми штрихами морда волка, указывая, что для этого параметра важны только основные штрихи. Цвета, мелкие детали не имеют значения, то есть их легко менять. Таким образом, в Line Art нетрудно перекрашивать одежду, перекрашивать волосы, ну и т.д., а позы (если говорить о рисовании людей) он сохраняет. Для ясности – я в этой функции экспериментировал только с рисунками персонажей. Ландшафты и тому подобные картинки, где персонажи отсутствуют, это по сути фон, я даже не уверен, возможно ли его вообще тут перерисовывать. Конечно скорее да, чем нет. Но это такая морока, такой пласт необходимых действий – попробовать с различными control model (а их 6), в каждом control model попробовать во всём диапазоне шкалы процентов control scale. Надо подобрать какие-то картинки, в которых вообще есть что править. С людьми всё понятно, в них можно править много всего – окружающую обстановку, позу, крупность плана, положение в кадре, физиономию, одежду, причёску, выражение лица (эмоции, улыбку добавить), стиль рисунка. А фон… это фон, его наверное проще сгенерировать новый, чем за него цепляться, если он чем-то недостаточно хорош. Так или иначе, у меня до него не дошли руки. И вообще, мои эксперименты тут носили крайне ограниченный характер. Это многогранная функция, все аспекты которой охватить сложно. По идее, её использование надо разбивать на отдельные операции, и описывать каждую операцию именно по отдельности, например, при восстановлении утраченных областей она ведёт себя так-то и требует таких-то настроек, а при смене поз персонажей так-то. Но пока что планов составлять подобное детальное руководство у меня нет. Вам придётся разбираться с этим самостоятельно. Для примера лишь скажу, Canny Edges 100 (на 100% неизменности) хорошо сохраняет внешность и позы персонажей (но в некоторых случаях поза и на 100% может измениться), то есть если я пытался добиться максимальной похожести на исходный рисунок, я всегда начинал перерисовки с режима Canny Edges 100. Straight Lines легко меняет позы, уже на 100 это делает без труда (причём нередко по своей инициативе), а Canny Edges или Line Art надо опускать процент ниже 50, порой и до 20%, чтобы она существенно изменилась. Генерации картинок по шаблону (когда они сохраняют компоновку исходной, но по деталями на неё совершенно непохожи) у меня хорошо получались на Canny Edges 30 и Line Art 30, правда там и меньше процент нормально заходит, а если вам надо, чтобы пустые области картинки (после исправлений фотошопом) были дорисованы на более высоких значениях параметра «Control scale», возможно не помешает в конце текста в prompt добавить (после запятой или точки) слово «Fix». Ну и про плюсики не забываем – нужные прописанные в prompt изменения можно плюсить.



Image-to-image

Тоже перерисовщик картинок. И как будто даже более простой, чем Controlled Text-to-image, так как из дополнительных настроек (сверх тех, которые предназначены для генерации изображений) имеет лишь один ползунок «Strength», регулирующий процент допустимых изменений. Но есть нюанс. Перерисовка происходит очень странным образом. Я уже много сказал на эту тему в кратком описании. После того, как я поэкспериментировал с данной функцией, пробуя понять, что она такое и для чего нужна, я уверен (это моё предположение), что она генерирует картинку по вашему описанию, но вам её не показывает, вы даже не узнаете, какая она. И на основе слияния сходных мест этой картинки и вашей исходной в указанных в Strength пропорциях вы получаете новую картинку, ваш результат перерисовки. Увидеть сгенерированную картинку можно единственным способом – если установить Strength в 100%, тогда исходная картинка перестанет влиять на конечный рисунок, и соответственно функция Image-to-image превратится просто в генератор изображений.

https://dezgo.com/image2image

Повторение из краткого описания: принимает исходные картинки в размерах не более 512x512, если они больше, при загрузке на сайт они будут автоматически пропорционально уменьшены. Создаёт картинки тоже не более 512x512, соответственно, если перерисовываемое изображение имеет не квадратную, а вертикальную или горизонтальную ориентацию в стандартных для Dezgo пропорциях, на выходе это будет 288x512 или 512x288, что мелковато. Но можно исправить ситуацию путём дополнительной перерисовки уже в Controlled Text-to-image, так мы увеличим картинку до стандартных размеров 384x672 или 672x384.

Я пытался редактировать изображения этой функцией. Мне не понравилось, неудобно. На малых процентах Strength мало что можно изменить, а чем ставишь их больше, тем сильнее изменяется вообще всё, причём тривиальная задача просто перекрасить одежду порой не решалась у меня вплоть до 80-90%, когда исходная картинка меняется уже кардинальным образом. На 50-70% иногда мне те или другие изменения внести удавалось, иногда нет. В общем, это весьма специфический инструмент со своими интересными в чём-то уникальными возможностями, но применение которым надо ещё постараться найти. Добавлю, что по моим ощущениям эта функция имеет определённую переменность результата, зависящую от прошлых параметров. Они как будто сохраняются какое-то время и продолжают влиять на следующие результаты. Ну или она просто работает с некоторым разбросом. Бывает, она на определённом проценте изменчивости порождает одни те же сходные результаты, а потом изменил процент, порисовал на другом, вернулся опять на этот, а уже получаем что-то другое, чем ранее.

В настоящий момент наиболее эффективное применение, каковое я нашёл данной функции – это преобразование картинок из стиля одной нейросети в стиль другой, например из аниме в реализм, с управляемым процентом трансформации. Тут она реально удобна. Я проделал несколько таких экспериментов, в первом взятая для перерисовки картинка исходно была очень реалистичной, но при этом явно рисунком, не 3D, но и не плоским (эдак 2,5D можно назвать такое), содержа двух персонажей. Меняя Strength с шагом в 10% с преобразованием в реализм я получал следующие результаты:

  • 10% - практически нет изменений.
  • 20% - тоже минимальные изменения.
  • 30% - кожа в более мягких тонах стала отображаться.
  • 40% - глаза подуменьшились с анимешно больших до нормальных, но физиономии остались хорошо узнаваемыми во многом похожими на исходные.
  • 50% - пороговой величины достигла смена стиля, уже очень заметным стал реализм. Одежда начала меняться в расцветке.
  • 60% - очень похожие на исходные физиономии, но реализм уже полный (по моим ощущениям), немного изменилось положение ног, одежда слегка изменилась по дизайну (в отдельных деталях).
  • 70% - произошла смена физиономий, это уже явно другие персонажи стали, смена причёсок, чуть изменился наклон голов, заметно изменился дизайн одежды, хотя всё равно во многом остался близким к исходному.
  • 80% - это уже были совершенно другие персонажи, другие позы, другая одежда, ничего от исходного рисунка не осталось, кроме того, что персонажей двое и они стоят рядом.

Тут лишь надо понимать, я задал текстом рисовать двух персонажей, и всё, и никаких лишних деталей, а если бы я прописал детали, рисунок менялся бы быстрее и более существенным образом.

Эксперимент 2. Картинка анимешной большеглазой принцессы в красивом платье, сидящей на троне. Преобразование в реализм.

  • 20% - чуть объёма прибавилось у физиономии.
  • 30% - глаза уменьшились, лицо утратило гармоничность черт, стало неказистым.
  • 40% - глаза ещё уменьшились.
  • 50% - глаза стали щёлочками, уйдя в явно азиатскую стилистику, заметно изменилось узорное окаймление трона, платье немного изменилось в оттенке и узорах.
  • 60% - лицо нормализовать, стало довольно миленьким и красивым, правда от исходного в нём ничего не осталось, украшение на голове изменилось на совершенно другое, причёска изменилась, дизайн трона существенно изменился, платье примерно осталось тем же, но как бы обрело явно большее изящество и узорность. В целом реализм уже достигнут.
  • 70% - лицо снова полностью изменилось, стало абсолютно непохожим на предыдущее, причёска изменилась, украшение на голове изменилось, трон сильно изменился и упростился по дизайну (я в тексте для перерисовки не указал, что он вообще есть и она на нём сидит, я написал «cute girl in beauty dress», видимо поэтому не указанные в тексте детали стали стремиться к упрощению). Платье заметно изменилось по дизайну, но как минимум по размерам и окрасу осталось примерно тем же – ровно той же длины юбка, всё так же нет рукавов, вроде и похоже и не очень. Изменилось положение ног. Реализм изображения полный.
  • 75% - лицо снова кардинально изменилось, причёска изменилась, украшение для головы изменилось, платье изменилось по дизайну более существенным образом, трон преобразовался в большой деревянный стул. Заметно изменилось положение принцессы в кадре, исходно она отображалась как бы чуть сверху, под некоторым углом, а теперь никакого угла, прямое фронтальное отображение.

Ну и третий эксперимент – я попытался перерисовать 2D аниме картинку с одним персонажем в реализм, для начала сделал это функцией «controlled text-to-image», но результат был отвратительным, лицо персонажа сжалось, превратившись в отталкивающее, подбородок фактически исчез, глаза выпучились, сохранив характерный для аниме увеличенный размер. Вот тогда я и подумал, а что если промежуточное преобразование сначала сделать, неполное. Попробовал на 40% преобразовать, результат неудовлетворительный, попробовал на 70, и на третьей попытке мне выпала картинка с красивым лицом, которое теперь сохранялось и при перерисовках в «controlled text-to-image». С другой стороны, в результате от исходной картинки у меня в трансформированной остались только поза, сходный дизайн одежды, причёска (правда анимешная, очень сложная, такую в реализме обычно не рисуют нейросети), ну и относительно похожий фон. В целом не очень-то похоже, другой персонаж, другая картинка, так что зачем это всё может быть надо, если не ради экспериментов, как я, этим занимаешься… я не знаю, зачем.

Пожалуй на основании моих экспериментов можно прийти к следующему заключению – в районе 60% Image-to-image позволяет генерировать картинки очень близкого к исходному содержания, внося в них определённые изменения некардинального характера. Лица персонажей на этом проценте заметно изменятся, мелкие детали тоже, но общая компоновка останется практически той же – стилистика и покрой одежды, позы, расположение предметов, особенности окружающей обстановки и фона. Таким образом, генерируя на 60% картинки с чем-то не устраивающей нас исходной картинки, можно попытаться поймать более удачный вариант с лучшими деталями или внесёнными определёнными указанными нами в тексте изменениями. Можно и на 50% пытаться что-то менять, тогда схожесть с исходной картинкой будет ещё выше. Можно и на меньших процентах, только тогда наверное стоит плюсить ключевые параметры в тексте, ну и всё равно вряд ли изменённые детали нарисуются качественно (что по идее не важно, ведь мы можем восстановить качество перерисовкой в «controlled text-to-image»).



Inpainting from text

Перерисовка конкретных деталей. Тут надо вводить два текста: 1) что за объект вы хотите перерисовать, 2) как должна выглядеть конечная картинка. Объект можно изменять только один за раз, насколько я понимаю. Но это не проблема, так как ничто не мешает редактировать изображение поэтапно – сначала одно, потом перерисовываем уже по полученному результату. Пример, как это работает – у меня была картинка девушки с медицинской маской на лице. Идеальный вариант для тестирования данной функции. Я стал пробовать удалить маску. В качестве объекта для изменения указал «mask». В качестве описания конечного изображения сначала указал «no mask», результат получил неудовлетворительный, в следующей попытке указал «cute face» (симпатичное лицо), результат меня не порадовал, в следующей указал «girl» (девушка). И вуаля, получил искомую картинку с девушкой без маски. Что важно понимать. Функция «Inpainting from text» не перерисовывает всю картинку, как прочие перерисовщики Dezgo, она опознаёт заданный объект и перерисовывает только его. То есть когда я удалил маску, у меня полностью перерисовалось лицо (включая верхнюю не закрытую маской его часть), так как это единое целое, немного перерисовался воротник, чуть-чуть отдельные локоны волос. И всё – тело, одежда окружающая обстановка остались нетронуты. Таким образом данная функция позволяет править даже сторонние картинки, а не только именно сгенерированные в Dezgo. Если вас устроит размер. Ну или можно проделать такой фокус – фотошопом вырезать из большого изображения нуждающуюся в редактировании часть, исправить, и снова вклеить фотошопом назад. Не факт, что это сто процентов сработает – зависит от того, какой конкретно контент вы правите и какие вносите в него изменения. Я провёл лишь один подобный тест, у меня всё получилось отлично – разрезал стороннюю картинку, исправил одну часть, склеил обратно. Части соединились прекрасно, никакого шва заметно не было. В качестве отрицательного момента добавлю, был у меня ещё один эксперимент с данной функцией. Вроде с достаточно простой задачей, которую тем не менее я выполнить не смог. Мне нужно было удалить из картинки лишнюю руку. Персонаж стоял рядом с лошадью, и за каким-то чёртом ему нарисовало две правых руки, точнее одна правая рука и ещё правая кисть в дополнение. Кисть я хотел удалить, максимально сохранив весь остальной контент. У меня ничего не вышло. То удалялись обе руки, то заменялась и перекрашивалась одежда. Сколько-то помучившись, я вынужден был отказаться от идеи исправить картинку именно здесь, исправил её перерисовкой по seed непосредственно в генераторе изображений. Там всё как-то гораздо проще прошло.

https://dezgo.com/text-inpainting

Повторение из краткого описания: картинки для перерисовки принимаются в функцию не более чем 512x512 пикселей, если они больше, произойдёт автоматическое пропорциональное уменьшение размеров при загрузке. На выходе можно получить изображение максимум таких же размеров – 512x512. В целом качество исправленной части рисунка здесь наверное выходит несколько хуже, чем у функций, которые перерисовывают всю картинку с нуля, он смотрится менее гармонично. Ну и опять же размеры мельче, если мы рисуем не в квадратной ориентации. Посему далее есть смысл отправиться в функцию Controlled Text-to-image и перерисовать полученную здесь картинку уже там. Зачем тогда её править здесь, почему не сразу там? Там крупные изменения сложно внести в отдельную часть, надо задавать низкий процент сохранения деталей, а когда нужные изменения уже произведены, они будут распознаваться и гораздо чаще рисоваться именно такими и на высоких процентах в Controlled Text-to-image.



Edit image from text

Она же «Edit image with instructions». Редактирование картинки по заданным текстом инструкциям. Примеры инструкций, приведённые в окне функции: «swap X by Y», «add X», «what would it look like if it were snowing?». Что в переводе звучит так: «поменять местами X и Y», «добавить X», «как бы это выглядело, если бы шел снег?». Максимальные размеры загружаемой картинки - 512x512, и на выходе максимум тот же. Не предлагается нейросетей на выбор. Настроек по сути вообще никаких нет, максимально всё упрощено. Я этой функцией практически не пользовался, так, немного поэкспериментировал, чтобы хоть что-то написать тут о ней. Вроде бы она достаточно удобна для замены деталей. Например, легко перекрасила мне одежду на персонаже. Правда дизайн одежды тоже слегка изменился, чего я совсем не заказывал. Это зря, зато лицо осталось полностью неизменным. Указания можно задавать как и в прочих функциях, а не только в виде инструкций. То есть не обязательно писать: «paint the dress white», можно написать «white dress», результат будет ровно тот же. Полагаю, слово «инструкции» в данном случае более служит для подчёркивания разницы с прочими тремя перерисовщиками Dezgo – там везде надо описывать, как должна выглядеть конечная картинка, а тут предлагается указать лишь какие изменения надо в неё внести. Это существенное отличие. Главный недостаток функции «Edit image from text» – качество её рисунков ниже плинтуса. У меня на упомянутой картинке, где черты лица не изменились, само лицо стало наверное раза в два более размытым, если не больше. В таком виде это не имеет смысла. Посему (на мой взгляд) надо рассматривать получаемые здесь результаты исключительно как заготовки для последующей перерисовки с помощью «Controlled Text-to-image». Также отмечу, отсутствие выбора нейросетей создаёт определённые неудобства в том плане, что я не понимаю, с какой нейросетью работаю. Они же разные, воспринимают текст по-разному, обычно тут по умолчанию (в настоящее время) предлагается RealDream 12, но в этой функции вряд ли она, постоянно что-то срабатывает не так, или вообще не срабатывает, т.е. функция подумает, подумает и не нарисует ничего. И приходится искать, как задать ей указания так, чтобы она это приняла. В общем, работе с ней надо учиться отдельно, что неудобно. Но она дополнительный инструмент со своими возможностями, а любые возможности это хорошо.

https://dezgo.com/edit-image



Upscale

Увеличение размеров картинок в два раза. Размеры передаваемой в функцию картинки не должны быть более 768x768, иначе при загрузке на сайт они будут автоматически пропорционально уменьшены, чтобы не превышать 768 пикселей ни по длине ни по ширине. Работает upscale не идеально, но неплохо, иногда по моим ощущениям словно с чёткостью перебарщивает немного, иногда всё отлично, думаю, это зависит от того, что конкретно подвергается увеличению, какой контент. Глаза персонажей всегда при увеличении повышаются явным образом в чёткости и контрастности, это хорошо заметно.

https://dezgo.com/upscale

Кстати, вот ещё известные мне нейросети, где можно увеличивать, в том числе отчасти бесплатно:

  • https://bigjpg.com - бесплатно до 4-хкратного увеличения.
  • https://www.img2go.com/ru - до 4-хкратного увеличения. Бесплатно минимум 10 любых операций. Там можно не только увеличивать, но и генерировать картинки, и разные операции над ними осуществлять. При заходе на сайт вам бесплатно даётся 10 монеток, любое действие стоит одну монетку. С какой скоростью монетки восполняются, я не в курсе. Я применяю небольшую хитрость, заходя на сайт, он меня не запоминает, и потому при каждом перезаходе снова даёт 10 монет, то есть они у меня никогда не заканчиваются. Может он вообще такой щедрый, и без хитростей при перезаходах дарит монетки? Я не знаю, не проверял.
  • https://www.krea.ai – до 8-кратного увеличения. Тоже в том числе и генератор картинок, бесплатно можно генерировать только в размерах примерно как у Dezgo, увеличение после одного бесплатного в следующей попытке уже бесплатно отказался производить, но я попробовал на другой день ту же фишку с перезаходами на сайт, какую применял в img2go, и мне подряд несколько картинок без проблем. Увеличение тут отличается, с одной стороны оно как будто более интеллектуальное, не просто увеличивает, но например, улучшает лица, если они были недостаточно качественными. С другой, мне в первой попытке вроде бы безупречный результат выдало, а в последующих лица персонажей становились менее гармоничными, их словно старило на сколько-то лет. Для увеличения требует регистрации (рисовать в принципе можно и без неё), позволяет это делать на любой почтовый ящик, допускает вход и по аккаунту Google.




Особые параметры


Максимальная крупность плана

В данный момент мне известны 4 параметра, задавая в тексте которые можно добиться максимально крупного плана: Close up, Extreme Close-up, Micro photography, Macro photography.

Close up – показать близко. При рисовании персонажа обычно если в его описании мы указали только одну определённую часть тела, при использовании «close up» будет крупно показана именно она. Если ничего не описали в нём, будет показано крупно или лицо или случайная часть тела. Для надёжности отображения именно желаемого объекта можно его плюсить, или указывать с помощью «focus on», или добавлять после «close up» через «of».

beauty girl. focus on face. Close up.
Cute girl. Close up of face+.
Close-up eyes of cute supermodel girl (этот вариант увидел в интернете. Вроде прекрасно работает)

Close-up позволяет отображать крупно что угодно, не только лицо или глаза. Хоть руки, хоть ноги, хоть, простите, задницу. Работает эта команда по-разному, может очень сильно приблизить (пол лица на весь экран), может так, что в кадре окажется и голова и всё туловище. Надо лишь понимать, что когда вы указываете показать близко какую-то часть тела, Dezgo будет считать, что вы хотите её видеть, а в одежде это затруднительно. Так что вполне вероятно он обнажит её для вас, чем бы она ни была. Или обнажит персонажа целиком. Если же вы указали, что персонаж одет (то есть описали в тексте и его наряд), что будет дальше зависит от конкретной нейросети и наверное отчасти от случайности. «Close up» может не сработать, может сработать на что-то иное, показать крупно лицо, к примеру, может показать заданную часть тела в одежде, персонаж может оттянуть или приподнять одежду в нужном месте, как бы демонстрируя вам в обнажённом виде то в своём теле, что вы пожелали видеть крупно. Ну и так далее. Если добавить после указания части тела слово «область» («area»), есть вероятность, что «close-up» сработает как надо несмотря на одежду и не произведёт никаких обнажений. Однако это ничего вам не гарантирует наверняка, это именно лишь повышает вероятности. Кроме людей крупно можно показать что угодно иное. Бабочку, морду динозавра. Нужно только делать поправку на размеры рисуемого объекта. Морда динозавра – габаритная штука, она конечно приблизится, но не в такой же степени, как лицо человека, будет восприниматься более удалённой. А вот глаз динозавра иное дело, его не проблема отобразить по ощущению словно совсем рядом. Дабы приблизить что-то сильнее, надо плюсить close-up. Минусики снижают приближение, ими стоит пользоваться, если оно получается чрезмерным.

Extreme close-up – экстремально близко. Если речь идёт о лице, обычно отображает не менее чем половину его на всю картинку.

micro photography – не очень крупный объект. Цветок, допустим.
macro photography – некий очень мелкий объект. Пчела, сидящая в цветке.

И для микро и для макро можно не указывать конкретный объект, я написал «лето» («summer, macro photography»), и мне что-то да рисовалось природное, цветок обычно, в макро в более приближенном варианте. Но можно и указать – капля, снежинка, вот такого плана объекты хороши для подобного масштаба. Я попробовал указать девушку, мне то лицо крупным планом, то игнор этого параметра, один раз вместо девушки нарисовало непонятное создание, словно выдра с муху, сидящая в цветке. Кстати, капля воды у меня нарисовалась ещё лучше и крупнее и без указаний крупности плана. Но это не значит, что данные параметры не имеют смысла. К тому же их можно плюсить, дабы ещё сильнее приблизить объект. Для людей параметры «микро» и «макро» корректно применяются, если указывать какую-то конкретную небольшую деталь внешности. Хотите глаз персонажа на весь экран? Макро вам в этом поможет. Пример:

cute girl, beauty eye, (macro photography)+++

Между микро и макро я в данном случае очевидной разницы не обнаружил.

Всё приближенное крупно в нейросетях Dezgo обычно смотрится красивее, и общее качество графики при этом (по моим ощущениям) заметно выше. Ну и ещё один способ рисовать крупно, и даже многократно увеличено – надо указывать объектами для рисования что-то мелкое. Ну вот как капля или снежинка. Или микроб. Я попробовал рисовать микробов в сети (XLL) juggernaut 9, получается просто великолепно, качество отличное (во всяком случае, если использовать вертикальную ориентацию). Достаточно написать одно слово – «microbe», более ничего не надо. Странно, почему микробов рисует в столь хорошем качестве, а людей… То ли это нарочно сделано.



Управление крупностью плана

Под понятием крупности плана я подразумеваю, насколько человек умещается в кадр. Только лицо, по грудь, по пояс, по бёдра, по колено, во весь рост. Как мы знаем, для Dezgo это очень важный фактор, так как часто определяет качество графики и качество внешности людей. Тонко уметь управлять им было бы неплохо. И конечно же логично ожидать, чтобы поддержка прямых пожеланий на этот счёт была предусмотрена при генерации картинок. Но не всё так просто. Я нашёл кое-что про управление крупностью плана в интернете, однако отсутствие опыта в пользовании нейросетями сыграло со мной злую шутку. Я и так, и сяк, и наперекосяк, и никакого очевидного эффекта. Намучился жёстко, пытаясь разобраться, потратил кучу времени, десять раз пожалел, что вообще озадачил себя данным вопросом. Постепенно экспериментально подобрал какие-то свои способы, в чём-то сомнительные, но они хотя бы работали. И уже потом, намного позже, кажется понял свою основную ошибку. То, что я нашёл в интернете, я неправильно понимал, какой результат оно должно давать, и похоже неправильно применял. В общем, как следствие, вместо кратенького перечня нескольких инструкций у меня получился целый трактат, которому пришлось отвести отдельную главу. Итак, что я могу сказать по поводу крупности плана.

1) В принципе, её можно и не задавать. Если мы рисуем персонажа, надо просто описать то в нём, что желательно показать, есть высокая вероятность, что нейросеть постарается отобразить его крупно, и тогда всё нами не описанное и не упомянутое останется за бортом кадра. Например, если написать «симпатичная девушка, красивые ножки», нам скорее всего покажут её всю, включая ноги, а если «симпатичная девушка, тонкая талия», то… нейросеть RealDream12 наиболее вероятно по начало бёдер, почему-то понятие талии очень размыто у неё. Чтобы как можно крупнее в кадре персонаж был размещён (по заданные части тела), вроде бы помогает слово «close» (пример: «cute girl, beauty legs, close»), только весьма вероятно персонаж примет такую позу, чтобы как можно крупнее разместиться в кадре – если с ногами, это значит сидя.

2) Исходя из первого пункта. Нейросеть управляет крупностью плана, а не вы, хоть она и руководствуется вашим текстом. Чем больше вы всего напишете, тем бог его знает к каким решениям она придёт.

3) То, что я нашёл в интернете – это были буквально несколько инструкций, в том числе и вышеописанное «close up», ну а помимо него фактически только два варианта:

  • Medium Shot – по пояс.
  • Long Shot – по бёдра и более.

Я почему-то был уверен, что Long Shot – это должно быть во весь рост, а Medium Shot – по пояс, не понимая, что настолько точно нейросети не работают, Medium Shot может нарисовать и по бёдра, к тому же RealDream12 вообще тяготеет рисовать персонажей по бёдра. Вот и получается, что используешь эти параметры, что нет, у тебя обычно один и тот же результат, вследствие чего возникает полное ощущение их нулевой эффективности. Но наверное это всё же не так, кроме того, стоит их прописывать в начале «long shot, cute girl, summer time», а я всё время прописывал в конце «cute girl, summer time, long shot», может быть и в этом отчасти дело. Вот ещё варианты, которые стоит иметь в виду, опять же не знаю, работают они или нет (стопроцентно проверить это сложно), но быть может и да:

  • Medium Long Shot – по бёдра.
  • Extra Long Shot – во весь рост или около того.

Судя по всему, важно также учитывать, что вообще за текст вы пишете. Я ещё немного поюзал Medium и Long, и вот какой занятный результат у меня получился. Если я использовал минимальный текст: «(Medium shot)+++. cute girl», более-менее всё работало. Если добавлял всего лишь «летний день» «(Medium shot)+++. cute girl, summer day», в сущности уже не было никакой реакции на указание крупности плана, персонаж практически всегда рисовался по бёдра, а если нет, изредка бывало и такое, то к примеру с «Extra long shot» это неизменно означало какую-то длинную деталь внешнего вида – платье рисовалось с юбкой значительно ниже колен, или волосы столь длинные, что считай до земли. И никак иначе, если юбка короткая, то всегда крупность плана по бёдра.

4) Можно упомянуть часть тела, по которую надо ограничить отображение, в сочетании с каким-нибудь из слов, подразумевающих картинку или ещё что-то, позволяющее нейросети понять его как намёк в нужном ключе. Скажем, с одним из слов: «shot», «view», «photo», «image», «picture», «photography», «angle», «to frame», «portrait». Ну и слово «close» опять же есть вероятность что будет способствовать укрупнению плана при добавлении. Таким образом текст «cute girl, close chest shot» по идее должен нарисовать нам девушку, размещённую в кадре от головы по грудную клетку. Упоминание некоторых частей тела может приводить к обнажению, если специально не указать, что персонаж одет. Также использование слова «area» после части тела снизит вероятность исчезновения одежды. Да и вообще любое добавление деталей способно помочь. Вот вам один пример. Если я писал «cute girl, torso shot», это почти в 100% случаев приводило к полному исчезновению одежды, а если добавлял слово «лето» («cute girl, summer, torso shot»), то практически всегда получал вариант пляжного фона вкупе с купальником в качестве наряда. В целом данный способ (с упоминанием частей тела) с одной стороны очень эффективен, а с другой конфликтует с детализированными описаниями одежды, особенно длинной – если допустим написать «long dress», он уже практически перестаёт работать, он тогда способствует появлению в одежде разнообразных вырезов, но на приближение персонажа в кадре срабатывает редко. С другой стороны, если мы хотим приблизить, скажем, по грудь, зачем нам писать «long», мы же всё равно не увидим, что там внизу. В общем, это то, с чем можно пытаться что-то делать, если с крупностью плана какие-то нелады. Где-то что-то проплюсить, тщательно продумать, как вы будете описывать одежду. И возможно он вам и поможет, хоть сколько-то. Ну а при минимализме нарядов вроде купальников он работает отлично. Надо лишь учитывать, что любая часть тела не воспринимается нейросетями как нечто в строго определённых границах. Это диапазон, от и до. Вот список того, что более-менее неплохо срабатывало у меня:

  • Neck – шея.
  • Chest – грудная клетка.
  • Pelvic – тазовая область, обычно рисует прям по начало бёдер. Или по бёдра.
  • Torso – корпус тела. У меня работал двойственно. То подряд отображало только строго по пояс, то постоянно только по бёдра.
  • Body – переменная величина, означающая вхождение в кадр тела обычно не менее чем до пупка не более чем по бёдра.
  • Hips – бёрда. Можно совмещать с указанием, что персонаж стоит боком: «side hips view».
  • Knees – колени, у меня персонаж часто старался сесть при их упоминании, как бы для более крупного размещения в кадре, ну и порой словно для демонстрации колен выставлял их вперёд.
  • Legs – то есть во весь рост. Ноги наверное всё же нет смысла рисовать таким образом, потому что конкретно в таком варианте, а не как описано в пункте 1, поза тоже часто будет сидячей, причём не самой скромной.

5) Можно напрямую указывать нарисовать персонажа от и до: «cute girl. (close from head to chest)+++»

6) Можно использовать понятие роста. Полный: «cute girl. full height photo» или «full-length photo». В половину роста: «half-length photo». Вроде неплохо работает. Это, кстати, очень интересный способ, потому что совершенно не влияет ни на образ персонажа, ни на его наряд. Крупность плана – технический параметр, в идеале она не должна вносить в образы рисунка никаких изменений. Тут она не вносит.

7) Кроме частей тела никто не мешает упоминать собственно одежду. Эффект будет тот же. Просто не вся она для этого пригодна. Например «платье» понятие крайне неопределённое по размерам. А вот майка совсем иное дело, мы получим фото персонажа по пояс. Пряжка ремня тоже неплохо позиционирует. Короткая юбка более-менее понятный по границам на теле элемент наряда. Украшение на шее. Рубаха. Купальник. Шорты. Лично для меня здесь есть лишь одна проблема. Я не очень-то разбираюсь в одежде, какой она бывает, у меня её разнообразие будет… стремиться к однообразию. А вот нейросети фантазируют на тему нарядов великолепно. Если им её не описывать, уполномочив выбирать самим, правильно сформировав в тексте оные полномочия, мы имеем шанс получить как минимум нечто очень красивое, а как максимум порой чрезвычайно эффектное, чему позавидует любой самый именитый модельер. В придумывании нарядов нейросети реально хороши, мне с ними в этом и близко не сравниться. Ну вы поняли. Лучше стараться делегировать право наряжать персонажей им.

8) Управление крупностью плана не всегда возможно хоть с какой-то долей надёжности. Вот смотрите, вы пишете: «cute girl, beauty dress, chest shot» (то есть «симпатичная девушка, красивое платье, фото по грудь»). Нейросеть призадумается, что конкретно вам показать – девушку насколько близко расположенную в кадре, или отодвинуть её подальше, чтобы вы могли оценить платье. Это снова возвращает нас к пункту 2. Не вы принимаете конечное решение, какой будет крупность плана. Впрочем, это лишь мой вывод, который не истина в последней инстанции.

9) Я экспериментировал с крупностью плана в основном в сети RealDream12. Слишком много всего надо было проверить, потому даже в сети «Envy Starlight XL» уже практически ничего не тестировал. Попробовал буквально несколько раз. Она работает чуть иначе, но в целом примерно так же. Кажется среди сетей Dezgo есть и такие, что прекрасно срабатывают на одетых персонажах при указании частей тела, и ничего не обнажают. Пару раз я как будто видел нечто подобное. Но специально я это не тестировал, а по отдельным случаям наверное неправильно делать выводы. Допустимо лишь предполагать.

10) Не стоит забывать про наличие в Dezgo функций перерисовки, что в данном случае означает две вещи. Во-первых, ничто не мешает вам взять картинку, где персонаж уже расположен как вам хочется, с нужной крупностью в нужной позе, и просто генерировать новые картинки в перерисовщике «Controlled Text-to-image», используя её как шаблон. И во-вторых, можно попробовать перерисовать неудачную картинку, превратив её в удачную, например, предварительно спозиционировав на ней персонажа и придав ему нужный масштаб крупности с помощью фотошопа. Это конечно заморочисто, и по затратам времени не очень-то оправдано – проще и быстрее нагенерировать множество картинок, глядишь, и выпадут сколько-то хороших, чем сидеть и править одну. И тем не менее, сама возможность подобных правок у нас есть.

11) Попробуйте добавлять после части тела слова с намёком на размер. Вроде бы это наименее конфликтует с одеждой. Неплохо у меня срабатывали. Примеры:

cute girl, beauty dress, summer, (torso leveled portrait)++
cute girl, beauty dress, summer, (torso sized shot)++

12) Если сеть рисует слишком крупным планом, чтобы его уменьшить, можно описывать окружающую обстановку. Даже элементарное «indoor» или «outdoor» уже заставят её придать обстановке какое-то значение, и соответственно персонаж будет хоть сколько-то отодвинут, дабы не загораживать её всю собой.

13) При управлении крупностью плана нам необязательно применять управляющие слова в чистом виде. Мы можем их ослаблять (или усиливать). Необязательно писать «cute legs», можно написать «(legs)0.3» (что аналогично семи минусам). И тогда нам, есть шанс, что отодвинут персонажа не так, чтобы он вошёл в кадр с ногами, а лишь чуть-чуть. Это не всегда работает, но иногда работает отлично. То же самое и с «full height», и с чем угодно другим. Кстати, иногда это очень хорошо срабатывает с «close-up». Вроде бы «close-up» должно очень сильно приближать, но его можно существенно ослабить. И оно приблизит слегка. Я даже проделывал такой фокус – добавлял в текст сразу и «full height» и «close-up», то есть прямо противоположные величины, первая из которых должна сильно отдалять, а вторая сильно приближать, и потом управляя коэффициентами их усиления или ослабления пытался плавно изменять крупность плана персонажа в ту или иную сторону (перерисовывая его по seed). Порой мне это удавалось. Причём иногда мне требовались и сотые и тысячные доли усиления, к примеру, в одной картинке «close-up» с коэффициентом 0.85 у меня нисколько не приближал, с 0.956 приближал ровно насколько надо, а на 1.0 приближал уже с большим перебором. А в каких-то других картинках, где персонаж был сильно отдалён, я ставил коэффициент «close-up» и 1.3, и более. В общем, это весьма занятный и довольно гибкий способ управления крупностью плана, который лично мне очень понравился, правда работает он к сожалению далеко не всегда. Или при срабатывании, бывает, приводит к полному изменению содержимого картинки.

Прочее об управлении крупностью плана.

Селфи:

  • POV Shot – нашёл это в интернете (не о нейросетях, о фотографии), попробовал, у меня почти всегда давало эффект селфи – типа, человек снимает себя, рука вытянута в сторону камеры, соответственно это достаточно крупный или крупный план.
  • Selfy Shot – логично было попробовать после POV, кажется это всё же несколько разное, POV поживее, чем селфи, и часто под углом к телу – сверху на себя или снизу.

Дистанция фона:

  • Long View – если мы рисуем человека, данный параметр скорее всего породит фон с отдалённой или очень отдалённой перспективой, например море, уходящее за горизонт, лес вдали, вот что-то такое. За человеком будет значительное открытое пространство.
  • Wide View – а это фон, символизирующий широту просторов за спиной у персонажа.



Угол и сторона обзора

Здесь речь пойдёт об управлении направлением обзора. То есть об угле, под которым идёт съёмка. И о стороне, с которой она ведётся. Я опишу ряд параметров, найденных мной на данную тему. Приложительно к углу я их именно нашёл, то есть большей частью подсмотрел в интернете.

  • Angle – собственно угол обзора. Позволяет задать направление обзора камеры. Low angle – снизу вверх, high angle – сверху вниз. Ну и видимо так далее, другие углы не проверял. Кстати, оно не всегда работает, зависит от содержания картинки. Я попробовал это с текстом «огромный великан топчет нас ногой», вышло прикольно, особенно в варианте снизу, но оно и сверху нарисовало, вид от колен великана на землю, чётко сверху вниз. А вот с динозавром такой фокус не прокатил, просто никакой реакции. С человеком сначала дало крупный план, почти одно лицо на весь экран, из-за чего угол обзора не был заметен, но когда я перерисовал с большим отдалением в кадре, то да, всё сработало. С рисованием детей можно получить занятный эффект – при «high angle» ребёнок будет смотреть снизу вверх, это добавит ощущения, что он маленький, ниже нас ростом. В общем, хороший параметр, позволяющий добиваться разных интересных эффектов именно в подаче контента картинки.
  • Dutch angle – ещё один любопытный вариант угла. Отображает землю в наклон, когда она (её поверхность) не параллельна низу кадра, а под углом к нему градусов наверное в 20-30. Срабатывал у меня не всегда охотно, например в RealDream 12 мне приходилось его плюсить: «(Dutch angle)++». Данный эффект часто придаёт ощущение динамичности картинке, словно это в движении (резком боковом) снято.
  • Horizontal angle – съёмка с низкого ракурса, у земли, но не вверх, а более параллельно земле, это не то же самое, что low angle.
  • Ground Level Shot – сходно по действию с предыдущим параметром. Съёмка в нижнем уровне, невысоко от земли.
  • Aerial View (или Bird’s-eye View) – вид с высоты птичьего полёта. Если речь идёт о картинке человека, это не будет слишком высоко, у меня все попытки использовать данный параметр приводили к тому, что персонаж смотрит вверх, находясь немного ниже, чем типа фотограф, который это снимает.
  • Eye Level Shot – фото с уровня глаз персонажа.

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

  • Side angle (так же «side view») – показать персонажа сбоку.
  • Left view – персонаж стоит к нам левым боком. В теории, на практике нейросети мне рисовали то левым боком, то правым, они как-то не очень придают значение разнице между «лево» и «право» в данном случае.
  • Right view – персонаж стоит к вам правым боком. Ну или левым.
  • Profile – сбоку с лицом строго в профиль.
  • Full face – передом (анфас).
  • Frontal – фронтально (тоже передом). Вроде бы тяготеет к крупным планам.
  • Back view (и так же «back angle», и так же «backside», и «back») – съёмка со спины. Кажется нейросети Dezgo всякое указание спины, даже в сочетаниях с другими словами, воспринимают как наше желание увидеть спину персонажа (а не одежду на ней), потому у меня почти всё время старались нарядить дам в платье с открытой спиной, или в купальник, или в бельё.



Фокус

Генерацию картинки можно счесть за аналог съёмки камерой, у камеры есть фокус (focus), вот это здесь и подразумевается в данном случае. Фокус, во-первых, означает объект внимания – на что конкретно направлена камера. Если речь идёт об изображении человека, при близкой съёмке можно избрать объектом внимания какую-то часть его тела. Например:

«cute girl, beauty legs, summer, focus on legs»

В переводе «симпатичная девушка, красивые ноги, лето, фокус на ноги». В данном случае мы усиливаем акцент внимания на ногах. В этом тексте он и без фокуса есть, ведь в девушке описаны лишь лицо (cute), характер одежды (summer – летом она явно будет летняя), и собственно ноги (beauty legs), причём указано, что они красивые, это ещё более делает их объектом внимания нейросети. Ну а дополнительным упоминанием с фокусом мы просто ещё сильнее намекаем ей сосредоточиться на них. Во что выльется такое сосредоточение, есть пожалуй пять основных вариантов:

  1. Будут показаны только ноги. Никакая иная часть тела девушки кроме них не войдёт в кадр.
  2. Девушка примет такую позу, чтобы подчеркнуть ножки, выставит их напоказ.
  3. Ракурс окажется установлен с акцентом на ноги, например камера будет снимать их с более близкого расстояния, показывая девушку снизу вверх.
  4. Девушка примет сидячее положение, дабы крупнее входить в кадр вся, включая ноги.
  5. Будет установлена более отдалённая крупность плана, чтобы девушка лучше входила в кадр с ногами.

Ну и конечно ноги будут оголены, благо в их обнажении нет никаких противоречий с одеждой, с летней уж точно, многая позволяет это сделать – шорты, купальник, короткая юбка, если же прописать специально, допустим, платье с длинной юбкой, наверное варианты реакции нейросети ещё более расширятся, например, девушка приподнимет юбку, демонстрируя ноги, или часть вашего текста будет проигнорирована как содержащая прямые противоречия, то есть возможно никакого длинного платья мы не увидим, либо не увидим ног. При этом следует понимать – в данном значении (усиления внимания) слово «focus» не является неким особенным для сети, с тем же успехом или даже с ещё большим вы можете применять любые другие слова, означающие изображение: «shot», «view», «photo», и т.д., или можно добавить больше деталей о ногах – «стройные», «в чулках». Всё это усиление акцента внимания к ним. Причём тогда здесь фокус? Мы говорим о фокусе внимания нейросети, об указании ей сосредоточиться на чём-то. Если вы пытаетесь установить фокус на такую часть тела, какая наверняка должна быть под одеждой, дабы снизить вероятность оголений и повысить, что он туда переведётся, стоит использовать слово «область» (например «chest area» - «область грудной клетки»). Иногда это очень неплохо помогает. Ну и конечно следует избегать прямых противоречий в тексте. Хотите чтобы у вас в кадре были только ноги? Тогда наверное не надо указывать, что девушка симпатичная. Да, и про плюсики не забываем: «(focus on legs)+++». Это ведь тоже усиление внимания.

Второе значение слова «фокус» – чёткость. Применение его в подобном ключе я видел в интернете в справке по нейросети Stable Diffusion. А её составляли специалисты, то есть в данном случае это не какая-то моя выдумка, это то, что точно имеет смысл. В справке в примере было использовано выражение «sharp focus» («острый фокус»), я опробовал его, опробовал его противоположность - «blurred focus» (размытый фокус). Кажется, в Dezgo всё как всегда зависит от конкретной сети. Размытие прекрасно работало у меня RealDream12, хорошо реагировало на усиление – чем сильнее плюсишь, тем сильнее размывает. И совершенно не работало в XLL сети Juggernaut9, даже при усилении 1.6 не было никакого зримого эффекта от него. Что касается острого фокуса, действенность его трудно проверить, это размытие сразу видно, а когда чёткость и исходно нормальная, указание делать её острой ничего принципиально не меняет, я пытался создать текст и подобрать условия, в которых эффект от применения параметра «sharp focus» мог бы быть явно заметен. У меня ничего не вышло. Но всё же я доверяю специалистам. Раз в справке по Stable Diffusion это есть, значит иногда это может быть полезно, в каких-то специфических ситуациях.

Ну и третье значение фокуса не имеет непосредственного отношения к камере. Его можно интерпретировать как «придать оттенок» (сфокусироваться не на детали, а на свойстве). Определённо некоторые нейросети принимают его и в таком ключе. Но не все. Я немножко поэкспериментировал с этим. «Dark focus» (тёмный фокус) в одной из нейросетей красил одежду персонажа в чёрное. А «kitten focus» (непереводимо на русский, что-то вроде «котёночный фокус» или «котёнок в фокусе») наделил персонажа настроением игрового котёнка. Это был очень яркий образ. Я там выше писал про «kitten mood», я как раз после этого эксперимента понял, что такое настроение вообще бывает и персонажей возможно наделять им. Помимо прочего, слово «фокус», когда вы его используете, может быть интерпретировано как «съёмка». Фокус у чего? У камеры, камерой снимают. Персонаж начинает на картинке вести себя, словно позирует вам, как фотографу. Правда это и без упоминания фокуса по-моему часто происходит. Так что способствует он такому поведению или нет – вопрос спорный. Фокус можно переводить на персонажа (а не только на какую-то его часть). Если допустим у вас их несколько или он описан среди многого другого и надо его выделить. Например, вот этот текст в сети XLL juggernaut9 в ландшафтной ориентации из двух попыток оба раза нарисовал мне девочку и монстра, причём девочка была впереди, а монстр позади и размыт (не в фокусе): «cute girl, cute monster+, summer, (focus on girl)+++».



Стили рисования

Создаваемые нейросетями изображения могут выглядеть абсолютно по-разному. Как фото, как картинка аниме, как карандашный рисунок, и т.д. Вот это и подразумевается под стилями в данном случае. Некоторые нейросети универсальны, позволяют рисовать как угодно. Некоторые способны создавать контент только в определённом ограниченном наборе стилистик. Некоторые не имеют предпочтительного стиля, выбирая его всякий раз для всякой картинки случайным образом (если вы им его не задаёте специально). Некоторые свои предпочтения имеют, порой настолько выраженные, что не очень-то предрасположены отклоняться от оных даже по прямому приказу на то с вашей стороны. Заставить их послушаться не всегда просто. В Dezgo каждая нейросеть подписана, содержит в скобочках рядом с именем указание, какая она, например «RealDream 12 (realistic)», или «Ghost mix v2 (anime)», или «Envy Starlight XL 01 Lightning (drawing)». Это определённый ориентир, говорящий нам, в чём она наиболее хороша или на работу с каким стилем более всего рассчитана. Однако не следует полагать, что она хороша только в нём. Большинство сетей Dezgo (если не все) могут рисовать по-разному. Для начала давайте рассмотрим, какими они в нём бывают, т.е. какие значения встречаются у них в скобках.

  • Realistic – умеют рисовать в полном реализме, когда персонажи на картинках выглядят словно это фото настоящих реальных людей. Как правило и животных могут рисовать в полном реализме. Как правило способны рисовать и в многих других стилях, но вот заставить их это делать не всегда легко, так как они склонны не понимать указания на смену стиля, к примеру, пишете вы им «anime», а они расценивают это за пожелание нарядить персонажа в костюм как у аниме героев, или сделать причёску как у аниме героев, а рисуют его всё равно реалистично.
  • Anime – заточены рисовать в стиле аниме, но многие способны и на другое, допустим на столь реалистичное аниме, что не так-то просто его отличить от реализма. Нередко тяготеют делать персонажей большеглазыми.
  • Drawing – рисуют, какие-то достаточно однообразно, какие-то в разных стилях, включая фактический реализм.
  • General – способны рисовать в разных стилях, обычно включая и реализм.
  • Artistic – с претензией на художественность, то есть на какую-то особенную искусность в каких-то аспектах, красоту, красочность, или детализированность.
  • 3d_render – в Dezgo только одна такая сеть. Своеобразный стиль типа «anime 3d render».
  • TShirt – и такая есть лишь одна. Похоже позиционирует себя как заточенную создавать картинки для нанесения на футболки.
  • Inpaint. general – эти используются только в функции редактирования картинок «Inpainting from text».

Что касается, собственно стилей рисования, какие бывают у создаваемых нейросетями картинок, разнообразие их в целом велико. Его даже не опишешь, так как у многих нет собственных названий (ну или надо быть экспертом, чтобы в них разбираться). Допустим «drawing» (рисунок). Можно ведь по-разному рисовать. И карандашом, и кистью, и примитивными штрихами, и с реалистичностью близкой к фото, и карикатурно, и искусно, и тонкими линиями, и штрихованием, и ещё как угодно, в том числе в неких авторских вариантах, допустим, как в мультиках Диснея. Одна нейросеть Dezgo не раз выдавала мне картинки в очень симпатичном стиле, смесь 3D, 2D, аниме, реализма и рисунков. Что это вообще такое? Как оно называется? Да скорее всего никак, просто оригинальная смесь, некоторые сети горазды смешивать стили. А к примеру «RealDream 12» как-то сгенерировала изображение в виде смеси 2D, cartoon и аниме. Вышло красиво и необычно, однако второй раз заставить её нарисовать в данном стиле я не смог. Кстати, есть ещё такая вещь как синонимы, она вносит дополнительную путаницу в это разнообразие. Скажем, реализм задают с помощью слов «realistic», «photorealistic», «photo», «realism», «hyper realism», «ultra realism», и так далее, буквально кто во что горазд. Есть ли разница между всеми этими выражениями для нейросетей? Все ли нейросети одинаково её понимают, если она есть? Или её всё же нет? Мне ответы на эти вопросы не найти (впрочем один я кажется знаю - «photorealistic» и «realistic» некоторые сети, я уверен, воспринимают по-разному, также можно вспомнить, что сеть XL Pony при «photorealistic» не позволяет управлять возрастом, а при «realism» позволяет, значит для неё они не одно и то же). В общем, понятие стиля штука отчасти неопределённая, не всегда предсказуемая и точно управляемая, и немного запутанная. Тем не менее управлять ими мы всё равно можем в той или иной степени. Просто не всегда с желаемой точностью. Далее я приведу список базовых стилей, которые мне известны. Их не так много – я в рисовании не специалист.

  • Photorealistic – фотореализм. То есть абсолютный, в идеале неотличимый от настоящего фото реального человека. Не все сети на это способны, в тех, что не способны, просто добавит реализма.
  • Realistic – реализм. Чуть меньшая его степень, чем у предыдущего пункта, но тоже высокая, порой настолько, что вполне сойдёт и за фотореализм.
  • Anime – аниме.
  • Cartoon – мультяшный стиль. Как в мультиках. Последние бывают искусными и примитивными, 2d и 3d, много какими. Соответственно и картинки cartoon подразумевают под собой любые вариации этого многообразия.
  • Digital – цифровой рисунок. Проще говоря, созданный в стилистиках, какие обычно бывают у картинок, рисуемых посредством компьютерных технологий. Это, как вы понимаете, довольно широкий диапазон вариантов. В интернете я видел данный стиль только как «Digital art», но причём тут art, мне не ясно, я применял его и просто как «Digital», и с какими-то другими словами. Так или иначе, это компьютерная графика, каковая порой может быть весьма красивой и эффектной.
  • 3D – трёхмерные изображения, в одних сетях великолепного качества, близкого к реализму, в других средненького, с персонажами, напоминающими кукол или манекенов, в третьих порой и откровенно гадкого грубого, будто из древних компьютерных игр. Параметр «3D» хорошо понимается нейросетями, даже те, что обычно капризны в плане управления стилями, на него как правило реагируют без проблем.
  • 2D – не берусь утверждать, что все сети принимают этот параметр. Он позволяет снизить степень трёхмерности, то есть сделать картинку более плоской, превратить её в эдак 2,25d или 2,5d. Иногда это выглядит довольно симпатично. Безусловно, не исключено и полное 2d.
  • Render – вроде бы его принято использовать совместно с 3D («3D render»), но на мой взгляд в Dezgo это не самый лучший вариант, так как «3D» тоже параметр стиля, и он может «перевесить» render. И тогда мы получим обычное 3D без всякого render. При том что он по умолчанию всё равно подразумевает трёхмерность, он не нуждается в указании на неё. Что такое render, я вам не скажу, так как не знаю, и я даже не полезу в интернет, чтобы узнать, вроде бы в этом нет нужды. По моим ощущениям в идеале он более реалистичный и красивый вариант 3D. Но он может быть и не идеальным, и тогда похож на 3D. Высококачественный render крупным планом смотрится очень красиво и очень реалистично. Иногда он как будто даже красивее, чем реализм – по-моему так бывает.
  • Drawing – рисунок. Как я уже сказал выше, может подразумевать стилистически очень разные картинки. От цветных красочных почти полностью реалистичных до примитивных штриховых. Со словом «drawing» есть такая проблема, что многие сети норовят воспринять его как указание в том числе на желаемый вами контент – и начинают рисовать лист бумаги, на котором нарисовано то, что вы задали в тексте, а порой пристроят рядом с листом и руку художника, держащую кисть или карандаш. Как с этим бороться, интересный вопрос. Я пытался использовать негативы – прописывал в них «лист бумаги» («sheet of paper»), не скажу, что это на 100% помогает, может быть стоит поискать для негативов какие-то более эффективные слова.
  • Graphics – тоже вид рисунка, только с намёком на компьютерную графику.
  • Sketch – чёрно-белый упрощённый набросок карандашом.
  • Painting – цветной рисунок карандашом или кистью.
  • Artistic – искусство в разных его интерпретациях. Более ярко, более художественно, более артистично, иногда в стиле картин на холсте.
  • Art – трудно сказать, то же ли это самое, что artistic или нет. Предположу, что примерно то же, но определённая разница всё же есть. Применение art может сильно улучшить качество или эффектность картинок. Я приписывал его к чему угодно, к совершенно любым стилям, например «photorealistic art» или «render art». Только с ним есть одна проблемка. Иногда сети понимают его в ключе рисования красками. И если вы ещё и используете усиление цвета, начинают пачкать персонажа в разноцветных масляных красках, ну типа он художник, который с излишним энтузиазмом занимался своими художествами и сильно замарался. Можно попытаться прописать в негативах что-то вроде «painted skin» (окрашенная кожа), или добавить в текст «clean skin» (чистая кожа), только это не всегда помогает. Так что если вы видите, что ваш персонаж постоянно с лицом в красках или запачкан ими ещё в каких-то местах, может быть стоит убрать слово «art» из текста.
  • Comic – комиксы. Опробовал в 4-х нейросетях, две понимали, что это, и соответственно рисовали в стиле комиксов, а две нет.
  • Ghibli – аниме в стиле Хаяо Миядзаки. Знаете такого? Нейросети его знают, как минимум некоторые.
  • Pixar (или Pixar render) – в стиле мультиков студии Pixar. Не все сети хорошо справляются с этим. Я пробовал рисовать монстров, сеть XLL Juggernaut10 не испытала с ними никаких затруднений, вполне узнаваемые пиксароподные (на мой взгляд) получались. А вот RealDream12 выдала нечто достаточно несуразное. Как минимум в некоторых сетях разница между «Pixar render» и «Pixar» заметна, первое у меня выходило покачественнее.
  • Disney – в стиле диснеевских мультиков. Не могу утверждать, что стабильно работает. Часто приводит к рисованию у персонажей накладных ушек как у Микки Мауса. Часто одевает девушек в платья в горошек или иные по моде Америки середины прошлого века.
  • Isometric – изометрический стиль. Рисунок в виде трёхмерных проекций предметов и строений.
  • Cubism – кубизм.
  • Impressionism – импрессионизм.
  • Animation – ещё один способ задать мультяшный стиль. Моё изобретение, между прочим, я это сам придумал, не подсмотрел где-то. Некоторые сети, очень капризные в плане реакции на указания стиля, именно на «animation» у меня прекрасно реагировали. Я его использовал как определение как к другим стилям. Например «animation of anime». Глупо звучит, словно «масло масляное»? Но оно отлично работает с некоторыми сетями, которые отказываются понимать стиль «аниме». Кроме «аниме» можно подписывать что угодно другое. «Animation of cartoon», «animation of drawing», даже «animation of horror» - всё влияет на стиль (в некоторых сетях), всё его переключает.
  • Имя – нейросети знают многих художников и знаменитых фотографов по именам. Таким образом если написать, допустим, «Malevich», в теории мы получим картину в стиле Малевича, а если «Aivazovsky», то как у Айвазовского. На практике не стану утверждать, что сходство с почерком автора будет прям идеальным, хотя не стану утверждать и обратного. Я в живописи не разбираюсь. Какую-то картину вероятнее всего вы получите (как минимум в некоторых сетях Dezgo), и хоть что-то в ней от указанного художника наверняка да будет. Кстати, хотите конкретно Малевича в более выверенном варианте, идите в нейросеть Сбера «Кандинский». Там есть выбираемый непосредственно в опциях стиль рисования «Малевич». Есть «Айвазовский», есть «Пикассо», «Кандинский», и ещё кое-что из той же оперы.

Ну и конечно можно смешивать всё перечисленное в самых разнообразных сочетаниях. Это тоже вариации стилей. Какие-то сети хорошо поддерживают смешивание, какие-то и сами горазды случайно выдавать то один необычный стиль, то другой. Ну а какие-то работают себе в определённом ограниченном наборе стилистик и ничего иного не умеют. Для тех сетей, которые неохотно воспринимают указание стилей, стоит искать такие формы указания, какие на них действуют лучше. К примеру с RealDream12 у меня неплохо срабатывало добавление «draw style»: («digital draw style»). Реакция на плюсование различается при указании стиля у разных сетей. У некоторых оно не только способ увеличить вероятность его срабатывания, но и усиление действия, в таких, допустим «photorealistic+++» будет гораздо более высокой степенью реализма, чем «photorealistic». А у других плюсуй не плюсуй, всё едино, графически никакой разницы мы не увидим.

Несколько примеров (последний из них – это я пытался заставить RealDream12 рисовать в стиле плоского аниме, вот уж чему она сопротивляется просто жесть как, надо в добавление к тексту в примере прописать в негативах «3d+++», тогда по идее RealDream12 должна начать стабильно рисовать в 2d anime, у меня рисовала).

(Digital anime cartoon)++. Cute girl, summer day
Pixar. cute monsters, summer day
(2d anime render)+++. Three kittens. bright colors
(2d animation of anime)+++. Cute girl, summer day

Не забываем и про перерисовщики. Выпала картинка в оригинальном стиле, повторно который вызвать не удаётся – закидывайте её в Controlled Text-to-image и рисуйте там (в той же самой сети с указанием того же самого стиля, по которому картинку получили), наверняка что-то схожее, пусть и не на 100%, выпадать будет.

Как уже говорилось в главе о рисовании людей, стили применяются к персонажам легче, чем к фону и некоторым другим объектам. Зависит от конкретной сети, конечно. В каких-то фон своенравен, сеть сама выбирает стиль для него, в каких-то он как будто неплохо управляется. Природный фон (лес, поля, пляж) в стилях аниме зачастую подсовывается реалистичный (что в принципе не привносит ничего дисгармоничного, особенно при крупных планах персонажей), а рисуя на тему фэнтези или сказки велика вероятность, что мы получим нечто либо похожее на книжные иллюстрации, либо тоже реалистичное. Природные ландшафты стремятся к реализму, ландшафтные пейзажи типа «красивый сад». Что касается объектов, собаки и кошки вроде бы не менее управляемые персонажи, чем люди, а вот динозавр в одной из сетей у меня не управлялся по стилю, тогда как в другой управлялся без проблем.



Сюжет

Тут речь пойдёт примерно о том же, что и стили, об особенностях управления оформлением, просто менее кардинального характера, скорее задающее сюжет. Я не знаток эффектных текстов для генерации картинок, при желании их наверное можно много найти в интернете, порождающих самую красивую или фантастическую графику. Здесь я приведу отдельные кроткие параметры, позволяющие получить особое оформление, которые я немного поприменял, и мне они показались достаточно интересными или многообещающими. Некоторые я именно увидел в интернете, но по большей части просто пробовал казавшиеся мне перспективными слова и смотрел, что будет. Естественно, разные нейросети работают с ними по-разному, где-то интересный эффект появляется всегда, где-то на него не возникает и намёка. Преимущественно я опробовал приведённые здесь параметры в сети RealDream12.

  • Cyberpunk – киберпанк. То есть специфическая стилистика специфического представления о будущем. Хорошо поддерживается нейросетями. Во многих порождает достаточно яркие образы персонажей и оформления. Может приводить к определённой смене механизмов обработки ваших текстов, словно это иная нейросеть.
  • Futuristic – футуристично. Тоже будущее, но иное, не кибер и не панк. Скорее тема транспортных будней людей, перемещающихся в космосе, у меня просматривалась. Тоже хорошо поддерживается нейросетями, в некоторых можно вообще ничего не писать, только одно слово поставить «futuristic», и мы будем получать вполне колоритные картинки. Я опробовал такой трюк в ряде сетей. XLL сеть «Juggernaut 9» генерировала по нему исключительно футуристично одетых эффектных девушек, явно находящихся в чём-то вроде космических кораблей. Ровно то же самое было и в XLL сетях «Envy Starlight» и «DreamShaperXL», и в XL сети «BluePencil». А вот XL сеть Stable Diffusion не зациклена на девушках, она по этому слову рисовала мне футуристичные города, необычных роботов, а порой и просто непонятно что, некие странные приборы неизвестного назначения. Flux тоже рисует футуристичные города.
  • Fantasy – порождает картинки в стилях фэнтези и сказки, зачастую прям готовые обложки или иллюстрации для книг по выверенности и эффектности. Можно добавлять к «fantasy» разные образы, чтобы фантазия нейросети выбрала какое-то более узкое направление: «magic fantasy+++», «cute fantasy+++», «bright fantasy+++», «color fantasy+++», «fantasy art». Ну и т.д. Многообещающий сюжетный параметр (для тех, кому нравится фэнтези). Я опробовал его в двух сетях – «RealDream12» и XLL «Juggernaut 9», в первой используя всего три слова: «fantasy+++. Cute girl». Этого абсолютно достаточно, чтобы стабильно выпадали картинки с эффектными воительницами в нарядах стиля фэнтези, в антураже фэнтези. В j9 усиления в три пункта для fantasy маловато, надо больше, иначе вместо воительниц мы получим просто миленьких девушек, там и 2.0 хорошо заходит. При этом в ней в принципе можно обойтись и одним словом, написать: «(fantasy)1.5», и тогда мы получим что? У меня во всех попытках стабильно выпадали воительницы в нарядах фэнтези (фантазия у этой сети явно мужская). Но конечно одними воительницами данный параметр не ограничивается, по нему можно получить много чего, если правильно составить текст.
  • Fantasy world – фантазийный мир. Если не добавлять к этим словам ничего, мы получим ландшафт в необычном мире, а если указать рисовать и персонажа, то получим соответственно персонажа на фоне необычного мира. Проще говоря, тут внимание сети несколько смещается на окружающую обстановку. Иногда это хорошо, иногда нет. В RealDream12 мне пожалуй данный параметр менее понравился, чем просто «fantasy», а вот XLL Juggernaut 9 указание на мир явно пошло на пользу, там как раз не хватало фантазийных деталей вокруг персонажей, теперь их стало заметно больше.
  • Sci-Fi, science fiction, sci – три близких по смыслу параметра, подразумевающих научную фантастику.
  • Fantastic – фантастика. Кажется, сети воспринимают это слово в несколько ином ключе чем привычно мне, ближе не к науке, а к теме супергероев, необычных явлений, фэнтези и даже просто эффектных людей. RealDream12 по нему (ему одному, при использовании без каких-либо других слов) чего только не рисовала, включая (иногда) красочные спецэффекты. Не рисовала только ничего, связанного с фантастикой в её привычном мне определении. Но конечно к этому слову можно добавить какие-то другие, чтобы направить фантазию нейросетей в нужное русло.
  • Cosmic – тематика ярких звёзд и галактик.
  • Fairytale – сказка. По-моему отличается от фэнтези большей детскостью, простотой. Фэнтези это как бы полёт фантазии, там вас пытаются погрузить в атмосферу иной реальности с помощью её детализации, а тут мне всё больше какие-то непритязательные сюжетики выпадали – вот девочка в старинном платьице на бережку, вот принц и принцесса в лесу, вот дети идут по дороге, на которой стоят два добрых монстра. Может конечно я не очень удачно тексты составлял. Или так, или жанр фэнтези сюжетно гораздо интереснее.
  • Magic story – это я уже экспериментировал, тоже какой-то свой оттенок задаёт, менее детский, чем в предыдущем пункте, с магией связанный.
  • Death world – и это мой эксперимент. Мир смерти. Мне порождало зомбиков колоритных, черепа на дороге, странные тёмные сооружения, и т.п.
  • Surrealism – сюрреализм. Как-то слабо оправдал мои ожидания, я думал нейросети тут расстараются. Но что-то по мелочам у меня порождали сюрреальное. Возможно, в данном случае текст надо более выверенный и продуманный использовать.
  • Surreal world – вот так пожалуй получше. По-моему, тут чем меньше текста задаёшь, тем лучше, тем больше шансов, что тебе что-то интересное нарисуют.
  • Irreal (и так же unreal) – ирреальный, нереальный.
  • Strange world – странный мир.
  • Strange nature – странная природа. Сеть RealDream12 кажется почти не воспринимает слово «странный». Слабо на него реагирует и не всегда. А вот XLL сети Juggernaut9 и EnvyStarlight вполне достойный контент мне порождали в ответ на него.
  • Phantasmagoria – фантасмагория.
  • Mechanical (или Mechanical world, или mechanoid) – механический. То есть фантазии на тему механизмов, роботов и т.д. «Механический» подразумевает нечто с уклоном именно в механизмы, состоящие из множественных деталей. А «механоид» это вроде как примитивный робот, не претендующий на особое человекоподобие.
  • Cyber – кибер.
  • Astral – астральный. Может выглядеть достаточно оригинально.
  • Mystical – мистический.
  • Afterlife world – загробный мир.
  • Otherworld – иной мир.
  • Middle Ages – средневековье.
  • Fairy world – мир фей.
  • Fairy land – земли фей. Вроде бы примерно то же, что и мир, но разница по моим ощущениям есть. Оба этих слова подразумевают два образа: абстрактный, указующий на характер действительности (т.е. что в ней в данном случае водятся феи и волшебство, что она сказочная), и конкретный, означающий просторы, ландшафт. Однако мир более абстрактен, он сильнее указует на действительность, а земля более смещена на конкретику, земли это и есть ландшафт. Потому когда вы указываете их, при рисовании персонажа акцент внимания сети будет смещаться на отображение земель чаще. То есть чаще персонаж будет рисоваться мельче, словно он не главная деталь, а лишь дополнение к общей картине.
  • Monsters world – мир монстров.
  • Alien world – инопланетный мир.
  • Prehistoric world – доисторический мир, мир динозавров, проще говоря.

Ну вроде всё перебрал, что только мог. Несколько примеров («summer day» часто задаю, чтобы освещение было получше и природа вокруг поинтереснее):

  • (death world)+++. girl, summer day
  • fairytale+++. Monsters in the wild, summer day
  • (surreal world)+++
  • (Strange world)+++. Strange nature
  • (prehistoric world)+++. nature of wild
  • (bright colors)+++. fantasy world, girl, summer day
  • irreal+++. (Artistic 2d digital)+++. fantasy animals++
  • Surrealism+++. (Artistic 2d drawing)+++. fantasy animals+++

Кажется я понял, почему RealDream12 плохо реагировала у меня сюжеты со словом «strange». Она для рисования выбирала стиль реализма. А прочие сети нет. А в реализме единственное, как она может изобразить странную природу, это деревья с необычной кроной. Стоило заставить её сменить стиль, и она тоже стала вполне интересный контент выдавать. Думаю, и для сюрреализма важно следить, в каком стиле ты рисуешь. Реализм и ему не очень подходит. И возможно для него важны пропорции, симметричность, у меня наиболее интересный насыщенный деталями результат получился в квадратной ориентации (512x512).



Краски

Управление цветовой гаммой и цветовой насыщенностью. Это, между прочим, не всегда легко, если хочешь окрасить какую-то конкретную деталь в конкретный оттенок. Почему-то нейросети склонны с излишним энтузиазмом реагировать на подобные указания, старясь пристроить заданный цвет не только туда, куда ты пожелал, но и куда угодно ещё. Написал «белые перчатки», а тебе и одежду, и волосы перекрасят в белое, и шерсть коту, если он есть на картинке, и общий фон светлее станет (новая сеть – flux как будто исключение из данного общего правила, эта прям точно выполняет окрашивание и без отсебятины). Я с каких-то пор стал пытаться избегать напрямую задавать окраску чему-либо. Но цветов всегда хочется поболе, яркость как праздник души, её много не бывает. Как и всё прочее в Dezgo, управление цветностью различается в разных его сетях, причём в данном случае эти различия иногда бывают не просто велики, а принципиальны, кардинальны, потому что в одних сетях определённые слова при использовании для усиления цвета могут порождать красочные спецэффекты, а в других не порождают ничего, или даже приводят к неким отрицательным моментам, например таким, как пачканье персонажа (его лица, его кожи, его одежды) в красках. В чём могут заключаться спецэффекты? Из тех, что удавалось получить мне, это были красочный многоцветный фон, красочные разнообразные узоры в фоне, причём всякий раз при всякой следующей генерации картинки по тому же тексту иные, не похожие на предыдущие, взрывные образования из окрашенных брызг, волн, столбов или поверхностей воды. Это всегда красиво, и всегда появляется само собой, никак не описано в тексте, есть только указание усилить цвет определённым образом, и всё, а сеть уже сама реализует это во что-то подобное. По моим нынешним умениям обращения с Dezgo для меня всегда большая удача составить текст, который волей случая начнёт порождать цветовой спецэффект (новый, оригинальный, не такой, какие я уже получал ранее), в интернете найти тексты с ними наверное нельзя (может и можно, но это надо знать, где народ публикует картинки с Dezgo, у меня таких знаний нет). Ниже (в конце этой главы) я парочку примеров моих текстов, которые спецэффекты производят, вам дам. А далее вам придётся экспериментировать с цветами самим.

Помимо спецэффектов цвета ставят перед нами и гораздо более тривиальные задачи – как просто добавить их в контент, дабы придать ему более яркости и красочности. В принципе, это можно сделать почти как угодно, слов много, берёте то, что кажется вам наиболее подходящим для вашего текста, и присоединяете его к слову «цвета» («colors»). Вот список того, чем пробовал пользоваться я:

  • Colorful – красочно.
  • Bright colors – яркие цвета.
  • Vibrant colors – и это яркие цвета. Данный вариант приводится в интернет справке по нейросети Stable diffusion.
  • Vibrant fantasy – фантазийно разукрасит то, что вы рисуете. Может порождать красивые спецэффекты.
  • Vivid colors – тоже взято из справки по Stable diffusion. Там написано: «добавит жизни в вашу картинку».
  • Multicolored – многоцветный.
  • Magic colors – волшебные цвета. Сходное действие с большинством предыдущих пунктов. Но может одновременно придавать и более волшебную направленность сюжету картинки. В некоторых сетях имеет тяготение к определённым оттенкам, допустим, к фиолетовому.
  • Colors of magic – цвета волшебства. Здесь акцент несколько смещён в сторону именно магической тематики, самую малость, то есть чуть чаще или чуть сильнее способствует волшебной направленности сюжета, чем у «magic colors».
  • Intense colors – интенсивные цвета. Ещё один хороший способ поддать газу в красочности. В RealDream12 приводил у меня к усилению цветовой подсветки фона (фон не только становился красочнее, но и начинал светиться, что выглядело довольно симпатично).
  • Saturated colors – насыщенные цвета, красиво расцвечивает и фон, и персонажа.
  • Colors – и это добавит цвета, без излишнего усердия, но тем не менее.
  • Surreal colors – сюрреальные цвета. Умеренное усиление красок.
  • Harmonious colors – гармоничные цвета. Работал у меня по-разному в зависимости от того, что конкретно я рисовал. Может порождать спецэффекты разноцветного узорного окрашивания фона.
  • Perfect colors – идеальные цвета. Красочно, без пестроты, количество разных цветов не будет чрезмерным.
  • Verified colors – выверенные цвета. Немного отличается от предыдущего параметра, но в целом похоже. Умеренное число красок. Иногда приводило к появлению отдельных цветных прядей волос у персонажа.
  • Matching colors – сочетающиеся цвета. Фон если и окрашивается, то однотонно. Одежда персонажа может быть однотонной, а если нет, краски часто контрасты, но в целом не пестрят и вроде бы достаточно эффектно сочетаются.
  • Weak colors – слабые цвета. У меня они не выглядели слабыми, просто их разнообразие было очень умеренным.
  • Rainbow – радужный. Предполагает цветовые переходы и вероятность радуг.
  • Iridescent – переливающийся. У меня порождал краски с металлическим отливом. Очень хорошо подходит для усиления цвета при рисовании роботов. Ну или чего-то иного из металла.
  • Luminous – светящийся. В нейросети RealDream12 давал красивые световые эффекты, словно лазером, ещё в двух сетях, где я это опробовал, никакого эффекта не наблюдалось.
  • Luminous colors – тот же эффект, но гораздо интенсивнее.
  • Illumination – иллюминация.
  • Illumination colors – краски иллюминации. Довольно красивые картинки (на мой вкус) способен порождать. Особенно в сети Juggernaut 9 (XLL), но и в других тоже было неплохо.
  • Happy colors – счастливые цвета. Добавит цвета, есть шанс, что сделает красочнее фон, фактически гарантирует улыбку у персонажа.
  • Nature colors – природные цвета. Бывают очень удобны при усилении цвета чего-то природного, так как весьма вероятно сохранят у него естественные оттенки, лишь придадут им интенсивности.
  • Realistic colors – реалистичные цвета. Тоже порой удобны, у меня не привносили кричащих красок даже при значительном усилении.
  • Professional colors – кажется, более выверено рисуются картинки и по деталям, и по цвету, в более естественных тонах. А персонаж может быть наделён некоторыми чертами профессионала в чём-то. Допустим, если мы его просто рисуем, без сюжета, в обыденных условиях, вероятно будет типа модель (поза, одежда, внешний вид – всё обретёт определённую безукоризненность).
  • Fantasy colors – действует по-разному, например, может необычные цвета придавать, скажем, покрасить листву дерева в розовый. Иногда влияет на жанр рисунка, усиливая фантазийность.
  • Cyberpunk colors – добавит колорита киберпанка, сделает персонажей эффектнее и высока вероятность, что покрасит их волосы в необычный цвет.
  • Kaleidoscopic colors – вспоминал я, вспоминал, думая, вроде ведь есть что-то, символизирующее разноцветную узорность. И наконец вспомнил – калейдоскоп же. Детство давно прошло, забываются такие слова. Как оказалось, не зря я напрягал память, в RealDream12 данный параметр просто запредельно красивые цветовые эффекты не всегда, но довольно часто создаёт (при соблюдении определённых условий).
  • Explosion colors – взрывные цвета. Своеобразный довольно интересный параметр, способный на спецэффекты, взаимосвязанные с цветом и взрывом. Правда они не всегда выглядят уместно.
  • Splashes colors – брызги цвета. Ещё более эффектно, чем взрыв. Наряду с kaleidoscopic одна из самых удачных моих находок. В RealDream12 порождает разнообразные яркие спецэффекты, связанные с многоцветными брызгами и водой.

При всей схожести работы некоторых параметров цвета, в целом они совсем не одинаковы, могут иметь разную интенсивность красок, разное их многообразие, могут тяготеть к разным оттенкам, могут влиять более на фон или на персонажей. Могут оказывать влияние на сюжет. Ну а отдельные, как я уже говорил, способны на красивые спецэффекты. Фактически слово «цвет» пригодно для смешивания хоть с чем, с любыми образами, у меня, как можно заметить, в сочетании с ним используются в том числе слова, вообще не имеющие отношения к окраске, совершенно никакого – «professional», «happy», «explosion», и даже «киберпанк», и оно работает (правда всегда помимо цвета привносит и какие-то ещё изменения). По-моему, вот это умение смешивать образы и есть главное достоинство нейросетей, и пожалуй оно же самое увлекательное в работе с ними – результат такой деятельности непредсказуем, потому приходится уповать на удачу, пробуешь одно, другое, третье, будто какой древний алхимик, смешивающий наугад реактивы в надежде создать философский камень. А ты смешиваешь и перебираешь образы в своём тексте, пытаясь поймать случайный шедевр полёта фантазии искусственного интеллекта. Это реально графическая алхимия. Только в отличие от настоящей алхимии тут можно и правда порой получить выдающиеся результаты. Ну а цвет – идеальный ингредиент для них, он эффектен, если что-то и может впечатлить любого, в том числе обычного человека, не специалиста в области графического искусства, в живописи, так это он.

Немного примеров текстов:

  • (cute girl)+++. (splashes colors)++
  • (Vibrant fantasy)+++
  • cosmic. digital++. (Bright colors)++
  • futuristic. cosmic of cute++ girl's supermodel beauty++. (Bright colors)++
  • (Vibrant colors)+++. Young thin+++ beauty witch. Stockings++. Bright colors. Colored hair, (cute two wings)++, (cute pose)++
  • (fantasy cute model-girl)+++. (waist shot)++. (kaleidoscopic colors)++, professional art
  • (fantasy animal)+++. outdoor. kaleidoscopic colors

Все примеры кроме последнего предназначены для сети RealDream12, в других сетях они вероятнее всего гораздо хуже будут придавать красочности контенту, или совсем не будут. Последний пример не работает в RealDream12, его стоит применять в XLL сети Juggernaut9. Первый и предпоследний примеры должны порождать яркие спецэффекты, первый связанные с водой, а предпоследний с калейдоскопическими узорами. При этом вы должны понимать, такие эффекты могут быть чрезвычайно разными, вариантов бесконечность, вам совсем не обязательно что с первой попытки выпадает нечто красивое или эффектное. Может быть понадобится много попыток. Ну и хочу особенно отметить сеть RealDream12. По моим ощущениям это выдающаяся сеть в плане поддержки цветовых спецэффектов. Заставить её создавать их не скажу что прям легко. Но если вы поймёте как это делать, она будет буквально штамповать вам шедевры узорного буйства цвета.



Из слайд-справки https://openart.ai/promptbook


Openart.ai promptbook

На сайте https://www.reddit.com/r/stablediffusion/wiki/tutorials, куда Dezgo отправляет за справочными сведеньями о своей работе (ну или вернее, о работе Stable Diffusion), много разных ссылок, и одна из них - https://openart.ai/promptbook. Это некий иллюстрированный онлайн документ (из слайдов), кратко знакомящий нас с основными секретами работы с сетью Stable Diffusion. Там всё на английском, тем не менее, очень много полезного можно найти. Но суть даже не в этом, а в том, что https://openart.ai/promptbook - это не просто документ, это документ рисующей нейросети, очень похожей на Dezgo по дизайну сайта (и я подозреваю, что родственной ему). То есть перейдя по этой ссылке вы вообще-то попадёте в нейросеть https://openart.ai. Пользоваться ей можно только после регистрации (что впрочем несложно), и она платная, вам однократно дают 20 бесплатных кредитов, для ознакомления, так сказать, за подключение Discord вроде бы дают ещё 50, и на этом всё. Я так и не понял, позволяют там бесплатно хоть что-то делать или нет. Однако в ней вы можете найти много полезного. Ну, во-первых, вышеупомянутую слайд-справку. Во-вторых, стили рисования. Нужно в меню слева выбрать «Create image» и вверху кликнуть по опции «Or, start with a style» (ну или перейти по этой ссылке - https://openart.ai/style-palettes). Вы окажетесь на странице выбора стилей, каждый стиль имеет картинку, показывающую, что он подразумевает, причём если кликнуть по ней, вам в окно prompt автоматически введётся текст, по которому данная картинка была сгенерирована. Что позволит вам попробовать применять этот стиль в Dezgo. Ну и в-третьих, пользователи при создании изображений в openart.ai могут при желании их публиковать в своих альбомах. Там их бесконечность, самых разнообразных картинок, просто прокрутите окно сайта вниз, и вы обнаружите их в необъятных количествах. Можно отсеивать их поиском. Но главное, к каждой картинке публикуется текст, по которому она была создана. Выбирай, что нравится, смотри, как это было сгенерировано, и пробуй рисовать что-то сходное в Dezgo. Сам я, правда, ничего подобного не делал. Но лишь потому, что у меня не было задач научиться рисовать что-то красивое, я пытался понять, как вообще обращаться с нейросетями. А когда вам хочется именно рисовать, а сидеть и разбираться нет ни времени ни нужды, брать эффектные чужие тексты за основу и отталкиваясь от них пытаться получить что-то интересное своё по-моему оптимальный вариант.

Далее я в очень вольном переводе приведу пару разделов из https://openart.ai/promptbook. И на этом пожалуй завершу данное руководство.



Photography prompt

Страница 18 слайдов https://openart.ai/promptbook (листание страниц осуществляется стрелочками внизу экрана). Раздел озаглавлен «Photography prompt – mix and match!».

Текст для рисования фото определяется как состоящий из параметров 7-ми типов:

  1. Shot type – крупность плана.
  2. Style – стиль.
  3. Subject – объект, который надо нарисовать (человек, собака, машина, ну и т.д.).
  4. Lighting – освещение.
  5. Context – где находится объект.
  6. Lens – объектив.
  7. Device – устройство, коим осуществляется съёмка.

Таким образом, составляя текст для генерации картинки в стилистке фото, фактически мы можем задать в нём от одного до семи типов разных параметров. В слайдах примеры значений каждого типа параметра приведены в виде таблицы, но я все же дам описание их здесь списками по отдельности. В скобках буду указывать страницы в https://openart.ai/promptbook, где есть фото и примеры текстов для некоторых из приведённых параметров. Ну и для понимания: данные в таблице – это не полный перечень, это именно отдельные примеры, а сколько всего вариантов каждого типа параметра может быть, бог его знает, думаю, что очень много.

1) Shot type

Крупность плана подробно была описана в главах выше, снова повторяться здесь нет смысла. Это те же самые «close-up», «long shot» и т.д.

2) Style

Варианты стилей (стр. 19-20):

  • Polaroid – фото полароида.
  • Monochrome – чёрно-белый.
  • Long exposure – долгая выдержка (наверное).
  • Color splash – заданный объект будет выделяться колоритностью цветов, фон будет иметь гораздо меньшую цветность.
  • Tilt-shift – в точности не знаю, что это, предположительно означает взгляд с высоты под углом вниз.
  • Product – типа реклама продукции, фото предмета, который надо представить зрителю.
  • Portrait – портретное фото.
  • Satellite – фото со спутника.

4) Lighting

Варианты освещений (стр. 23):

  • Soft – мягкое.
  • Ambient – рассеянное. У меня при рисовании персонажа порождало домашнюю уютную иллюминацию в полутьме.
  • Ring – кольцевое. Персонаж будет освещён со всех сторон, то есть это явно не солнце, это подразумевает наличие окружающих источников света.
  • Sun – солнечное.
  • Sun rays – эффект лучей солнца, пробивающихся сквозь тучи, деревья, шторы, или т.п.
  • Cinematic – кинематографическое освещение (как в фильмах).
  • Nostalgic – что-то с уклоном в прошлое. Например, как на старых фото. Но тут много вариантов по-моему может быть.
  • Neon – неоновый свет.
  • Studio – студийный. У меня с таким освещением персонажи рисовались находящимися в некоем не очень-то красивом помещении с яркими источниками света, что выглядело не слишком презентабельно. Но опять же наверняка разные сети по разному реагируют на этот параметр, какие-то вот так странно, а какие-то идеально выставят вам свет, будто он студийный профессиональный.

Примеры:

Fallout concept art school interior render grim, nostalgic lighting, unreal engine 5.
Fallout concept art school interior render grim, purple neon lighting, unreal engine 5.

5) Context

Варианты контекста:

  • Indoor – внутри (помещения).
  • Outdoor (или outdoors) – снаружи (на открытом воздухе, на улице).
  • At night – ночью.
  • In the park – в парке.
  • Studio – в студии.

6) Lens

Варианты объективов (стр. 22):

  • Wide-angle – широкоугольный.
  • Telephoto –
  • 24mm – 24 миллиметра.
  • 40mm –
  • EF 70mm –
  • 800mm –
  • Macro – в главе о крупных планах я уже писал о macro и micro. Тут это «macro lens», там было «macro photography», проверил в двух сетях, кажется это одно и то же.
  • Bokeh – боке (вроде бы предполагает размытие объектов вне фокуса, иными словами, фона).
  • Fish-eye – рыбий глаз, то есть словно рыба смотрит, пространство искажается специфическим сферическим образом. Не все сети чётко поддерживают этот эффект, например RealDream12 вроде и слегка исказила пространство, но в то же время изобразила персонажа в одежде с рисунком рыбы.

Пример (в сети XLL «Envy Starlight» очень красивые результаты получались):

photo of a ladybug-bee hybrid standing on a tulip, macro lens

По поводу миллиметров, я вписал в список все, какие видел в примерах, но бывают ли они строго определённые или можно писать любые, какие хочешь, я без понятия (более склоняюсь к мысли, что второе). Попробовал рисовать по одному и тому же тексту с объективом 20мм и 800мм, как ни старался разглядеть разницу, как-то я не смог понять, в чём она и есть ли вообще.

7) Device

Варианты устройств (стр 21):

  • iPhone X –
  • CCTV –
  • Nikon Z FX –
  • Canon –
  • Gopro – камера гоупро.
  • Drone – фото с дрона.
  • Thermal – тепловизор.

Пример текста на основе всех семи типов параметров:

Close-up Polaroid photo, of a husky, soft lighting, outdoors, 24mm Nikon Z FX

В переводе: «показать близко, фото полароида, хаски (т.е. собака породы husky), на улице, фотоаппарат 24мм Nikon Z FX». Самое интересное в данном примере, а он не мой, взят из слайд-справки, полароид и Nikon Z FX, это разве не два разных устройства? Ну, или всё же нет, или нейросетям как-то всё равно, они хорошо умеют смешивать несмешиваемое. Я немного попробовал подобавлять «24mm Nikon Z FX» и «800mm Nikon Z FX» в тексты при рисовании фото людей в три сети Dezgo, в двух влияния не заметил, в XLL сети Juggernaut9 оно было, цвета становились более естественными, но размер объектива опять же никаких зримых отличий в фото не привносил.



Волшебные слова

Раздел 4 (страница 57) слайдов https://openart.ai/promptbook.

Стр. 58. Параметры качества могут драматически влиять на результат (это приблизительный перевод того, что написано в слайдах).

  • HDR -
  • UHD -
  • 4K или 8K или 64K -

Описаний данных параметров не приводится, есть только пример их применения:

A landscape, HDR, UHD, 64K.

Конкретно в этом примере если параметры убрать (оставив только «A landscape»), качество картинки определённо падает. Но я не уверен, что так и будет, добавь мы какие-то дополнительные яркие детали в текст. Впрочем, я не уверен и в обратном. Разницу в качестве не всегда легко определить на глаз. Я пытался в более сложные тексты добавлять «HDR, UHD, 64K». Ну не вижу я отличий. Так что делать это перестал.

Стр. 59-67

  • Highly detailed – улучшает детализацию. Тоже порой драматическим образом, если верить описанию.
  • Studio lighting – студийное освещение, может улучшить качество фото.
  • Professional – добавление этого слова (перед photo) может сильно улучшить цветовую контрастность и детализацию. От себя скажу, полностью подтверждаю, у меня применение в некоторых текстах (только со словом «picture», а не «photo», и усилением в 1.2-1.4 в обычных сетях и в 1.4-1.6 в XLL) порой фантастически улучшало эффектность изображений, превращая их из скучных или примитивных в отличные, иногда просто на порядок разница была. Способно заметно или сильно улучшить качество картинки (если оно исходно недостаточно хорошее). Способно заметно улучшить качество внешности персонажей с посредственного до модельного эффектного. Способно улучшить стиль одежды персонажей сходным образом. Способно и при рисовании чего угодно иного помимо людей добавить качества, красок, цвета, эффектности, трёхмерности, снизить шумы, и т.д. Однако бывает, что и портит или ухудшает картинку, особенно если сеть и без него справляется хорошо. Или не даёт никакого позитивного эффекта. А как минимум в одной из сетей провоцирует искажение графики даже при малых усилениях. Потому толкать его бездумно везде определённо не стоит, но держать всегда в голове, что оно есть, помнить о нём, не помешает. Кроме «picture» и «photo» с ним можно использовать многие другие слова (всякое будет влиять по-своему): «shot», «view», «pic», «photography», «angle», «image», «portrait», «art», при рисовании женских персонажей есть шанс, что классно зайдёт слово «model»: «(professional model)1.4», это может радикально улучшить эффектность внешности и позы. В общем, горячо рекомендую не забывать о слове «professional», когда вы рисуете в Dezgo.
  • Trending on artstation – описание не приводится, есть только картинки для сравнения, если судить по ним и по моим попыткам применять этот параметр, добавит артистизма, художественности, нормализует краски, если, допустим, вы рисуете персонажа начала прошлого века – таких нейросети стремятся изображать в стиле старинных (чёрно-белых) фото, trending on artstation полностью исправляет это.
  • Unreal engine – тоже нет описания, а картинки примеров приведены такие, что по ним что-то внятное сформулировать непросто. По моим ощущениям чем-то похож на предыдущий параметр, добавляет качественности, красочности, эффектности, но кажется лишь тому, что можно нарисовать в 3D. Если вы используете стиль 3D, и вам слишком примитивно и грубо рисует персонажа (или что угодно другое, отображаемое трёхмерно), попробуйте применить этот параметр, по идее есть шанс, что качество графики заметно улучшится. В примере из этой же слайд-справки, который я приводил выше в главе «Photography prompt», используется «unreal engine», но с цифрой 5 («unreal engine 5»). Вопрос, почему в примере «5» есть, а здесь нет? Я попробовал убрать из того примера «5», разницы не почувствовал. Тем не менее сам факт интересен.
  • Vivid colors – добавит жизни в вашу картинку.
  • Bokeh – размывает задний фон (пример: «A cute totoro in a yard, bokeh»), позволяя этим лучше сфокусировать внимание зрителя на отображаемом объекте.
  • High resolution scan – превратит фото в историческое (придаст стилистику старого фото из газеты или журнала), если вам по каким-то причинам это надо.



Дополнительные материалы


Немного о цензуре

Не то чтобы я великий специалист в вопросах цензуры в нейросетях, собственно говоря, я вообще не специалист, но кое-что о ней всё же знаю. Насколько я смог понять, упражняясь с генерацией картинок, она может быть двух принципиально разных видов:

  1. Сканирующая ваш текст на предмет ключевых слов, подразумевающих сомнительный контент.
  2. Сканирующая сгенерированную картинку на предмет запретного контента прежде чем отобразить её вам. Не исключает одновременного использования и цензуры первого типа.

Я преимущественно пытался рисовать лишь в двух нейросетях – Кандинском2.1 от Сбера и Dezgo. Вот о них обеих и буду в данном случае говорить. По-моему цензура в нейросети, даже в одной, не что-то единообразное, это бог весть знает сколько разных механизмов, напиханных вразнобой разными людьми, встроенных по-разному в разные участки нейросети, в том числе в отвечающие за разные стили рисования, потому часто при смене стиля происходит смена её строгости, причём по моим ощущениям, чем стиль примитивнее, тем она строже, на основании чего приходим к выводу, что в прошлом те, кто её встраивал, относились к своему делу гораздо ответственнее. Что она конкретно делает, если хочет вам что-то запретить? У Кандинского это чаще всего запрет на отображение. Вам просто подменяют результат рисования на картинку с полем цветочков (или с зайчиком, или горой). Также ваши указания могут игнорироваться, персонаж принудительно может рисоваться крупным планом, чтобы всё, что вам не положено видеть, осталось за кадром, ваши указания могут изобретательно интерпретироваться в более невинном ключе, персонаж может прикрыть руками самые свои важные места (если остался без одежды), или может повернуться к вам спиной (мне реально кажется, некоторые люди, придумывавшие цензурные механизмы, развлекались по полной), а если говорить о несовершеннолетних персонажах, один из стандартных ходов (имеющихся также и в Кандинском) – изменить возраст на совершеннолетний. В Dezgo не цензурят ни за что иное кроме несовершеннолетних, в нём этот механизм основной, но и есть другие, включая и многие уже перечисленные, и собственные оригинальные, допустим, приделывание головы старухи на детское тело. Или закрашивание миниатюрными полосками сомнительных мест (что пожалуй достаточно сомнительный способ цензуры). В общем, кто во что горазд, я наверняка далеко не все способы знаю.

В чём может быть проблема с цензурой? Конкретно в Кандинском прежде всего в том, что она в нём избыточна, частенько срабатывая не по поводу или запрещая в том числе такое, что вроде бы не должна. Я в новый год решил порисовать там, под настроение так сказать, мне нравится тема зомби, попробовал рисовать снегурочек-зомби в купальниках, не всегда, но регулярно получал поле цветочков вместо картинки. Попытался использовать фразу «макияж смерти» (ожидая чёрный лак на ногтях, чёрную помаду, Кандинский в целом очень хорош в интерпретации образов), и что вы думаете? Получил стопроцентную цензурную реакцию. Макияж смерти в Кандинском строго под запретом. Написал «странные созданьица в траве», и даже на это умудрился словить цензуру. У цензуры могут быть откровенно ложные срабатывания. И даже баги. У Кандинского в новый год был баг на 18 лет. Пишешь «девушка 18 лет» - поле цветочков. Пишешь любой другой возраст, и никаких проблем. В Dezgo цензура распространяется только на детей, соответственно лишь при рисовании их с ней могут возникнуть какие-то сложности. Впрочем, пожалуй есть и определённые исключения. Основные проблемы, с какими можно столкнуться в плане цензуры в Dezgo – это ложное срабатывание, ложное неполное скрытое срабатывание (я это называю «подцензуриванием») и не срабатывание. Ложное – нам надо нарисовать несовершеннолетнего персонажа, а ему почему-то добавляют возраст. Если вы не понимаете, что цензура есть, и работает именно прибавлением возраста, это может ставить в тупик. Пишете «нарисуй мне то-то и то-то», а тебе рисуют совсем другое. Вследствие чего возникает ощущение, что работа с нейросетью нечто более сложное, чем ты думал, что у тебя почему-то не выходит, что ты недостаточно умён для этого. Просто надо посмотреть внимательно, что ты написал, не перепутал ли значение английских слов, не опечатался ли, также может быть стоит избегать упоминаний частей тела (даже если они ничего не обнажают, на некоторые не исключена цензурная реакция). Кроме того, после определённых вполне невинных слов цензура тоже способна сработать, допустим, пишешь «стройный», и она иногда включается, а пишешь «худой», и всегда нет. Стиль киберпанк очень цензурно строгий (реагирует избыточно на многое). Подцеззуривание – более неприятная вещь, так как оно плохо заметно, не бросается в глаза, но ухудшает рисунок, и вот оно порой влияет и на взрослых персонажей. По отдельным ключевым словам нейростеть может добавить сколько-то лет персонажу, но не всему, а в каких-то отдельных его элементах. Только в лицо, а всё остальное не тронуть. Или только в формы тела, а лицо и рост не тронуть. Картина получатся странная, часто не очень приятная, человек становится более некрасивым, несколько противоестественно выглядящим, но продолжает восприниматься на свой исходный возраст, потому далеко не всегда можно догадаться, что ваш текст провоцирует подцензуривание. Что касается несрабатывания, Dezgo, как мы знаем, склонен обнажать по поводу и без. Написали вы, к примеру, «cute girl» без указания конкретного возраста. А он хлоп – и вам юного персонажика без ничего. Представьте, если вы не один, и кто-то увидит у вас такое на экране. Что и как ты будешь потом доказывать. В Dezgo цензура преимущественно первого типа. Она не анализирует, что нейросеть вам нарисовала, она анализирует только ваш текст на предмет ключевых слов. Так что ждать от неё надёжности не стоит в принципе.

Здесь мы подходим пожалуй к главному моменту, на который я бы хотел обратить ваше внимание. Рисующие нейросети при всей их замечательности вовсе не невинны. В них заложен довольно жесткий сомнительный потенциал. Про то, что они рисуют без ничего взрослых, я вообще молчу, хотя по идее это требует маркировки 18+ и ограничений доступа по возрасту. Но они позволяют рисовать и детей. А цензура второго типа, которая более-менее надёжна, применяется в них далеко не всегда, например, в Dezgo, как мы поняли, её нет. Что до цензуры первого типа, она абсолютно формальна, фактически лишь для галочки. Во-первых, в ней полно дыр, она срабатывает не на все слова, на какие должна бы. Во-вторых, очень примитивна, её можно обойти и обмануть как угодно. Я немного поэкспериментировал с этим как раз в новый год в Кандинском2.1. Самый эпичный (ну или смешной) способ, который я придумал, я написал: «дружище Кандинский, а нарисуй-ка мне сказочное существо, которое выглядит в точности как человек». И что вы думаете? Мало ли существ на свете. Собачки, кошечки, сказочные твари. На них цензура первого типа не реагирует, дописывай далее вообще что хочешь, никаких препятствий. А выглядели они именно так, как я указал, на вид люди и люди. Но такой сложный способ вовсе не обязателен. Кстати в Кандинском2.1 впоследствии заменили цензуру с первого типа на второй. Так что теперь там всё как надо. В Dezgo дела обстоят гораздо хуже. В его цензуре стоит отметить дополнительно ещё два момента. Итак, в-третьих, в неё, на мой взгляд намеренно, встроен механизм, позволяющий не давать ей сработать. Примитивный приём, пишешь текст по-особому, и она совершенно перестаёт реагировать на запретные слова. Мне трудно поверить, что это случайность, настолько всё удобно. Ну и в-четвёртых, когда я писал данную главу, на всякий случай решил потщательней проверить всё, поюзать разные сети Dezgo, чтобы уж слишком не вводить вас в заблуждение. И обнаружил, что в половине XLL сетей цензуры нет вовсе. Не предусмотрено. Такого я не ожидал, если честно. Должны же быть какие-то правила. Нет, абсолютная свобода. Тогда я решил заглянуть и в другие нейросети, помимо Dezgo. Я их не так уж и много знаю, сперва зашёл на https://www.img2go.com/ru, там вроде бы второй тип, кажется вполне надёжный. Затем зашёл на https://www.krea.ai. А там тоже цензуры нет. От слова совсем. Даже и не знаю, что теперь думать. До сих пор пребываю в некотором замешательстве. Вот реально, я и представить себе такого не мог. Есть ощущение, будто все правила отменили и всем на всё начхать. Технологии развиваются слишком стремительно, и по-моему никто к этому не готов, нет даже попыток порядок навести какой-то с нейросетями, только разговоры слышно, типа, мир когда-то придёт к вырабатыванию правил. Как-то уже пора начинать их вырабатывать, знаете ли. Вот смотрите, если вы хоть одну картинку противозаконного характера разместите в интернете, вас могут посадить. А если размещаете нейросеть, которая позволяет такие картинки производить в любых количествах, любого содержания, вам не только ничего не будет, но даже этот сайт никто не запретит, не заблокирует. Никто и внимания не обратит. Словно так и надо. Интересная ситуация, не правда ли? Не знаю, как для вас, а для меня очевидно, цензура существует не просто потому что какому-то моралисту так захотелось, а потому что она оберегает общественную мораль. Без коей общество обречено – в исторической перспективе. А раз общество, значит и страна. Это не мелочь. Нужны правила, определяющие цензурные требования к нейросетям, генерирующим картинки и видео. Но подозреваю, пройдет очень много лет, прежде чем у нас власти и общество озаботят себя данной проблемой. Лишь когда она достигнет неких критических значений, и её уже не выйдет игнорировать, вот только тогда… И то не факт. Надеюсь, я не прав. Так или иначе, данный мой текст – мой маленький вклад в стремление что-то изменить. Я маленький человек, малозначимый, сделать большее, боюсь, мне не по силам.



Проблема конфиденциальности

В этой главе я расскажу о структуре данных, сохраняемых Dezgo в своих картинках, и о том, как удалить их, если вы не хотите, чтобы они были доступны другим людям при публикации вами картинок в интернете. Прежде всего следует отметить, он сохраняет данные только в файлы типов Png и Jpg, а в WepP нет, во всяком случае в открытом виде (если они там есть в закодированном, как об этом узнаешь?), то есть выбрав WepP формат в его настройках вы уже как будто решаете проблему конфиденциальности. К сожалению формат WepP не всегда удобен, например у меня Win7, в которой он не открывается стандартными средствами, просмотреть такие картинки можно только в браузере. Ну и при генерации для себя то, что в картинке есть вся информация о параметрах генерации, в общем-то очень удобная вещь – нравится картинка, захотелось впоследствии ещё погенерировать что-то подобное, всё у тебя в руках, вот оно, перед глазами, вводи повторно и генерируй. Я бы даже сказал, это шикарное решение Dezgo (было бы, если бы он предупреждал о нём пользователей, чего на данный момент не наблюдается, ну или почему-то не попалось мне на глаза, если оно вдруг есть). Итак, для начала о структуре данных. На сегодня я видел четыре типа данных, сохраняемых Dezgo в картинках.

  1. eXIf (UNICODE) – располагается очень близко к началу файла, обычно не далее 140 байт от его начала, содержит, во-первых, в текстовом виде в формате Unicode (двухбайтовом) полный перечень настроек, задававшихся пользователем при генерации картинки, и во-вторых, в виде кода ещё небольшой блок какой-то информации.
  2. tEXt GenInfo – располагается сразу после eXIf, содержит в текстовом виде в формате Ansi (однобайтовом) полный перечень настроек, задававшихся пользователем при генерации картинки – иными словами полностью повторяет текстовую часть блока eXIf, только в Ansi. Предположительно формуется на языке программирования С, я с этим языком не работал, но видел его, тут все параметры заключены в кавычки, делятся на блоки, заключённые в фигурные скобки. Что это, как не С? Сохраняет русские буквы и ряд редко применяемых символов в кодах Unicode, например, если вы случайно ввели вместо английской «e» русскую, она будет выглядеть вот так «\u0435», что дарит вам возможность выявлять подобные ошибки.
  3. tEXt GenCode – неизвестные (мне) данные, частично или полностью (не выяснял это) дублирующие блок закодированных данных из eXIf.
  4. zTXt GenInfo – закодированные или пустые данные (z как бы намекает на пустоту). Если в картинке есть этот блок, в ней не будет блока 2. Встречается очень редко.

Неслабо Dezgo пишет всего в картинки? В Jpg он пишет только первый блок, то есть только eXIf, сохраняя его в поле «комментарий» файла. Ну а в Png может быть до трёх блоков - обязательно eXIf, чаще всего (с вероятностью процентов в 99) tEXt GenInfo, насчёт tEXt GenCode ничего не могу сказать, мне он ни с какого боку не интересен, там закодированные данные, мне их никак не расшифровать и не истолковать. Каждый блок записывается в Png стандартно в виде отдельной стандартной структуры (4 байта – размер блока данных, 4 байта – тип данных, блок данных указанного размера, 4 байта – контрольная сумма). Таким образом, как я понимаю, их очень легко полностью выкинуть из файла, не нарушая его структуру, просто считывай блоки данных, и те, что опознаны как GenInfo или GenCode, не сохраняй в новый файл, остальные сохраняй. Но я в своей программе (Dezgo Params Viewer, о которой упоминал в первой главе) не стал этого делать, хотя бы потому, что далеко не сразу заметил наличие блоков 2-4. В глаза хорошо бросается первый блок (при открытии картинки блокнотом), остальные надо приглядываться, но станешь ли ты приглядываться, найдя первый блок? Как можно ожидать, что параметры генерации будут сохранены в картинке дважды? Зачем? Бог его знает.

О формате данных. Разные функции сохраняют разное количество данных и отчасти в неодинаковой последовательности. Скажем, у одних информация о размерах картинки располагается выше поля prompt, у других ниже. Вот пример, как выглядит блок eXIf функции Text-to-image:

JobId: f4d144e7-637c-82a2-d02a-f5d53375a76e
Function: text2image
Input:
  width: 384
  height: 672
  prompt: art colors+++. wild fantastic animal
  model: realdream_12
  count: 1
  negative_prompt: ugly, tiling, blurred, watermark
  guidance: 7
  steps: 16
  sampler: dpmpp_2m_karras
  seed: 2863252897
  upscale: 1
  lora1_strength: 0.7
  lora2_strength: 0.7
  format: jpg

Что для нас тут важно? 1) Функция – обозначение её, как видим, не совпадает с названием, «text2image» означает функцию «Text-to-image». 2) Prompt – содержит текст, по которому картинка генерировалась, 3) model – указывает выбранную нейросеть, тут тоже обозначения могут отличаться от настоящих имён, в данном случае отличие невелико, «realdream_12» означает сеть «RealDream12». 4) Negative_prompt – иногда негативы очень сильно влияют на результат. 5) Sampler – если у вас есть обыкновение его менять, я так почти никогда не делаю, но иногда всё же выбирал иной, чем задан по умолчанию. Остальное лично для меня не особо важно, так как я никогда не меняю настройку guidance, а настройки «count» и «steps» при бесплатной работе с Dezgo недоступны.

Как можно просматривать эту информацию. В Jpg она является комментарием, то есть открывай свойства файла, смотри комментарий, копируй его. В Png это его внутренняя инфо, так что только блокнотом. Открывай картинку как текстовый документ и копируй оттуда. Ну и опять же и для Jpg и для Png есть моя программа. Каковую как автор, я, естественно, вам горячо рекомендую. По мне так она весьма удобна. Напоминаю, что скачать можно тут: https://dvo.my1.ru/DezViewer.htm. Не требует установки, не нуждается в деинсталляции. Распространяется бесплатно. Единственно, я не тестировал её нигде кроме Win7. Но по идее это достаточно простая программа, вероятно и под другими Win не должно быть никаких проблем.

Теперь по поводу конфиденциальности. Если вам не хочется делать тексты, по которым вы генерируете картинки, достоянием общественности, но картинки опубликовать в интернете хочется, какие у вас есть варианты:

  1. Перезаписать картинку с помощью любого графического редактора. Кстати, это не всегда помогает, например если воспользоваться стандартным win-приложением Paint, надо обязательно сохранять картинку в ином формате, чем она была (если она была в jpg, значит только не в Jpg), в противном случае вся информация в ней останется.
  2. Обработать в какой-нибудь перезаписывающей онлайн функции. Например, в функции upscale Dezgo. Эта функция не имеет никаких настроек, ну почти никаких. Потому ничего и не сохраняет. То есть она вам увеличит картинку, и в этой увеличенной версии никаких данных уже не будет.
  3. Воспользоваться моей программой. Она может не только отображать параметры генерации картинок, но и затирать 4 ключевые из них на ваш выбор. Может проделывать это с картинками по одной, а может сразу со всеми картинками в указанной вами папке. Тут я должен сказать следующее. Я не профессиональный программист, по сути я изучал программирование тем же самым «методом тыка», каким разбирался и с работой в Dezgo. Плюс, за последние десять лет занимался им где-то месяц, а последние пять вообще не занимался. Но похоже это как кататься на велосипеде, если освоил… Сел через пять лет писать, и как будто и не заканчивал. Тем не менее, вмешательство в файлы ответственное дело, при ошибках есть риск их испортить. А вмешательство в сразу много файлов… Делайте копии картинок, прежде чем править их моей программой. При просмотре она их испортить не может, а при записи… Я протестировал её на почти тысяче файлов, сначала стёр данные в 210 файлах, потом ещё в 730. Сбоев не было. Но подстраховочка не помешает. Хотя бы с картинками, которые для вас важны. Всестороннее я свою программу не тестировал. Да, это как будто довольно жёсткая антиреклама ей сейчас с моей стороны. Но, допустим, у вас есть 730 файлов картинок. Сколько времени вам понадобится, чтобы перезаписать каждую с помощью графического редактора? Сколько чтобы прогнать через upscale Dezgo, особенно в бесплатном режиме, в котором он не очень-то спешит? А сколько в моей программе? Секунды 4. Ну может 10. Какой ваш выбор? Так или иначе, он за вами.
  4. Для картинок Jpg есть ещё один путь – зайти в свойства файла в комментарий и стереть последний. Это работает, но с оговорками. Если вы сотрёте разом весь комментарий, он как бы удалится, перестав отображаться, в свойствах файла вы уже не сможете его видеть. Но внутри файла полностью сохранится, и блокнотом и моей программой данные Dezgo всё равно можно будет посмотреть. Если же вы не станете его стирать, а исправите, допустим сотрёте только часть его или замените на другую, комментарий будет перезаписан, и вот тогда всё получится, во всяком случае у меня получалось. При этом комментарий перестанет быть данными Dezgo, так как утратит некоторые свои скрытые части, не относящиеся к тексту. Например, из него исчезнет слово «UNICODE», предваряющее текст. Но какая разница, не правда ли? Цели-то своей мы добьёмся. В общем, это тоже вариант, у меня он работал.

С файлами, созданными flux-функцией, моя программа в настоящий момент не очень хорошо работает, видит в них только блок данных tEXt GenInfo. Я её написал раньше, чем функция flux появилась в Dezgo.



Список нейросетей

Я не ставлю себе целью перечислить здесь всё, что только существует. Укажу лишь самое интересное из того, с чем сталкивался сам, куда хоть раз да заходил. Список не будет слишком большим. Прежде всего должен сказать вот что. Многие нейросети ныне работают через телеграмм. Однако мне они недоступны. Так получилось, что у меня нет смартфона. В жизни он мне не нужен, а заводить его только ради того чтобы один раз залогиниться на компьютере в телеграмм? Как-то глупо, да и денег жалко в конце концов. Реально будет лежать у меня в ящике всё время. Посему никак. Вроде бы в телеграмм есть очень интересные сети. Я вам о них никакой информации дать не смогу.

1) Кандинские. Нейросети Сбера. Этих целый выводок. Причём периодически пополняющийся.

Кандинский 2.1 - https://rudalle.ru/kandinsky2
Кандинский 2.2 - https://rudalle.ru/kandinsky22
Кандинский 3.0 - https://rudalle.ru/kandinsky30
Кандинский 3.1 - https://rudalle.ru/kandinsky31

Есть и другие Кандинские, только они излишне специфичны, мне ничем не интересны. Иногда какие-то из перечисленных версий перестают работать, но пока что через сколько-то дней всегда возвращались в строй. Мне более всего нравится Кандинский2.1, и не только за то, что у него самые большие размеры картинок (1536x768 против 1024x576 у 2.2 и 1344x768 у третьих версий, кстати, ещё недавно и у трёшек было 1024x576, что-то меняется в лучшую сторону, этот размер мне гораздо более по душе, чем прежний). Мне нравится именно как рисует 2.1, он делает это совершенно по-другому. К несчастью у Кандинских есть целый ряд недостатков. Главный – всё, что вы задаёте для генерации картинки, после генерации сбрасывается, и для генерации следующей картинки вам надо всё задавать по новой. Задавать текст, задавать настройки. Кто это придумал – гений, дайте ему медаль. Также у них нет негативов. Несколько с перебором цензура. Есть предупреждение, что права на полученные вами картинки принадлежат СберБанку (ну зачем они ему, вот же парадокс). А конкретно 2.1 склонен к удвоению контента (пишете нарисовать человека, нарисует двух, пишете динозавра, получите двух, это жесть как всё портит), в фотореализме жёстко тяготеет к крупным планам, имеет большие сложности с анатомией нижней части тел (как он рисует ноги, это эпик, такие грабли порой создаст, просто жуть). Ну вот всё тут как будто слегка через задницу сделано. И всё равно мне Кандинские нравятся, особенно 2.1, может потому что он первая сеть, с которой я имел дело. И они полностью бесплатны, это уважаю. Понимают по-русски (и ещё 100 других языков, неслабые полиглоты). Из их недостатков отмечу также странный факт – типа русские сети кажется не совсем русские, так как не знают двух ключевых фольклорных русских персонажей. Я про Деда Мороза и Снегурочку. Я в новый год пытался их рисовать (версии 3.1 тогда ещё не было, про неё ничего не могу сказать). И ни разу не получил. Вместо Деда Мороза всегда получал Санта Клауса. Это совершенно по-разному одетые персонажи, их не перепутаешь. Вот за это Сберу надо дать хороший нагоняй. Что за западопоклонничество, что за пренебрежение к собственной культуре? Нехорошо как-то. Суть даже не в том, что его нейросети не рисуют Деда Мороза, а в том, что по запросу о нём рисуют Санту. Подменяют родной образ на чужой, кто не внимательный не заметит, и будет считать, что Дед Мороз выглядит именно так.

2) Img2go - https://www.img2go.com/ru

Помимо генерации картинок выполняет множество и иных операций – ретуширование, удаление фона, увеличение изображений (до 4-х кратного), размытие лиц, восстановление изображений, раскраска, фоторедактирование, поворот, нанесение водяного знака, обрезка, преобразование видео в gif, и др. Платная, но при заходе даёт 10 монеток, всякая операция стоит одну монетку. Если заходить на сайт так, чтобы он вас не запоминал, по идее при каждом перезаходе монетки будут восстанавливаться и соответственно у вас снова их будет становиться 10, у меня было именно так.

3) Krea - https://www.krea.ai

И генератор картинок, и увеличение их. Бесплатно генерирует только в размерах примерно как у Dezgo, в принципе позволяя делать это и без регистрации, правда будет немного заморочисто, так как часто станет выскакивать окно с предложением залогиниться или зарегистрироваться, и его придётся гасить. Лучше всё же зарегистрироваться, если вы там собираетесь задержаться. Генерация картинок осуществляется более сложным образом (чем допустим в Dezgo или в Кандинском), с ней надо разбираться, если есть желание освоить все её возможности (чего я не делал). Очень быстрая, фактически мгновенная. Позволяет перемещаться по широкому диапазону изображений (каждому значению настроек соответствует определённая картинка – изменяете настройки, она изменяется, возвращаете назад, и она становится такой как прежде, по одному и тому же тексту вы можете переключаться между сотней изображений, просто меняя положение ползунка «AI Strength» вверху). Увеличение картинок до 8-микратного, без регистрации пользоваться им не выйдет, да и с ней скорее всего у вас не будет много бесплатных попыток. Однако по-моему, как и в Img2go, если заходить на сайт так, чтобы он вас не запоминал, перезаходы восстанавливают возможность увеличивать. У меня такой фокус прокатывал. Увеличение вроде бы более интеллектуальное – если Dezgo лишь повышает чёткость, здесь, как мне показалось, может исправлять огрехи, допустим, улучшать лица. Правда не всегда это работает качественно. В общем, интересная сеть, но чуток сложная, с ней надо разбираться.

4) Bigjpg - https://bigjpg.com

Увеличение картинок. Бесплатно до 4-хкратного.

5) OpenArt - https://openart.ai

Генератор и редактор картинок, кажется, многое умеет. Но она платная, лично меня такой вариант не привлекает. Тем не менее, она и бесплатно может быть полезна. Во-первых, слайд-справкой по работе с нейросетями - https://openart.ai/promptbook. И во-вторых, в ней пользователи публикуют свои картинки, их там без счёта, к каждой есть и текст и негативы, по которым они были созданы, что позволяет выбирать понравившиеся изображения и пытаться генерировать в других сетях что-то подобное.

6) PurpleSmartAIhttps://purplesmart.ai

Нейросеть про пони. Я не поклонник пони, потому единственная польза, какую я вижу в этой сети – в ней тоже есть во множестве картинки, созданные пользователями, и тоже к каждой указаны и текст и негативы, что позволяет учиться на их примере, заимствуя интересные решения. Чтобы видеть изображения на сайте, вам понадобится ВПН.

7) Яндекс-браузер

Не то чтобы это рисующая нейросеть, хотя там вроде что-то и на эту тему есть. Однако я как бы и не обещал, что буду именно только о рисующих сетях вести речь. Яндекс-браузер по-своему выдающаяся вещь. Во-первых, он переводит видео вживую. Забавно, что я когда-то опубликовал описание будущего, типа энциклопедию о нём, и там в том числе предсказывал технологию автоперевода видео вживую. Я о ней говорил как о жутко отдалённом будущем, и даже в голову не приходило, что доживу, что это будет в наше время. И вот оно есть, и даже бесплатно. Работает правда так себе пока ещё. И тем не менее, я смотрю некоторые иностранные видео, и большей частью понимаю, что там говорят. Но всё же ещё более знаменательна лично для меня другая функция яндекс-браузера. Он может искать опечатки в текстах. До этого я пробовал разные нейросети, и ни одна вообще ничего не могла. Спрашиваешь у сети: «ты можешь искать смысловые опечатки» (ну то есть когда слово грамматически верное, но неуместно по смыслу, например, ты вместо «текст» написал «тест»). И получаешь ответ: «да, сто пудов». Пробуешь искать, и ничего она может, ни одной опечатки не находит. А вот яндекс-браузер находит практически всё, не 100%, но около того. И не только опечатки, вообще что угодно. Мощнейшая штука в этом плане. К примеру, прогоном через него конкретно данного руководства, когда оно было уже готово, уже проверено мной, я выловил порядка 120-150 различных опечаток и ошибок.

Как пользоваться проверкой текстов: ещё недавно вам понадобилась бы веб-страничка с полем ввода текста, но теперь всё стало гораздо проще, надо в яндекс-браузере перейти по этой ссылке: «browser://neuro-editor/». Там будет окно ввода, вставляем в него свой текст и жмём вверху «исправить». Мне кстати кажется, изначально проверка работала лучше, более наглядно, хорошо подсвечивала замены слов и ошибки. Ну да ладно, и сейчас неплохо. Спасибо разработчикам яндекс-браузера.









На главную