image

Привет, меня зовут Юля, 85GB и я веду свой канал по нейронкам.

Сегодня хочу обозреть и сравнить плагин Stable Diffusion (на базе интерфейса Automatic) для Photoshop и Generative Fill на базе Adobe Firefly для него же. По каждому пункту нейронки будут получать либо 1 балл, либо 0. В данном случае мне так удобнее вести счёт.

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

Плагин Стейбла с инструкцией лежит здесь.

Содержание:

1. Системные требования
2. Интерфейс и порог вхождения
3. Вариативность
4. Ликвидация объекта с фотографии
5. Добавление фона
6. Добавление объекта
7. Замена объекта
8. Замена фона
9. Txt to img
10. Img to img
Выводы

Итак, приступим.

  1. Системные требования. Пожалуй, самый важный пункт, без которого нет смысла продолжать работу. Стейбл — локальный, и ему необходимо очень много видеопамяти. У меня карта на 8 гигов, и при обработке больших изображений требуется работать с малыми областями или уменьшать эти самые изображения примерно до 1000 пикселей по длинной стороне (а то и до 512), и это невероятный мизер, если речь идёт о качественной пикче. Скорее всего, в комментариях будут писать о том, как именно можно апскейлить через сам Стейбл, делать там текстуру и качество. Но их же можно изначально не терять, правда?

    Файрфлай обращается к облаку, не нагружает видеопамять и позволяет спокойно работать с фотками размером 6000х4000 пикселей. Единственный минус в данном случае — при отсутствии подключения к сети Адобовская нейронка работать не будет.

    Скорость генерации изображения размером 512px в Стейбл Диффьюжн и Адоб Файрфлай ≈ 12 секунд. Генерация пикчи 6000px по длинной стороне в Файрфлай ≈ 20 секунд.
    Stable Diffusion Adobe Firefly
    0 1
  2. Интерфейс и Порог вхождения. Для тех, кто ранее не был знаком (!) со Стейбл Диффьюжн, интерфейс плагина будет непонятен. К тому же, перед установкой самого плагина нужно скачать и поставить на комп Стейбл от Automatic1111. Помимо этого, для каждого вида генерации нужна своя модель, которая при этом должна поддерживать функцию inpaint, потому что всё происходит непосредственно в ней. Эти модели нужно искать и качать отдельно. И для кого-то это безусловный плюс, но если мы всё же не будем отметать нубов типа меня, то обратим внимание на простой и понятный интерфейс Адоб Файрфлай.

    image

    image

    image

    — Да, вот эти крошечные окошечки являются интерфейсом генеративной заливки Файрфлай.

    Работа в обеих нейронках происходит следующим образом: выделяем объект, пишем или не пишем промпт, жмакаем Генерировать. Так как работа происходит внутри ФШ, выделить объекты можно десятком способов, в том числе и автоматически.
    Stable Diffusion Adobe Firefly
    0 1
  3. Вариативность. Стейбл выдаёт 4 варианта сгенерированных картинок на выбор, а Файрфлай — 3. Предел нейронки от Адоба — 50 изображений, далее надо удалить слой и начать круг генераций снова или выбрать из имеющихся вариантов. У Стабильной Диффузии формально нет предела, как и нет списка всех генераций, поскольку каждая принятая генерация (помеченная галочкой в интерфейсе) — это новый слой. В случае с генеративной заливкой Адоба все варианты находятся в свойствах ОДНОГО слоя. Обе системы по своему нагружают комп: Файрфлай провисает при пролистывании большого количества вариантов, а в случае со Стейблом приходится вычищать множество лишних слоёв. При таком раскладе оценивать очень сложно, поэтому обе нейронки получают по баллу.


    Stable Diffusion Adobe Firefly
    1 1
  4. Наконец-то мы можем приступить к генерации. Здесь я возьму фотографию собачки, любезно предоставленную моей подписчицей (спасибо, Нина) и попробую убрать её вообще, не вводя никаких промптов.



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



    Я выбрала птичку, потому что это самое маленькое существо в заменяемой области и потому что появилась некая трава на фоне. Самое странное в данном случае — остался контур собаки. Почему-то он Стейбл делает маску с растушёвкой, которую нужно подчищать дополнительно. С генеративной заливкой Файрфлай такого не происходит, нейронка по дефолту воспринимает собаку как лишний объект и создаёт заливку из окружения.
    Stable Diffusion Adobe Firefly
    0 1
  5. Добавление фона. В этом раунде я попробую догенерировать фон без промпта. И да, Стейбл так не работает, а Файрфлай справляется прекрасно. Что, впрочем, не новость, поскольку по сети уже гуляет множество догенеренных мемасиков, картин и всякого такого.


    Stable Diffusion Adobe Firefly
    0 1
  6. Добавление объекта. Здесь мы оценим добавление объекта внутрь изображения. В обоих случаях пришлось немного повозиться с промптами, чтобы получилась именно стая птиц, а не одна-две, но с размытием генеративная заливка Adobe справилась лучше. Промпт: a flock of many birds far away


    Stable Diffusion Adobe Firefly
    0 1
  7. Замена объекта. Для начала простое — заменим то́ллера на добермана. Просто ввожу в командную строку промпт doberman. Для Стейбла в качестве эксперимента я прописала ещё и негативный промпт, но разницы в итоге не увидела. И это хорошо, поскольку означает, что мы можем обойтись без этого гемора, нейронка всё же ориентируется на изображение.



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

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


    Stable Diffusion Adobe Firefly
    0 0
  8. Замена фона. Её я вынесла отдельно, поскольку, как выяснилось, «этодругое». Например, нейрозаливка Адоба может нативно сгенерить хорошую циклораму под объект (сохраняя при этом оригинальный размер пикчи, напоминаю). Стейбл, увы, здесь не справился, и хотя я пыталась направить его с помощью негативного промпта, то, что вы видите перед собой — это максимум, который мне удалось получить. Он принципиально не хотел делать розовый фон, обращаясь к оригинальному, сероватому. Для предметников, ящитаю, это мастхэв, когда не нужно покупать 10к фонов.


    Stable Diffusion Adobe Firefly
    0 1
  9. Txt to Img. Попробуем из пустого белого слоя воссоздать с помощью промпта аналогичную картинку с собакой. Промпт: the dog is sitting on a log in a clearing, against the background of a river and a forest. Негативных для стейбла здесь использовано не было



    В обоих случаях получилась дичь разной степени. Стейбл как будто бы лучше справился с собакой, а Файфлай — с травой. Второго можно было бы выбрать за то, какую область он заполнил, но качество генерации меня совершенно не устраивает, поэтому здесь я тоже ставлю ничью.
    Stable Diffusion Adobe Firefly
    0 0
  10. Img to Img — это функция Стабильной Диффузии, которая отвечает за то, чтобы превращать одно изображение в другое с максимально схожим визуалом. Но я пока не знаю, есть ли такая функция у Файрфлай, давайте проверим.



    Очевидно, что у нейронки Адоб нет подобного функционала и она не воспринимает подложку как нечто, что надо «улучшить», генерируя совершенно иное изображение просто под промпт, хотя и безусловно качественное.
    Stable Diffusion Adobe Firefly
    1 0

