(function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)}; m[i].l=1*new Date(); for (var j = 0; j < document.scripts.length; j++) {if (document.scripts[j].src === r) { return; }} k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)}) (window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym"); ym(93790508, "init", { defer: true, clickmap:true, trackLinks:true, accurateTrackBounce:true }); ym(93790508, 'hit', window.location.href);

Попросили Midjourney, DALL-E 2 и Stable Diffusion изобразить любовь и свой автопортрет. Показываем, что из этого вышло

Текстов про Midjourney, DALL-E 2 и Stable Diffusion за последние месяцы вышло много: пользователи активно экспериментировали с запросами. Мы решили пойти дальше и устроили между ними баттл: сравнили функционалы и проверили, как нейросети рисуют литературных персонажей, исторических личностей, абстракции. Результаты в картинках — в тексте.

Навигация по тексту:

Особенности в работе с нейросетями

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

Midjourney

→ Работает через Discord-канал: для генерации изображений нужно отправить текстовый запрос в чат-канале newbies. Другие пользователи будут видеть ваши результаты.

Окно Discord-канала Midjourney.

→ Каждому новому пользователю доступны бесплатные 25 запросов. Дополнительные 200 запросов обойдутся в $10.

→ В ответ на запрос нейросеть рисует коллаж из четырех изображений. Их размеры можно устанавливать с помощью специальных флагов --w и --h.

Пример настройки разрешения изображений.

→ Изображения можно улучшать или генерировать для них дополнительные варианты.

Пример работы апскейлинга и генератора дополнительных вариантов.

DALL-E 2

→ Проект бесплатный и не ограничивает в количестве запросов. Работает через API, но для пользователей из России доступен только через VPN. Кроме того, при аутентификации понадобится SMS-подтверждение — работает только для иностранных номеров.

Сообщение об ошибке: «Что-то пошло не так. OpenAI недоступен в вашей стране»

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

Пример работы модификатора.

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

Генерация дополнительных вариантов.

→ В DALL-E 2 нельзя устанавливать размеры изображений. Нейросеть умеет работать только с форматом 1:1. Это минус, если нужно сделать широкоугольную обложку для статьи.

Stable Diffusion

→ Исходный код проекта есть в открытом доступе. Для работы с нейросетью можно скачать git-репозиторий и развернуть свой веб-сервер.

Stable Diffusion, WebUI.

→ В Stable Diffusion есть ряд параметров для гибкой настройки генератора изображений:

  • Height, Width — размер изображения.

  • Classifier Free Guidance Scale — насколько точно изображение должно соответствовать запросу. Рекомендуем использовать стандартное значение — 7,5.
  • Number of batches to generate — сколько всего подборок сгенерирует нейронная сеть.
  • Images per batch — количество изображений в одной подборке.
  • Sampling steps — количество раз, которое нейронная сеть обрабатывает изображение. Для всех изображений в статье параметр равен 70.

  • Sampling method — метод выбора «лучших» изображений во время генерации — для простых запросов разница незаметна. В большинстве случаев использовали стандартный метод k_lms.

Изображения с разными значениями Sampling method.

Идея эксперимента

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

Для баттла нейросетей мы придумали и провели пять испытаний.

  • Литературный персонаж. Нейросети сгенерировали образ того, чье имя нельзя называть.
  • Историческая личность. Как думаете, каким нейросети нарисуют Уинстона Черчилля: с сигарой или без?
  • Айтишный сценарий. Проверили, «слышали» ли нейросети про Assembler и программирование.
  • Абстракции. Нарушили правила формирования запросов и попросили изобразить чувство.
  • Набор объектов. Что получится, если просто перечислить объекты в запросе?
  • Видение себя. Проверили, что сгенерируют нейросети, если в запросах написать их названия.

Испытание 1. Волан-Де-Морт

В серии фильмов про Гарри Поттера роль лорда Волан-Де-Морта играли пять актеров. Нам стало интересно, каким чародея «запомнили»‎ нейросети.

Запрос: Lord Voldemort stands and smiles digital art

Несмотря на прописанный в запросе стиль digital art, «испытуемые» показали разные результаты. Самым удачным кажется вариант от Midjourney. Он похож на персонажа из фильмов о Гарри Поттере.

Сложней всего было сгенерировать картинку в Stable Diffusion. В большинстве случаев у персонажа силуэт был неуклюжим, с глюками.

Изображение, сгенерированное Stable Diffusion.

Испытание 2. Уинстон Черчилль

Лондон, 1947 год. По тротуарам ходят люди в выглаженных костюмах, а вдоль дорог стоят красивые фонари. Дайте угадать: представили картину в черно-белых тонах или сепии? DALL-E 2 и Stable Diffusion — да.

Запрос: Winston Churchill standing in front

По умолчанию DALL-E 2 и Stable Diffusion генерируют «фотографии», которые сложно отличить от настоящих. Хотя в первом случае есть недоработки: лица размазаны, а текст не разобрать.

На общую картину это не влияет. У нейросетей получилось «визуализировать» запрос. Однако Midjourney, кажется, справилась лучше. Она по умолчанию сгенерировала полноценную цветную картину. С помощью DALL-E 2 и Stable Diffusion можно получить похожие результаты, но для этого нужно «пошаманить» со стилями и настройками.

Еще один результат этого испытания: ни одна нейросеть не сгенерировала Уинстона Черчилля с сигарой.

Испытание 3. Программирование на Assembler

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

Запрос: man programming in Assembler

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

Скорректировали запрос и добавили деталей: Man sits at computer and programming in Assembler

Мыслитель сидит в позе лотоса и программирует. Результат Midjourney.

Испытание 4. Чувство любви

Представить чувство просто, а объяснить трудно. Оно абстрактно и субъективно. Вопреки рекомендациям по запросам проверили, какой любовь видят нейросети.

Запрос: feeling of love, digital art

Sampling method = k_euler

Абстрактные композиции лучше выходят у DALL-E 2. Они не тривиальны и передают сюжет. Midjourney и Stable Diffusion фокусируются же на шаблонном решении — сердце.

Испытание 5. Набор объектов

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

Запрос: computer, photos with cats, robot, fish

Что не так с третьим изображением? Сначала подумали, что нужно откалибровать параметр Classifier Free Guidance Scale (cfgscale). Он отвечает за то, насколько точно изображение должно соответствовать запросу. Но это ни на что не повлияло: при разных значениях cfgscale получаются обычные слияния картинок.

Результаты по запросу «computer, photos with cats, robot, fish» при разных значениях cfgscale.

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

Испытание 6. Видение себя

И напоследок: как нейросети видят сами себя?

Stable Diffusion ассоциирует себя с лошадьми, Midjourney — с пейзажами и закатами, DALL-E 2 смотрит на себя по-разному. Сначала как на пиво с тумбочкой, а теперь — как на гедзе. Кажется, разработчики от нас что-то скрывают.

Какая нейросеть победила?

Midjourney, DALL-E 2 и Stable Diffusion способны генерировать как потрясающие, так и «слабые» изображения. В каких-то случаях нужно больше поработать с запросами, а в других — достаточно одной попытки, чтобы получить хороший результат. И сложно сказать, какая нейросеть победила. Но в частных случаях выбирать не приходится.

Если нужно сгенерировать изображение здесь и сейчас — используйте Midjourney

Достаточно подключиться к Discord-каналу. Не нужно настраивать VPN или разворачивать целый web-сервер. Можно получить хорошее изображение даже без настроек стилей. Хотя иногда может понадобиться не одна попытка.

У Midjourney есть свой «универсальный почерк». Она по умолчанию генерирует картины, будто написанные маслом, а не фотографии или рисунки, как это делают DALL-E 2 и Stable Diffusion. Преимущество ли это — решать вам.

Хотите объединить несколько разных объектов? С этим поможет DALL-E 2

Она умеет строить сложные и «осмысленные» композиции. Это полезно, когда дизайнеру нужно получить большое количество референсов в сжатые сроки.

Также в DALL-E можно изменять изображения при необходимости. Пример: нейросеть нарисовала пейзаж, но на горизонте стоит лишнее дерево. Вы можете его выделить и удалить.

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

В Stable Diffusion есть настройки для гибкой работы с генератором изображений

Например, если нужно контролировать нагрузку нейросети на сервер, можно уменьшить параметр Sampling steps. А если ресурсов достаточно и цель — получить наиболее качественные рисунки, достаточно выкрутить параметры на максимум. Хотя с Classifier Free Guidance Scale лучше не экспериментировать. Крайние значения параметров генерируют изображения, состоящие из одних «глюков».

Однако для работы с нейросетью нужно развернуть Google Collab или собственный web-сервер. Это решение может оказаться дороже, чем подписка в Midjourney.

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

Читайте также:

0
15 комментариев
Написать комментарий...
Анни М.

по поводу последнего эксперимента: с миджорни и стейбл диффужн все понятно. MidJourney нарисовала картину "посреди путешествия", что и означает ее название. Stable - это конюшня.
Насчет гедзе не уверена, что это значит. Но думаю, что тоже связано с семантикой слова или каким-то брендом чего-то.

Ответить
Развернуть ветку
Жертва стартапа

это так забавно, что DALL-E 2 видит себя как пельмешек))) а вообще, мне кажется, что победителя здесь нет, кто-то где-то лучше, кто-то где-то хуже

