Как создать изображение с помощью нейросети и Нейросетевое генеративное искусство?

Стиль аниме относится к отличительному и узнаваемому художественному стилю, который возник в Японии и становится все более популярным во всем мире. Термин «аниме» является японской аббревиатурой слова «анимация» и относится к анимированному контенту, который производится в Японии. Стиль аниме характеризуется использованием ярких цветов, преувеличенными чертами лица и выразительными эмоциями.

История стиля аниме

Стиль аниме впервые появился в Японии в начале 1900-х годов, когда японские аниматоры начали экспериментировать с различными техниками анимации. Первый аниме-фильм, Кацудо Шашин (1907 г.), представлял собой двухминутный клип, в котором мальчик пишет символы для «кинофильма» на доске, за которым следует короткая анимация точки на доске, которая движется, а затем превращается в кошка.

В последующие десятилетия аниме превратилось в особый стиль под влиянием как традиционного японского искусства, так и западной анимации. Одной из наиболее важных фигур в развитии стиля аниме был Осаму Тэдзука, который создал Astro Boy в 1963 году. В этом культовом аниме-сериале были представлены характерные дизайны персонажей и методы повествования, которые впоследствии определили стиль аниме.

Характеристики стиля аниме

Стиль аниме характеризуется несколькими ключевыми чертами. К ним относятся:

Большие глаза. Одной из самых узнаваемых черт персонажей аниме являются их большие выразительные глаза. Они часто намного больше, чем в реальной жизни, и используются для передачи эмоций и создания ощущения невиновности или уязвимости.

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

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

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

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

Популярность стиля аниме

Стиль аниме становится все более популярным во всем мире, отчасти благодаря успеху культовых аниме-сериалов, таких как Жемчуг дракона, Наруто и Сейлор Мун. Популярность аниме также подпитывается ростом цифровых медиа и потоковых сервисов, которые упростили фанатам доступ к аниме-контенту и обмен им.

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

Стиль аниме — это характерный и узнаваемый художественный стиль, который развивался в течение десятилетий экспериментов и инноваций. Использование ярких цветов, преувеличенных черт и эмоциональных выражений помогло создать одних из самых запоминающихся и любимых персонажей в истории анимации. Поскольку популярность аниме продолжает расти, мы можем ожидать новых инноваций и экспериментов, которые раздвигают границы этой динамичной и выразительной формы искусства.

Наверняка на Хабре есть люди, уже глубоко изучившие генерацию картинок с помощью нейросетей. Но много и тех, кто ещё не разбирался, почему у Stable Diffusion в названии есть слово «диффузия» и чем разновидности нейросетей различаются.

Докладу всего полгода, но за это время нейросети успели развиться ещё сильнее. Так что, если тема вам интересна, заодно порекомендуем и наш следующий TechTrain, который пройдёт уже завтра (1 апреля): там будет целый ряд докладов про AI, в том числе новый от Дмитрия. Участие бесплатно.

Далее повествование идёт от лица Дмитрия.

Магия программирования и генеративное искусство

Я очень люблю компьютерное искусство, это новый способ выразить себя. Когда смотришь на картины, думаешь: «Хорошо людям — они могут своё воображение представлять на холсте. Мне бы тоже так». И оказывается, что, будучи программистом, тоже можно рисовать.

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

И магия сопровождает программирование на каждом шаге. Можно написать простую программу, которая сможет генерировать сколь угодно сложные объекты:

Это так называемая снежинка Коха: фрактал, который потенциально может бесконечно детализироваться (достаточно указать, какой уровень детализации мы хотим). Магия программирования в том, что небольшие конечные объекты способны генерировать потенциально бесконечную сложность.

На этом основаны художественные приёмы. Есть целое направление компьютерного генеративного искусства, где стандартом является язык Processing — модифицированная версия Java с рисовательными примитивами. Могу рекомендовать книгу «Generative Art: A Practical Guide Using Processing» Мэтта Пирсона.

С этим связан интересный сайт openprocessing.org, где собраны работы разных людей. Давайте посмотрим на одну из них. На первый взгляд, здесь рисуются случайные кривые, но потом они складываются в фотографию:

На OpenProcessing можно заглянуть в код любой работы, можно сделать свой форк. В этой работе код — всего лишь два небольших файла на Processing.

Тут мы пишем код, который делает что-то красивое, и человек целиком выступает в роли автора, а компьютер — просто исполнитель.

