Original size 1140x1600

Кибер-Караваджо // Обучение генеративной нейросети

PROTECT STATUS: not protected

Что станет с караваджовским светом, когда источник освещения — не Бог, а LED-матрица?

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

Изображения-результаты

Для начала работы были выбраны герои-архетипы, через образы которых можно показать «слияние» киберпагк-эстетики (отчасти вдохновленной фильмом «Бегущим по лезвию»* игрой «Cyberpunk 2077»**). Ими стали: инженер, доктор (алхимик), ангел (здесь важнее религиозность работ Караваджо), хакер (он же «кибер-плут», хотя влияние киберпанк-эстетики тут больше, в противовес предыдущему персонажу), музыкант, воин (рыцарь, образ для типичных выбранной эстетике «уличных боев»), охранник ночного клуба (киберпанк вновь превалирует, слияние гвардии и роботов, «хрома» и металлических лат), гонщик (наездник). Отдельно стоит отметить человек/андроид — общий образ, впрочем, центральный как для противостояния живого и искусственного в указанных мной фильме и игре, так и для поиска граней «человечности» Караваджо.

*Хэмптон Фэнчер и Дэвид Пиплз, 1982 год ** CD Projekt Red, 2020 год

Инженер

0

Общее начало промпта: «painting in CYBER-CARAVAGGIO style, male engineer with glowing cybernetic implants,» Развитие изображений в слайдере — следствие усложнения промпта

Доктор (= алхимик)

Промпты имеют общее начало: «painting in CYBER-CARAVAGGIO style, cyber doctor in baroque-inspired robe…», «игра» с окружением и деталями

Ангел

Original size 1024x1024

Промпт: «painting in CYBER-CARAVAGGIO style, android angel with bright glowing blue face and eyes,»

Хакер

Изначальный промпт: «painting in CYBER-CARAVAGGIO style, hacker wearing baroque-style cloak, face replaced by glowing screen,», не удалось добиться точного исполнения требований. Требуется развитие

Развитие благодаря усложнению промпта: «face fully replaced by bright glowing blue screen, edges of face glowing strongly,»

Частичное изменение промпта (слишком сложная задача): «multiple monitors and holographic panels with flickering neon reflections, thick neon cables crawling over desk and floor,»

Музыкант

Original size 1024x1024

Упоминание точных предметов, а не перекладывание на нейросеть ответственность за киберпанк-эстетику дает свои плоды: «painting in CYBER-CARAVAGGIO style, android musician… electric guitar,»

Воин (= рыцарь), уличная потасовка (= дуэль)

Промпты: 1. «curly-haired young man in ornate baroque armor with subtle glowing neon patterns,» 2. «two cyber knights with glowing neon swords crossing in combat,»

Охранники ночного клуба (= доспехи)

Original size 1024x1024

Промпт: «painting in CYBER-CARAVAGGIO style, group of cyber enforcer robots with baroque armor elements,»

Гонщик (= наездник)

Разные генерации по одному промпту («painting in CYBER-CARAVAGGIO style, cyber street racer in baroque-inspired outfit posing on a black horse,»), «вольность» нейросети

Человек и андроид

Original size 1024x1024

Промпт: «painting in CYBER-CARAVAGGIO style, human and humanoid robot wearing baroque clothing,»

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

Работа с кодом

Общее описание процесса работы над кодом:

Сначала проверяется доступность GPU и устанавливаются необходимые библиотеки для работы с моделями, LoRA и Diffusers. Затем распаковывается архив с изображениями и создаются папки для сырых и подготовленных данных. Все изображения приводятся к квадратной форме и изменяются до размера 512×512, после чего сохраняются в подготовленную папку. Для наглядности создается коллаж из первых пяти обработанных изображений. С помощью модели BLIP генерируются текстовые подписи для каждого изображения, добавляется префикс «painting in CYBER-CARAVAGGIO style» и сохраняются в metadata.jsonl. Далее освобождается память GPU, удаляются модели BLIP перед началом обучения LoRA. Настраивается соединение с Hugging Face и производится вход в аккаунт для дальнейшей загрузки модели. Подготавливаются изображения для обучения и запускается скрипт DreamBooth LoRA на базе SDXL с указанными параметрами обучения. После завершения обучения создается модельная карточка, а LoRA загружается на Hugging Face с игнорированием временных файлов. Для проверки создается пайплайн DiffusionPipeline с предобученным VAE, загружаются веса LoRA и переводится на GPU для генерации изображений.

Весь код поделен на логические обозначенные логические блоки.

0
Кибер-Караваджо // Обучение генеративной нейросети
We use cookies to improve the operation of the website and to enhance its usability. More detailed information on the use of cookies can be fo...
Show more