Ответить
Развернуть ветку
Selectel
Автор

Справедливо!

А про DALL-E 2, кажется, все мы время от времени чувствуем себя пельмешками :)

Ответить
Развернуть ветку
буква Ю

Не знаю, меня это обошло

Ответить
Развернуть ветку
буква Ю

Я всё же считаю, что победила Midjourney. Самые топовые рисунки получились.

Ответить
Развернуть ветку
праесчвкорнеапыукц4епрдлбрп

согласен, самый слабый из всех нейросетей dall-e2, midjourney чуть лучше stable diffusion, но у последнего больше возможностей) картинку ниже сгенерила миджорней)

Ответить
Развернуть ветку
Selectel
Автор

Какой вам понравился больше всего?)

Ответить
Развернуть ветку
буква Ю

Первый пейзаж, второй с волан де мортом.

Ответить
Развернуть ветку
праесчвкорнеапыукц4епрдлбрп

Для более справедливого теста нужно было подробно прописывать promt, а иначе выйдет.. то что вышло, вот к примеру генерация midjourney по запросу - Theodore John Kaczynski, cinematic image, 85mm - добавлять в конец промта характеристики очень важно, а иначе выходит что-то нелепое, чем более подробный promt - тем лучше результат генерации.

Ответить
Развернуть ветку
Selectel
Автор

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

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

В большинстве случаев нам была важна именно композиция, а не стилистика. Хотя и с последним нет «серебряной пули». Посмотрите на запрос первого испытания: нейросети по-разному воспринимают параметр «digital art».

Ответить
Развернуть ветку
Leonid Sobchenko

потому что stable - конюшня

Ответить
Развернуть ветку
Selectel
Автор

Верно подмечено! С Midjourney тоже есть гипотеза: скорее всего она ориентируется на слово «путешествие» (journey). А вот образы DALL-E 2 остаются тайной...

Ответить
Развернуть ветку
елена мухиина

а можно эти изображения где-либо использовать? или это частная собственность разработчиков?

Ответить
Развернуть ветку
праесчвкорнеапыукц4епрдлбрп

В Stable Diffusion и Midjourney можно использовать как хочешь.

Ответить
Развернуть ветку
Jetchat

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

Ответить
Развернуть ветку
12 комментариев
Раскрывать всегда