
Описание идеи

Как только начали появляться первые новости о том, что нейросеть в скором времени заменит художников, а затем твиттер начал активно использовать размещаемые там авторские работы для обучения моделей, мне стало интересно — как бы выглядели изображения, сгенерированные в моем привычном стиле рисования?
Я решила поэкспериментировать и проверить, получится ли у меня приблизиться к кибернетическому бессмертию, оставить свой маленький отпечаток в этом чрезмерно быстро развивающемся технологичном мире.
В качестве датасета я собрала 150 фрагментов работ, которые нарисовала в период с 2021 по 2025 год.
Dataset // Karton, 2021-2025
Dataset // Работы до масштабирования // Karton, 2021-2025
Процесс обучения
В качестве рабочей среды я выбрала Google Colab, где установила все необходимые библиотеки и скрипты (ditsandbytes, diffusers) для последующей работы. Затем нужно было загрузить масштабированный (1:1) датасет с моими иллюстрациями.
Далее я проверила, достоверно ли все отображается и перешла к генерации промптов к изображениям с использованием модели BLIP для того, чтобы завершить подготовку моего датасета к тренировке нейросети.


Далее я залогинилась в Hugging Face, использовав сгенерированный в личном кабинете токен и приступила непосредственно к обучению нейросети.
Изначально разрешение моих изображений составляло 1024×1024, однако для первой попытки я решила уменьшить его в 2 раза, чтобы в целом посмотреть на результат, не затратив при этом слишком много времени. Так что в настройках я выбрала: —resolution = 512 —train_batch_size = 2 —max_train_steps = 500 —checkpointing_steps = 250
Процесс генерации занял всего 47 минут.

Затем я выгрузила полученный результат на Hugging Face и приступила к долгожданной генерации изображений с префиксом «illustration in KARTON style».
Результирующая серия изображений

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


Авторская работа // Генерация нейросети

Что меня даже немного удивило при последующем анализе результата — костюм девушки вышел довольно детальным и похожим на костюм героини, с которой я рисовала свою работу.
В датасете находилось 2 фан-арта с Джейн Доу — персонажем из игры Zenless Zone Zero — на одном из которых верхняя часть образа закрыта руками (эта работа использовалась для сравнения), а на другом верхняя часть видна.
В первой генерации ИИ заметно, что части, которые не были видны на исходной работе, довольно хорошо прорисованы и узнаваемы, а также похожи на костюм из моего второго фан-арта.


checkpoint-500 // checkpoint-250
От первой работы создалось впечатление, будто нейросеть как бы поняла и передала то, что я обычно рисую, правда, несколько раз перемолов это в блендере, так что я решила посмотреть, какой результат будет, если вернуться на пару шагов назад к «checkpoint-250», запросив тот же промпт и уменьшив влияние модели до 0.5.
Авторская работа // Генерация нейросети // Авторская работа
К моему удивлению я обнаружила, что результат был очень сильно похож на 2 мои работы, которые я не использовала в датасете для обучения. Форма и черты лица, в особенности губы и линия подбородка, наклон головы, а также цветовая палитра во многом соответствовали моему стилю.
prompt = «illustration in KARTON style, a woman with wings and a sword in her hand»
//
prompt = «illustration in KARTON style, a woman with wings and a sword in her hand, blue colors, soft bluriness and glow»
В следующих итерациях я продолжила смотреть на сходства между оригинальным изображением и картинкой, полученной по промпту, сгенерированному нейросетью.
Генерация нейросети 01 // Авторская работа // Генерация нейросети 02
В данном случае, когда я просто взяла промпт BLIP-а, результат вышел не очень похожим на что-либо в моем стиле: лицо и в целом тело вышли более реалистичными, чем я обычно рисую, да и цвета совершенно не попадали под ту гамму, которую я обычно использую*.
Я решила немного разбавить промпт уточнениями, и во второй раз результат вышел гораздо интереснее. Девушка все еще выглядела довольно реалистично, однако в целом некоторые сходства с оригиналом прослеживались: костюм, текстура крыльев, свечение.
prompt = «illustration in KARTON style, a woman with white hair and red eyes, wearing a black coat and a red tie»