Но существуют также искусственный интеллект и машинное обучение. Можно «накормить» компьютер картинами, например, из сборника художественных работ WikiArt, и пусть он сам научится рисовать.

Искусственный интеллект можно использовать в генеративном искусстве двумя способами. Первый подход — просто использовать возможности искусственного интеллекта, чтобы реализовать идею человека. Второй — натренировав искусственный интеллект на картинах, начать воспринимать его как соавтора.

Пример первого подхода — когнитивный портрет. Мы берем фотографии людей и накладываем их друг на друга автоматически таким образом, что определенные части лица совпадают:

Глаза и рот — опорные точки лица. Мы хотим сделать так, чтобы они совпали, и получился бы усредненный портрет. О том, как это сделать, я ранее рассказывал своём блоге.

Ещё я сделал картину, которая называется «Взросление»:

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

Как научить ИИ рисовать самостоятельно?

Чтобы ответить на этот вопрос, сначала нужно разобраться, как работают нейросети.

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

Например, если я хочу научиться отличать кошку от собаки на фотографии, то мне нужно на вход подать изображение этой кошки. Каждый пиксель на фотографии будет входом в нейронную сеть. Если у меня есть картинка размером 100 на 100 пикселей, то это значит, что будет 10 000 входных нейронов. Будет два выхода — «кошка» или «собака». Если это кошка, то выход должен быть 1-0, а если это собака, то 0-1. Мы будем показывать нейросети много картинок и ожидать, что она научится распознавать их правильно.

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

Свёрточные сети

Есть архитектура «свёрточные сети» (convolutional neural networks, CNN). Они устроены таким образом: сеть «бежит» по изображению фильтром — матрицей, которую мы умножаем на локальную окрестность.

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

А если мы, например, возьмем горизонтальную матрицу, то будут фиксироваться горизонтальные штрихи. Возьмем наклонную матрицу — будут фиксироваться наклонные. На основе этого и работают архитектуры нейронных сетей.

Так же устроено зрение простейших насекомых. Биологи обнаружили, что в их глазах есть фильтры, которые выглядят, как разные наклонные объекты, из которых формируется первый уровень понимания действительности.

Из этих штрихов мы можем комбинировать более сложные объекты, например, глаза. А на следующем уровне комбинировать из этих кусочков сами лица. Каждый уровень нейронной сети может обнаруживать какие-то паттерны.

Применив это иерархически, мы учимся выхватывать из изображения нужные нам вещи и узнавать объекты.

А как генерировать? Автоэнкодер

Мы подавали на вход изображение, применяли иерархическое вычленение признаков и получали на выходе некоторый вектор чисел. Этот вектор описывает всё, что было в фотографии. И поверх него мы можем обучить классификатор, который будет говорить нам, кошка это или собака, картина или фотография.

Но пока что мы ничего не генерируем. А как же обучить нейросеть генерировать изображения?

Простейшая идея — сделать сеть, которая называется «автоэнкодер». Мы подаём ей на вход изображение и на выходе просим восстановить такое же:

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

Как это происходит? Представьте, что вам нужно воссоздать картину по минимуму информации. Например, вы с другом договорились: он смотрит на картину, говорит вам какое-то количество информации, а вы потом должны эту картину нарисовать. Если он говорит одно слово («портрет»), то вы нарисуете что-то не очень похожее на оригинал. Если скажет «портрет женщины», вы нарисуете чуть более похожую вещь. А по описанию «портрет женщины с белыми волосами, сидящей за столом и держащей перед собой компьютер» вы нарисуете что-то, ещё более похожее на оригинал — руководствуясь своим пониманием того, что такое женщина, компьютер и белые волосы.

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

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

Решаем проблему случайного вектора

Существует более интересная архитектура — генеративно-состязательные сети (generative adversarial networks, GAN). У них тоже есть генератор, очень похожий на вторую часть автоэнкодера: мы подаем на вход случайный вектор, а на выходе генерируется изображение.

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

В результате две сети учатся совместно. В самом начале генератор создаёт мусор, и дискриминатору очень просто: он легко отличает мусор от настоящего изображения.

Дальше мы говорим: «Раз дискриминатор определил, что вот эта картина — хорошая, давай дальше обучаться на ней». Нейросети ведь обучаются алгоритмом обратного распространения. Тогда генератор начинает создавать что-то более похожее на то, что нам нужно, и улучшается. Он улучшается настолько, что дискриминатор перестает отличать одно от другого. Значит, теперь нам нужно дообучать уже дискриминатор. И мы учим их по очереди, пока не получится так, что генератор научается создавать что-то действительно подходящее.

