Проект принимает участие в конкурсе

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

Эти тетради, наполненные эмоциями и знаниями (всё-таки, примеры приходилось писать тоже), хранят в себе очень много памятной информации. Но, к сожалению, они не бесконечные…

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

big
Исходный размер 2480x800
big
Исходный размер 2480x800

Выборка из фотографий, загруженных в датасет

Загруженный датасет состоит из 40 изображений различных паттернов и геометрических рисунков на бумаге.

Ключевыми особенностями фотографий датасета является тетрадный фон в клеточку (иногда с красными полями), а также использование ручки с синими, чёрными или красными чернилами. Кроме того, часто на фотографиях присутствуют переосветлённые участки и неоднородный цвет фона.

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

Результаты

Итоговая серия изображений состоит из фотографий тетрадных листов в клетку, на которых нарисованы узоры, линии, геометрические фигуры. Материалом для рисования является ручка с синей, красной или же чёрной пастой.

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

Исходный размер 2480x800

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

Это также напоминает мне те моменты, когда очень-очень хочется спать на уроке, но необходимо сымитировать бурную деятельность.

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

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

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

Результаты полностью соответствуют задуманной идее в смысловом ключе, так как общая атмосфера считывается сразу.

Однако созданная модель также имеет и недостатки, например, маленькое количество деталей, менее точные паттерны и узоры.

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

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

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

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

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

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

Исходный размер 2600x500

Первая попытка. Очень тёмные генерации с кривой сеткой и заливкой.

Получившиеся изображения, я условно разделила на три категории по их виду.

  1. Изображения, нарисованные чёрной ручкой. более графичные и детальные.

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

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

Исходный размер 2274x550

Изображения, нарисованные чёрной ручной

Исходный размер 2480x800

Изображения, нарисованные цветными карандашами

Исходный размер 2274x550

Изображения, нарисованные красной и синей ручкой

Код

Исходный размер 1154x194

Для начала работы загружаю библиотеки и скрипты. А также проверяю, какая видеокарта сейчас используется.

0

Вторым шагом я создаю папки для будущего датасета и загружаю туда выбранные фотографии.

Исходный размер 1147x301

Теперь этап создания идентификатора токена для концепции. Он будет использоваться в каждом промпте, как префикс для создания изображения и фиксирования моего стиля.

Мой caption prefix звучит так: «hand-drawn pattern in VIKADATASERT style», поскольку я хочу, чтобы на моём изображении угадывался паттерн, нарисованный от руки.

Исходный размер 1146x344

Далее я освобождаю память, чтобы последующая тренировка проходила быстрее, и подготавливаю код к тренировке, а также вхожу в аккаунт Hugging Face, вводя свой токен.

Исходный размер 1147x502

Начинаю тренировку модели на основе датасета. Выбираю нужные мне параметры. Например, качество моих изображений будет — 1024×1024 пикселя, тренировка проводится в 1000 шагов с чекпоинтами через каждые 500 из них.

Исходный размер 1147x132
Исходный размер 1145x485
Исходный размер 1149x437

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

Вот один из промптов, что я использовала: «hand-drawn pattern in VIKADATASERT style, geometric drawing on grid paper, 3 large circles in the middle of a image, blue and red ink.

Я меняла их, чтобы посмотреть работоспособность модели и пробовала разные формулировки, чтобы узнать, какая из них наиболее чётко сможет воспроизвести то, что я задумала.

0

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

Ноутбук в Google Colab.

Кроме того, мной были использованы иные модели искусственного интеллекта. Например, Leonardo AI для генерации изображения для обложки проекта.

Промпт звучит так (была использована функция Magic prompt): «A close-up of a school desk with a green notebook with white, squared pages resting on it. The notebook is filled with drawings in blue pen—patterns, geometric shapes, and diagonals. A student in a school uniform sits at the desk drawing in the notebook».

Мы используем файлы cookies для улучшения работы сайта и большего удобства его использования. Более подробную информац...
Показать больше