Авторская работа // Генерация нейросети
Вновь генерация неплохо передала позу и силуэт героини, даже не забыла прорисовать выглядывающее из-за пряди волос ухо, однако не могу сказать, что стиль изображения сильно похож на мой. В процессе работы я зачастую использую текстурные кисти, что в ии-рисунке совершенно отсутствует.
prompt = «illustration in KARTON style, a cyberpunk hacker girl with neon pink eyes, wearing a hoodie, and robotic arms covered in glowing circuits, sitting in a dark room»
Далее я решила отойти от предыдущего плана и попробовать сгенерировать то, чего не было в моем датасете. Поскольку я обучала модель в основном на изображениях с людьми, то и в промпте я указала персонажа, но в необычном для себя и для модели сеттинге.
Результат вышел… весьма сомнительным. Даже после того, как я провела некоторое время, разглядывая изображение, я не нашла ни одной весомой детали, за которую я могла бы зацепиться и сказать: «Вот, смотрите, это я! Вот я!»
Так что в данном случае могу смело заявить, что мой небольшой эксперимент провалился.
Неудачная генерация нейросети
prompt = «illustration in KARTON style, woman with dark hair»
prompt = «illustration in KARTON style, drawing of a woman with blue eyes»
prompt = «illustration in KARTON style, man with dark hair»
prompt = «illustration in KARTON style, a woman taking a picture of herself from her phone»
Еще несколько генераций нейросети
prompt = «illustration in KARTON style, man with blue hair looks on with fury and coldness in his eyes, with his left hand he lifts the ancient Japanese mask from his face»
Хотела бы отдельно вынести данную генерацию, так как несмотря на то, что она выглядит максимально разрознено и перекроено, особенно 3 поломанных руки, мне очень нравится самобытность и своеобразность полученного результата. Сквозь шум лишних штрихов можно заметить мой «мазок» и характерные изгибы линий, формирующих мой стиль.
Мне очень приглянулась форма носа и губ, а также взгляд получившегося персонажа. Что-то в форме нижнего века левого глаза также коррелирует с тем, как я обычно рисую глаза, в особенности в последнее время.


Авторская работа // Генерация нейросети
Подводя итоги первой попытки обучения модели, хотелось бы отметить, что, вероятно, разрозненность изображений по стилистике / цвету / ракурсу / детализации и проработке или же «визуальный шум» датасета помешали модели в полной мере перенять особенности моего стиля и какие-то наиболее узнаваемые черты помимо формы лица, вследствие чего я решила попробовать переобучить модель еще 2 раза.
Переобучение // 01
Для первой попытки переобучения модели я решила просто подправить параметры, увеличив разрешение, количество шагов обучения и некоторые другие параметры. —resolution = 1024 —train_batch_size = 1 —max_train_steps = 1000 —checkpointing_steps = 500 Всего процесс обучения занял 2 с лишним часа.
prompt = «illustration in KARTON style, a sad girl portrait» // prompt = «illustration in KARTON style, man with blue hair looks on with fury and coldness in his eyes, with his left hand he lifts the ancient Japanese mask from his face»

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


Генерации нейросети
prompt = «illustration in KARTON style, man with blue hair looks on with fury and coldness in his eyes, with his left hand he lifts the ancient Japanese mask from his face» // prompt = «illustration in KARTON style, a woman in a black and red outfit holding a knife»
Спустя еще несколько генераций я полностью убедилась в том, что стилистически результат этого обучения гораздо ближе к тому, как я обычно рисую, даже учитывая тот факт, что в полученных изображениях явно заметны проблемы практически со всем, особенно с руками, которых в датасете было не так много.
Нейросеть уловила мой паттерн штриховки и прорисовки определенных частей / объектов, наиболее ярко это прослеживается в области волос и шеи, носа и губ.