Вроде бы это хороший способ, но на практике работает не всегда. Вот пример того, что нейросеть считает хорошими картинами, хотя человек назовёт хорошим пейзажем только то, что справа:

Поэтому, чтобы получить какой-то интересный результат, нам обязательно нужно участие человека.

Искусство или нет?

Если, мы обучили нейросеть, и она способна по любому случайному вектору генерировать какую-то картину, считать ли это искусством? Можно подискутировать в комментариях, но пока что вброшу такую метрику: был прецедент, когда картина, сгенерированная искусственным интеллектом, была продана на аукционе за 432 с половиной тысячи долларов.

Группа энтузиастов взяла код и смогла продать результат. Исходный автор кода ничего не получил, и разыгралась не очень красивая история. Но нам важно другое — есть прецедент. Раз за это готовы платить как за искусство, значит, наверное, это искусство?

Как научить рисовать ребенка

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

Можно в таймлапсе посмотреть, как такая нейросеть училась — процесс занял 11 часов. Её просят что-нибудь сгенерировать, и в начале получается не очень хорошо, но  чем дальше она учится — тем получается что-то более похожее на изображение. Справа — цветы, слева — портрет.

Для портрета нейросети очень сложно нащупать правильное размещение всех фрагментов — например, то, что у человека два глаза, и они обязательно на голове. Это неочевидные факты, которые она долго-долго пытается понять, но в конечном итоге, пытаясь нарисовать какое-то лицо с тремя глазами, она все-таки понимает, что, наверное, должно быть два глаза, и учится этот паттерн отличать.

Называем то, что нарисовали

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

Для естественного языка тоже есть нейросети. Это направление стало очень бурно развиваться в 2018-2019 годах, стали обучать генеративные модели. Сначала использовали так называемые рекуррентные сети, которые предсказывают по нескольким предыдущим словам следующее.

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

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

Эта сеть обучалась несколько часов на персональном компьютере. Но если потратить несколько месяцев и миллионы или миллиарды долларов, то удаётся обучить существенно более серьезные модели. Модель под названием GPT-3 оказалась способна генерировать очень разумный текст. В примере белый текст — то, что написал человек.

Дальше мы просим нейросеть сказать, а что же могли обнаружить ученые. И сеть пишет текст, по стилистике типичный для газетной статьи, с цитатами и статистикой.

А если бы мы в начале делали затравку, например в виде стихов, то на выходе мы бы получали тоже стихи. Вот пример, где использовалась модель Yandex YaLM:

Здесь желтое — то, что человек написал или вручную подправил. Остальное — то, что способна сгенерировать нейросеть. В таком стихе есть даже какой-то смысл. Хотя он пока что не выходит за рамки того, что мог бы написать десятилетний ребенок.

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

В 2020 году я на «ЛитРес:Самиздате» выпустил книжку с короткими рассказами, написанными совместно с нейросетью. Она называется «Жизнеописание Сергея Сергеевича в рассказах, правдивых и не очень». Также недавно в продажу вышла книга “Нейро Пепперштейн”, написанная сетью, которую обучили стилю конкретного писателя. В ней — рассказы и самого Павла Пепперштейна, и написанные нейросетью.

Мультимодальные модели

Понимание текста — одна возможность, генерировать изображение — другая. Интереснее всего их совмещать. Получаются мультимодальные модели: мы хотим научить компьютер тоже называть картинки словами.

Существенным достижением был выпуск модели под названием CLIP от OpenAI. Она обучалась на парах «картинка и подпись к этой картинке».

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

Дальше мы подстраиваем нейросеть таким образом, чтобы для картинки, которая соответствует подписи, расстояние междувекторами было минимальным. А для неправильных картинок — тех, которые сопоставлены с неправильной подписью — наоборот максимальным.

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

Это открыло возможности для генеративных моделей нового уровня. Архитектура VQGAN + CLIP, оказавшаяся популярной год назад, использует некоторую генеративную сеть, похожую на автоэнкодер (его вторую часть).

Задача этой сети — подобрать правильный входной вектор, чтобы картинка была осмысленной. Мы подаем на вход случайный вектор, на выходе получается непонятно что. Этот результат мы подаем на вход CLIP’у и сравниваем с текстовым описанием.

Например, мы хотим получить картинку «Мальчик с пингвином». CLIP говорит: «это не очень похоже». Этот результат дальше используем для оптимизации — отправляем его обратно в VQGAN,  чтобы изменить вектор на более подходящий.