Выводы. Начнём с оценок:
Stable diffusion Adobe firefly
Системные требования 0 1
Интерфейс и порог вхождения 0 1
Вариативность 1 1
Ликвидация объекта с фотографии 0 1
Добавление фона 0 1
Добавление объекта 0 1
Замена объекта 0 0
Замена фона 0 1
Txt to img 0 0
Img to img 1 0
Итог 2 7
Штош. В данном случае очевидно, что Адоб, несмотря на недостатки, разносит Стейбл на своей территории. Могу сказать, что генеративная заливка на базе Файрфлай действительно прекрасный инструмент для фотографов и дизайнеров. Генеративная заливка отлично справится с обрезанными частями тел, зданий, простенькой заменой фона, добавлением предметов и т.д. Стейбл же в данном случае является хорошим подспорьем для художников, создавая подмалёвок или помогая в генерации с нуля каких-либо объектов вместо сбора сотни референсов.

Надеюсь, этот обзор был полезен и поможет вам в выборе. Спасибо, что дошли до конца. Всем чмаффки, и подписывайтесь на мой канал.

Комментарии (16)


  1. VadimProfii
    09.06.2023 09:07
    +1

    Благодарю, очень своевременно и наглядно!


  1. AlexB17
    09.06.2023 09:07
    +15

    Firefly генерирует изображение 1024х1024 и потом масштабирует его, никаких 6000х4000 вы от него не получите - будет мыло. По многим остальным пунктам тоже facepalm.jpg
    Например если вы видите что плагин делает по дефолту сильную растушевку маски - сделайте побольше охват или найдите где это настраивается, маску сделайте свою наконец. Плюс как всегда не используете нормально промты полноценные и негативные, например на генерации собачки у стейбла вполне адекватная картинка - поставлен в минус что нет травы, а где она в промте? И т.д.


    1. 85GB Автор
      09.06.2023 09:07
      -2

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


    1. 85GB Автор
      09.06.2023 09:07

      А, да, по поводу размера: в статье обозреваются плагин Стейбла внутри ФШ и функционал Генеративной заливки на базе Файрфлай ТАКЖЕ внутри ФШ. Мне не нужно апскейлить пикчу, я могу её просто нагенерить в Фотошопе сразу большого размера, что я и делала, что и прикрепляла на скринах. Читайте внимательнее. пожалуйста.


  1. UnknownUser
    09.06.2023 09:07
    +4

    Если бы метод от adobe был хуже чем опенсорсный то было бы странно.

    Главный минус firefly - в будущем он будет доступен только по подписке.

    А вот SD на пару с ControlNet мне уже сейчас помогает неплохо с ретушью фото, причем бесплатно ).

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


  1. nbkgroup
    09.06.2023 09:07
    +9

    Локальность SD это не "0 баллов" а 1000.


    1. vassabi
      09.06.2023 09:07
      +3

      я же правильно понимаю, что у Адоба плагин высылает фотографию себе на сервер?

      (и там не хранит, нет-нет, как вы такое могли подумать? Даже не смотрит туда, все полностью автоматизировано, никаких утечек никогда не будет, честно-честно! ;) )


      1. 85GB Автор
        09.06.2023 09:07
        -1

        Да, надо было графу безопасности отдельно прописать ))


        1. capybara_paws
          09.06.2023 09:07
          +1

          У локального Stable Diffusion минимум две точки внедрения чего-то нехорошего:

          1. Модели в формате ckpt могут содержать зловредный код на python, который будет выполнен при работе. Модели в формате safetensors, даже конвертированные, этого недостатка лишены.

          2. Эксплуатация недостатков Gradio. Знаю несколько способов, они немного... странные, тем не менее они есть.
          — По умолчанию Automatic WebUI не шифрует трафик. Можно слушать сервера телеграм-ботов и сервисов рисования, которые не подключали расширения для работы по https.
          — Если сервер Stable Diffusion открыт наружу через --gradio-auth, вашу машину можно попробовать найти через условный Shodan. После прохождения или обхода авторизации злоумышленник получит доступ к машине.
          — Скачать и запустить код из ненадёжного источника. Например, инструкция по установке WebUI вместо ссылки на automatic1111/vladmandic/NMKD/etc, содержит ссылку на репозиторий злоумышленника. Или просто скачать готовый репак "ван баттон солюшн".


          1. 85GB Автор
            09.06.2023 09:07

            ого, спасибо за такой развёрнутый коммент


      1. Didimus
        09.06.2023 09:07
        +1

        Утечек не будет, просто сообщит куда надо


    1. capybara_paws
      09.06.2023 09:07
      +1

      1000 баллов если у вас есть достаточно дорогое современное производительное железо, верно?

      Фотографу или художнику для работы в Photoshop может быть достаточно условной GTX 1050 Ti или процессора с мощной встроенной графикой. Запустить на этом железе локальный Stable Diffusion можно, но это будет боль и унижение.


  1. zenosnorth
    09.06.2023 09:07

    Возможно, я повторю ВОЗМОЖНО стоит потыкать еще в сторону лицензии использования Firefly. У Adobe были в свое время некоторые заплёты касаемо авторства производимого в их ПО материала. А также использования его для "других" целей. Хорошо если будут на нем "учить", но ведь для компенсации могут и продавать.


  1. plFlok
    09.06.2023 09:07
    +1

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

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


  1. yrub
    09.06.2023 09:07
    -1

    как-то поверхностно. посмотрите лучше пару роликов каких-нибудь фотографов и ретушеров, они вам доступно объяснят крутость адобовской модели, например в том, что она понимает перспективу, её линии, свет (делает правильные блики в сгенерированной бутылки) и т.д. и т.п. сам SD же не сильно навороченная модель, её обучение обошлось в тысяч 200 кажется. В адобе столько одному програмеру за год платят


  1. AndrewChe
    09.06.2023 09:07

    По поводу локальности stable diffusion уже написали выше. Это и плюс, и минус одновременно. Если оценивать функционал не фотошоповского плагина, а именно automatic1111, то многие минусы из сравнения исчезают. Стейбл может генерить изображения больших размеров с помощью тайлинга и дальнейшего апскейла. Можно генерировать часть изображения по маске, что увеличивает качество генерируемого изображения. Для стейбла есть куча моделей под все, что душе угодно, есть лоры и гиперсети. Порог вхождения в stable diffusion на самом деле очень низкий. Выполнить по пунктам установку необходимых компонентов может любой, на худой конец умельцы собирают установщики "в один клик" с батником, который ставит все необходимое. Добавление фона в firefly офигенное, для достижения похожего эффекта в stable diffusion нужно генерировать вне маски и указать нормальный запрос, что не является чем-то сильно сложным. Изменение фона в firefly тоже круто сработало, можно поглядеть в сторону pix2pix в стейбле и сравнить. Ну и в конце концов у меня вопрос: можно ли к firefly прикрутить control net?