Генерации нейросети
prompt = «illustration in KARTON style, a woman in a black and red outfit holding a knife»
prompt = «illustration in KARTON style, man with blue hair looks on with fury and coldness in his eyes, with his left hand he lifts the ancient Japanese mask from his face»
prompt = «illustration in KARTON style, a woman in a black and red outfit holding a knife»
prompt = «illustration in KARTON style, a woman in a black outfit holding a knife, pink and neon blue background»
Генерации нейросети
Переобучение // 02
Для второй попытки переобучения я решила немного подправить датасет, на основе которого обучала нейросеть, и выделила в отдельный сет 25 портретных изображений, близких по цветовой гамме и ракурсу.
Префикс генерации так же изменился: «digital portrait illustration in KARTON style».
Параметры обучения остались такими же, как в первой попытке, а полный процесс обучения занял около 30 минут.
prompt = «digital portrait illustration in KARTON style, a drawing of a woman with long black hair and a pink bow»
На последнюю попытку обучения нейросети я возлагала чуть больше надежд, чем на все остальные, так как во втором датасете были более узко направленные изображения с людьми, преимущественно девушками, в фас в теплой гамме.
Глобально, мне кажется, что в этот раз ИИ гораздо лучше уловил определенные паттерны не столько моего стиля, сколько в целом изображений, на которых обучался, так как многие генерации и вправду чем-то отдаленно напоминали их оригинал.
Тут, например, сразу можно сказать, что нейросеть отлично считала розовую палитру цветов, которая присутствовала на многих рисунках. Еще, мне кажется, отдельно взятые объекты лица: глаза, нос, губы — в целом похожи на те, которые я нарисовала. Даже розовый бантик считался и украсил полученную генерацию! Жаль только, что в воздухе.


Авторская работа // Генерация нейросети
prompt = «digital portrait illustration in KARTON style, a woman with long black hair and a black shirt» // prompt = «digital portrait illustration in KARTON style, a woman with a white shirt and a black hair»

В этот раз генерации выдавали множество багов, искаженных лиц и покореженных пальцев, однако фрагментарно мой стиль неплохо читался. Меня порадовало то, что во многих иллюстрациях прослеживалось сходство с определенными изображениями, использованными в качестве датасета, будь то наклон головы, форма улыбки, взгляд, цветовое решение, паттерн покраса волос.
Так же, мне показалось довольно забавным то, что в этот раз нейросеть уловила вотермарку, которую я зачастую добавляю на работы, и тоже стала пририсовывать неразборчивые закорючки рядом с персонажами.
prompt = «digital portrait illustration in KARTON style, a man with a black jacket and a yellow shirt» // prompt = «digital portrait illustration in KARTON style, a woman with long hair and a black shirt»


Генерации нейросети
Анализ результатов
Какие выводы я могу сделать после 3-х попыток обучить нейросеть моему стилю?
Она явно научилась распознавать отдельные паттерны и фрагменты, используя их в своих генерациях. Сравнивая результат с оригинальными изображениями, можно найти множество кусочков, напоминающих стиль, в котором я обычно рисую, будь то шея, нос или губы.
Первый ряд — нейросеть // Второй ряд — мои работы // Схожесть прорисовки шеи
В 1 и 2 попытке переобучения нейросеть смогла уловить мой стиль прорисовки волос и отдельных прядей.
Первый ряд — нейросеть // Второй ряд — мои работы // Схожесть прорисовки волос
Во многих последних генерациях можно заметить узнаваемую теплую цветовую гамму. Конечно, она используется не во всех моих работах, однако в рамках портретных изображений зачастую прослеживается.
Мои работы // Нейросеть // Схожесть цветовой палитры
Подводя итоги, хочется отметить, нейросеть — отличный инструмент для переосмысления и перекраивания работ. Концептуально в иллюстрациях нейросети я нашла множество отсылок к своим рисункам и тому стилю, который я хотела заложить в ИИ, однако пока что текущий результат не является самодостаточным и независимым продуктом.
Ну, вероятно, пока нет. Нейросеть выступает неплохим инструментом для проб, интерпретаций и поиска идей, однако, чтобы добиться лучшего результата, определенно придется потратить гораздо больше времени, сил и ресурсов.
> > > Блокнот и датасет
Hugging Face — получение токена для обучения нейросети, загрузка полученной модели на сайт.