Мы действуем итерационно, подгоняя входной вектор, чтобы картинка всё больше и больше подходила на текстовое описание.

Это дает хорошие результаты. Например, по запросу «импрессионистская картина молодой женщины» — получаются вот такие вот картины.

Мы можем использовать разные генераторы, а CLIP выступает в роли дискриминатора, который смотрит, насколько картинка похожа на то, что нам нужно.

Год назад ко дню учителя я делал коллекцию учителей, сгенерированных с помощью VQGAN + CLIP.  Получались такие картины.

Они говорят о том, что нейросеть «понимает», чем учитель математики отличается от учителя географии.

Другой проект: мы использовали нейросеть для того, чтобы получить описание существующей картины, и по этому описанию сгенерировать что-то другое. Это как «испорченный телефон»: один человек смотрит на картину, пытается ее описать, а другой рисует по описанию.

Относительно недавно OpenAI представила свою модель под названием DALL-E 2, а Google — свою Imagen. И они могут генерировать довольно фотореалистичные изображения по текстовому описанию.

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

Чтобы попробовать это самостоятельно, вы можете зайти на сайт ruDALL-E или craiyon.com. Это урезанная версия DALL-E 2, в которой вы можете ввести описание на английском языке и сгенерировать изображение.

Диффузные модели

Как такие модели работают и почему Stable Diffusion так называется? Дело в том, что они основаны на принципе диффузии. Если у нас есть изображение и мы начнём перемешивать его пиксели, то постепенно придём к «шуму». Этот процесс перемешивания называется диффузией.

Мы можем обучать нейронную модель обратной диффузии — по шуму восстанавливать смысл. Как если бы человеку показали размытую картину за стеклом и сказали: «Что там нарисовано?»

Человек сказал бы: «Эйфелева башня». Потому что он знает, как выглядит Эйфелева башня. Можно обучать нейросеть делать то же самое. Но делать это в пространстве пикселей оказывается слишком сложно — их слишком много.

Поэтому Stable Diffusion использует идею латентной диффузии. Сначала с помощью автоэнкодера мы переходим в пространство векторов меньшей размерности, и уже в нём совершаем процесс диффузии. А затем — процесс обратной диффузии, управляемый с помощью текста.

Когда мы даем текстовый запрос для процесса обратной диффузии — мы делаем так, чтобы ответ был похож на этот текстовый запрос — с помощью сети, которая похожа по архитектуре на CLIP.

В итоге мы получаем вектор в так называемом латентном пространстве и с помощью декодера декодируем его в финальное изображение.

Нам не нужно понимать мельчайшие детали, чтобы сгенерировать картину. Мы можем сначала сгенерировать некоторый вектор, а декодер восстановит все детали.

Примерно так устроены такие модели, и результаты у них совершенно другие. Вот проект, который я сделал на день учителя в этом году. На сайте http://teachers.experient.art можно посмотреть на то, как Stable Diffusion видит себе различных учителей.

Что почитать и как попробовать

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

Если вы хотите показать это кому-то, кто не понимает, что такое Google Colab и Python,  есть инструмент beta.dreamstudio.ai. Они дают сгенерировать бесплатно какое-то количество изображений.

Еще есть инструмент neural.love, который тоже пытаются монетизировать, но некоторые простые изображения там тоже можно генерировать бесплатно.

Выводы

  • Искусственный интеллект — эффективный инструмент для творчества. Его можно использовать для простых задач: например, извлечь опорные точки. Но он может и сам делать значительную часть работы.
  • Однако он не придумает идею. Именно человеку хочется что-то выразить — либо рисуя самостоятельно, либо с помощью Stable Diffusion получая  результаты и отбирая из них лучшее. Вклад человека всегда очень велик. Не надо считать, что компьютер рисует всё сам и заменит художника.
  • Еще один важный момент: искусственный интеллект способен привнести случайность. Когда я попробовал писать книгу совместно с искусственным интеллектом, я испытал примерно такое же чувство, как когда мы в детстве с моим приятелем писали книжку по очереди. Ты написал какую-то часть, и ждешь — а что же другой человек напишет. Он же наверняка что-то оригинальное придумает. Это очень приятное чувство, и с искусственным интеллектом ты ощущаешь примерно то же самое. Он придумывает что-то интересное, а человек подстраивает это под свою исходную идею.

Что дальше?

