Найти тему

Чиним руки на картинках из нейросетей: функция Inpaint в нейросети Fooocus

Эта статья — о работе с нейросетью Fooocus. Если вы являетесь счастливым обладателем нового компьютера с мощным GPU, вы можете скачать Fooocus и пользоваться им локально, если нет — есть вариант использования нейросети онлайн на платформе Google Colaboratory. В этом случае путь к интерфейсу Fooocus неочевиден, и простой переход по ссылке не поможет. Могут помочь, например, статьи из этого блога, собранные в подборке материалов о работе в Fooocus, и в первую очередь эта:

Нейросеть Fooocus: ловкость рук и никакого мошенничества

***

Те из вас, кто не вчера начал пользоваться картиночными нейросетями и хорошо знаком с разными моделями, в особенности созданными на базе Stable Diffusion, почти наверняка знают о функциях редактирования изображений Inpaint и Outpaint, которые позволяют удалять и заменять объекты на картинках или расширять (продлевать) картинки за первоначальные рамки. Инструменты, основанные на этих функциях, появились и в последних версиях Photoshop.

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

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

Дано: изображение, созданное в Leonardo AI на тему поющих нейросетей. Здесь хорошо всё, кроме семипальцевой руки с микрофоном. Не спорю, аккорды такой брать удобнее, но, дабы не шокировать публику, пару пальцев всё же стоит удалить.

-2

Захожу в интерфейс нейросети Fooocus и открываю все доступные панели инструментов, поставив галочки в полях Input Image и Advanced. Затем выбираю вкладку Inpaint or Outpaint и загружаю исходное изображение.

-3

Теперь нужно сделать три вещи:

1. В кучке маленьких квадратных кнопок в правом верхнем углу найти кнопку переключения на кисть и настроить её (кисти) диаметр для точной работы;

2. Аккуратно закрасить кистью лишние пальцы;

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

Обратите внимание, что, помимо кнопки переключения на кисть, в наличии имеются ещё кнопка "Удалить", кнопка отмены последнего действия и ластик, которые тоже могут вам пригодиться. Под картинкой располагается выпадающее меню Method: по умолчанию там выбран как раз метод Inpaint or Outpaint, который мне и нужен.

Убедившись, что всё готово, жму кнопку Generate и жду результатов.

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

-4

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

-5

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

Более удачная из двух получившихся картинок:

-6

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

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

-7

Теперь в списке Method (метод) выбираем Improve Detail (улучшить детали). Нейросеть сосредоточится на прорисовке текстуры и мелких деталей, не меняя сам объект. Тем не менее ей нужно снова дать указания, что и где улучшать. Кистью закрашиваю пальцы — теперь уже все — и в текстовом поле пишу delicate female fingers, "изящные женские пальчики". Жму Generate.

-8

Fooocus снова создал два варианта, из которых я выбираю наиболее удачный. Вот он перед вами:

-9

Проблема решена успешно!

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