Дмитрий выступил с этим докладом в октябре. Казалось бы, прошло всего несколько месяцев. Но нейросети уже успели сделать шаг вперед — GPT-4 генерирует текст не на уровне 10-летнего ребенка, а пишет дипломы за студентов (кстати, вот ещё одна статья Дмитрия про GPT в образовании) и код за разработчиков, а генерацию изображений начали использовать в реальных продуктах. Например, недавно вышло дополнение к популярной настолке «Имаджинариум», созданное с помощью нейросети. Люди осваивают искусство промптинга — при правильном запросе нейросеть результаты, не отличающиеся от работ digital-художников. Для таких запросов уже существуют специальные каталоги.

А вот так по мнению нейросети выглядит TechTrain — наш бесплатный IT-фестиваль. Он пройдет 1 апреля и будет посвящен роли искусственного интеллекта в разработке и жизни. Обсудим и машинное обучение в целом, и конкретные технологии. А также снова попробуем ответить на вопрос, как ИИ изменит нашу жизнь еще через полгода. Переходите по ссылке, чтобы участвовать.

Уже несколько лет говорят, что нейросети заменят художников и писателей.

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

Объединив разные сервисы, можно с нуля создать детально прописанного героя с ярким визуальным образом. Мы проверили их и попытались дать всем программам одну и  задачу: сгенерировать . В одних нейросетях мы генерировали картинки, в других — попытались прописать характер и диалоги героини.

Выбирайте, что будете генерировать

Где попробовать: на сайте
Простота освоения: ?????
Качество генерации: ?‍??‍?

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

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

Картинки
Starry AI

Где попробовать: на сайте, в приложениях для iOS и Android
Простота освоения: ?????
Качество генерации: ?‍??‍??‍?

Нейросеть создает картинки на основе текстового описания, но с дополнительными настройками. Можно сразу задать стилистику изображения, прикрепить , задать второстепенные параметры. По умолчанию генерирует четыре картинки за раз.

Если не задавать стилистику, то результаты напоминают не очень качественные работы нейросетей прошлого поколения. Зато нет явных ошибок и артефактов. С параметрами Artstation, Concept Art или Greg Rutkowski получается красивее, но все равно деталей мало, а интересные фоны не генерируются. Помогает увеличение качества — оно немного дорисовывает картинку.

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

Картинки
Artbreeder

Где попробовать: на сайте
Простота освоения: ????
Качество генерации: ?‍??‍?

Сайт использует модель StyleGAN — уже довольно старую нейросеть Nvidia 2018 года. Artbreeder генерирует картинки не по текстовому запросу, а смешивает изображения. Это работает так: вы загружаете свою картинку или выбираете из базы, а нейросеть берет характеристики от каждого и генерирует общего «ребенка».

Выберите режим Splicer и категорию в зависимости от того, какого героя хотите получить — портреты, персонажи, или . В режиме обычных портретов можно бесплатно загрузить три своих картинки.

В редакторе выбирайте «родителей» персонажа — одну или несколько картинок. У каждого «родителя» есть слайдеры, которые регулируют заимствование черт или стиля. С помощью слайдеров можно настроить пол героя, его одежду, цвет изображения и другие детали.

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

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

Картинки
Playground AI

Где попробовать: на сайте
Простота освоения: ???
Качество генерации: ?‍??‍??‍?

Доступный сервис, который работает на основе Stable Diffusion — одной из самых продвинутых . Вообще для запуска нейросети требуется мощный ПК и навыки программирования, но на сайте Playground AI можно попробовать облегченную версию, не имея ничего из перечисленного.

Как и в Stable Diffusion, главная фишка сервиса — создание картинок по текстовому описанию. При этом можно указывать детали, которые не хотите видеть — например, ладони с пальцами, которые нейросеть так и не научилась рисовать. Так картинка будет качественнее. Про остальные настройки Stable Diffusion читайте в нашем гайде.

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

Кредитов, как во многих аналогичных сервисах, нет. За день можно сгенерировать до тысячи картинок, после этого придется ожидать в виртуальной очереди.

Картинки
Midjourney

Где попробовать: в Discord
Простота освоения: ??
Качество генерации: ?‍??‍??‍??‍??‍?

Результаты работы Midjourney легко спутать с человеческими артами, настолько они качественные. В отличие от большинства , у нейросети огромное количество параметров, которые можно настроить вручную и получать кардинально разные результаты. Об этом мы рассказывали в отдельном гайде.

Задайте любые параметры для вашего персонажа: внешность, выражение лица, поза. Выберите стиль изображения или даже конкретных художников. В Midjourney можно генерировать не только по текстовому описанию, но и по картинкам — на случай, если вы при создании персонажа вдохновляетесь.

На генерацию у меня ушло около 10 генераций. Сначала не устраивал общий стиль изображений — это легко меняется добавлением к запросу «in style of» имени художника. Потом плохо генерировались глаза, руки и положение меча — он появлялся в случайных местах. Это исправляется только перебором вариантов.

Видео
Artflow

Где попробовать: на сайте
Простота освоения: ????
Качество генерации: ?‍??‍??‍?

Artflow позволяет создать с нуля визуальную новеллу. Сервис сначала генерирует персонажей, а затем «оживляет» их: автоматически анимирует портреты, озвучивает прописанные пользователем диалоги героев. За несколько минут получается полноценная для простой видеоигры.

Нейросеть состоит из двух больших разделов. В Image Studio генерируйте картинки по текстовому запросу. В основном выходят рисованные портреты в стиле художников с Artstation. Лица получаются достаточно красивыми и качественными. Иногда попадаются артефакты или кривые глаза, в таком случае всегда можно запустить генерацию заново. можно сгенерировать фоны.

После создания персонажей переходите к Video Studio. Из готовых или созданных фонов выберите сцену, затем персонажа и его голос — доступны разные акценты и интонации, поддерживается только английский язык. Пропишите реплику героя — первая сцена готова. Повторите действия с остальными кадрами и экспортируйте видео. Сервис автоматически анимирует мимику персонажей — проконтролировать это нельзя, поэтому иногда получается немного нелепо.

На сайте действует система кредитов — бесплатно выдают по 100 штук на картинки и на видео. Одна генерация и один слайд стоят по одному кредиту. На создания диалога между рыцарями я потратила 12 «картиночных» кредитов и 74 «видео» кредита.

Пример ролика из 5 слайдов. Максимальное количество слайдов в одном проекте — 20

Видео
CharacterGPT

Сервис генерирует персонажей с разной внешностью и индивидуальностью по короткому текстовому описанию. Главная особенность: созданные герои — интерактивные. После создания с ним можно общаться и таким образом тренировать.

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

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

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

Аватар двигается и разговаривает на английском языке

Текст
Character AI

Где попробовать: на сайте
Простота освоения: ???
Качество генерации: ?‍??‍??‍??‍??‍?

На сайте Character AI сотни разных ведут осмысленный диалог, имитируя манеру речи Илона Маска, Альберта Эйнштейна, Марио, Гермионы, Шерлока Холмса или даже стула. C помощью такого ИИ можно придумать характер персонажа и написать диалоги для фанфика, игры или книги.

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

Придумайте имя персонажу, напишите приветственное сообщение, добавьте аватар. Среди всех параметров важно имя — если назвать героя «Губка Боб», то он сразу начнет имитировать мультипликационного персонажа.

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

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

Пользовательский бот рыцаря-монахини

Текст
Inworld AI

Где попробовать: на сайте
Простота освоения: ????
Качество генерации: ?‍??‍??‍??‍??‍?

Еще один сайт с чат-ботами, где можно создать своего персонажа. По словам разработчиков, их алгоритм создан для создания героев с интересными диалогами и характерами, чтобы потом интегрировать их в игры на движках Unity и Unreal Engine.

Создайте нового персонажа, напишите имя и краткое описание. Можно самому заполнить карточку героя или сгенерировать автоматически — в таком случае алгоритм пропишет недостающие детали. В карточке персонажа укажите мотивацию, интересы, хобби, черты характера героя. Эмоции и настроение настраиваются через тумблеры: персонаж может быть интровертом или экстравертом, агрессивным или мирным, радостным или печальным.

У героя также можно прописать знания, которыми он владеет. Примеры заполнения карточек можно посмотреть у одного из девяти готовых персонажей. Созданные герои могут взаимодействовать друг с другом в сценах — есть несколько готовых, но их всего пять.

Я создала героиню по краткому описанию и попросила нейросеть автоматически сгенерировать остальные характеристики. Она начала отыгрывать средневековую девушку из неплохого фэнтези.

Чат с созданной мной девушкой-рыцарем

Текст
ChatGPT

Где попробовать: на сайте
Простота освоения: ?????
Качество генерации: ?‍??‍??‍??‍??‍?

ChatGPT — революционный , который может вести реалистичный диалог с собеседником. Нейросеть запоминает детали разговора и может корректировать ответы, основываясь на информации, которую ему сообщил пользователь. Она сочиняет любой текст, в том числе прописывает истории и реплики персонажей.

Напишите в чате краткое описание персонажа и попросите ChatGPT придумать остальные детали — характеристики, мотивацию, внешность, имя. Описание внешности можно использовать как запрос в нейросетях, которые генерируют картинки, чтобы создать визуальный образ героини.

Сервис можно также использовать как , чтобы генерировать диалоги с персонажем: для этого нужно попросить ChatGPT отвечать от имени придуманного героя. ИИ придумывает достаточно детальные и объемные описания.

Недавно мы рассказывали о том, что активно используем нейросети при работе над цифровыми сервисами.

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

Нейронная сеть — это не просто компьютерная программа. Это самообучаемая система «искусственного интеллекта», работающая по принципу человеческого мозга.

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

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

Мы протестировали работу 9 самых популярных сервисов, рисующих картинки по текстовому запросу и сделали выводы: общее впечатление основано на субъективном мнении наших экспертов.

Сервисы тестировали на двух запросах:

  • простой: «красивый кот»;
  • более сложный: «красивый мужчина-фермер с чётко прорисованным лицом собирает яблоки в корзину в яблоневом саду».

Это наиболее художественная сеть от независимой исследовательской лаборатории под руководством бывшего инженера NASA.

Котики от Midjourney

Midjourney относится к классу диффузионных нейронных сетей, то есть состоит как бы из двух нейросетей: одна отвечает за распознавание текста, другая — за генерацию изображений.

Инструмент быстро завоёвывает популярность, потому что удобен в использовании, позволяет создавать сложные арты, креативные иллюстрации и максимально детализированные картины.

Работает через Discord, поэтому необходима регистрация в мессенджере. Создать картинку можно в одном из общих чатов, либо добавить на свой сервер Midjourney.

Некоторое время назад была доступна бесплатная демо-версия с ограниченным количеством запросов. В настоящее время есть три платных тарифа.

  • Базовый — 200 GPU-минут;
  • Стандартный — 15 GPU-часов и возможность поставить релакс режим;
  • Продвинутый —30 GPU-часов/месяц и приватный режим генерации.

Midjourney использует графические процессоры (GPU) для обработки каждого запроса. Когда вы покупаете подписку, вы покупаете время использования этих процессоров.

Время ожидания ответа нейросети: генерация четырёх вариантов изображения длится от 40 до 60 секунд.

Вариации стилей/разрешений: нет стилевых ограничений, хорошо распознаёт текстовые запросы при вводе в строку поиска.

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

Яблочный фермер от Midjourney

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

Stable Diffusion

Это программное обеспечение с открытым кодом от компании CompVis, создающее изображения по текстовым описаниям. В публичный доступ программы была выпущена в августе 2022 году, но сразу стала набирать популярность.

Котик от Stable Diffusion

Для создания картинок Stable Diffusion использует набор данных LAION-5B, который содержит 5 миллиардов изображений из интернета, включая популярные сайты, такие как Pinterest, DeviantArt и Getty Images.

Нейросеть может генерировать изображения на основе текстового запроса, дорисовывать наброски и переделывать картинки-референсы на свой лад.

Всё это бесплатно, а открытый исходный код позволяет установить Stable Diffusion на свой компьютер и использовать собственные вычислительные мощности.

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

Как начать работу: на официальном сайте, обязательная регистрация не требуется. Также есть приложения на основе Stable Diffusion.

Время ожидания ответа нейросети: генерация четырёх вариантов изображения длится более 60 секунд.

Вариации стилей/разрешений: нет стилевых ограничений, но сервис плохо разбирает текстовые запросы, а варианты разрешений ограничены (в веб-версии только 1:1).

Наличие библиотеки изображений: отсутствует.

Фермер от Stable Diffusion

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

Dream Studio

Пользовательский сервис и облегчённая версия Stable Diffusion. Создан для генерации изображения по текстовому запросу или на основе референсной картинки.

Котик от Dream Studio

После регистрации появляется окно, в котором генерируется изображение. Внизу нужно ввести текстовый запрос. Слева можно выбрать размер картинки и насколько сильно она должна соответствовать запросу.

За один раз можно сгенерировать до девяти изображений. Доступна генерация не только по текстовому запросу, но и по изображению.

Стоимость: дается 25 пробных кредитов (кредит примерно равен 125 изображениям). Одна генерация дает от 1 до 10 вариантов изображений. Далее оплата идет за каждые 1000 кредитов.

Как начать работу: можно работать на сайте, а также через Discord или в Google. Для любого варианта необходима регистрация, которая сопровождается долгой верификацией с подтверждением почты.

Вариации стилей/разрешений: нет стилевых ограничений, но сервис плохо разбирает запросы, варианты разрешений ограничены (только версия 1:1).

Наличие библиотеки изображений: только библиотека своих изображений.

Фермер с яблоками от Dream Studio

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

Kandinsky 2

Это обновлённое поколение нейросети Kandinsky 2.0 для генерации картинок, которую Сбер запустил летом 2022 года.

Новая модель сильно улучшена, она была обучена на 170 миллионах связок «текст-изображение», содержит 3,3 миллиарда параметров.

Основное отличие Kandinsky 2.1 от её основных конкурентов Midjourney, Stable Diffusion и DALL-E, в том, что она способна понимать более 100 языков, включая русский.

Как начать работу: опробовать нейросеть можно на сайте, при помощи команды «Запусти художника» на «умных» устройствах Sber, в приложении «Салют», на платформах ML Space и Fusion Brain, а также в Telegram-боте.

Время ожидания ответа нейросети: генерация изображения занимают до 60 секунд.

Вариации стилей/разрешений: нет стилевых ограничений, картинки генерируются в разрешении 768 × 768 пикселей, но в формате 1:1.

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

Шедеврум

Это бета-версия нейрогенератора изображений от Яндекс, которая планирует стать русским Midjourney.

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

Приложение доступно в Appstore и Playmarket, поэтому работать в нем можно на мобильных устройствах.

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

Как начать работу: работает в приложении на любом смартфоне.

Время ожидания ответа нейросети: генерация изображения занимает от 60 до 120 секунд.

Вариации стилей/разрешений: нет стилевых ограничений, генерирует изображения в разрешении 256 на 256  точек, хотя современные нейросети  рисуют гораздо качественнее.

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

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

Dream by WOMBO

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

Котики от WOMBO Dream

Работает на английском языке. Для использования сервиса не нужно регистрироваться или авторизоваться, а пробная веб-версия доступна бесплатно.

С помощью этого сервиса можно легко создавать вертикальные изображения, причём его главное преимущество заключается в том, что пользователь может самостоятельно выбирать стиль изображения из более 30 вариантов и прикреплять референсы к запросу.

Стоимость: бесплатная версия позволяет генерировать одно изображение в выдаче, запрос не более 200 символов.

Как начать работу: работает на сайте, регистрация не  требуется.

Время ожидания ответа нейросети: генерация изображения занимает от 20 до 40 секунд.

Вариации стилей/разрешений: включает в себя 22 разных стиля: синтвейв, фэнтэзи, стимпанк, психоделика, японские гравюры укиё-э, студия «Гибли» Хаяо Миядзаки, Сальвадор Дали и так далее. Для более точной генерации изображения можно загрузить «исходную базу» для текста (любая картинка). Доступно одно разрешение 3:2.

Наличие библиотеки изображений: отсутствует, просмотр сгенерированной фотографии доступен только в очень неудобном маленьком варианте, но есть возможность увеличения в платной версии (не тестировалась).

Фермер с яблоками WOMBO Dream

Общее впечатление: неплохое качество фотографий, но есть сложность с реализмом. Интерфейс продукта очень неудобный, особенно в бесплатной версии. При просьбе сгенерировать красивого кота постоянно удваивал этого кота.

StarryAI

StarryAI позиционируют себя как нейросеть для генерации NFT. Приложение работает на основе трёх алгоритмов:

  • первый создаёт более фантазийные и абстрактные изображения (он называется Altair);
  • второй — более реалистичные (Orion);
  • третий — специализируется на рендеринге (Argo).

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

Котик от StarryAI

Стоимость: в день можно создавать до пяти изображений бесплатно (как в мобильном приложении, так и на официальном сайте).

Платная подписка разбита на 3 тарифа с помесячной оплатой: Starter,Unlimited Pro, Unlimited Pro Max.

Как начать работу: нужно авторизоваться на сайте. Существует и мобильное приложение StarryAI для iOS и Android. Регистрация в приложении не требуется. В приложении тот же функционал и название кнопок, что и в веб-версии.

Вариации стилей/разрешений: нет ограничений по стилям, можно увеличить разрешение за дополнительные кредиты. Бесплатно доступны пять вариантов разрешений, четырех из которых вертикальные.

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

Фермер с яблоками от StarryAI

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

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
CompSch.com