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

Иван Айвазовский / «Ревель (Таллин)» / 1845

Иван Айвазовский / «Вид Венеции со стороны Лидо» / 1855

Иван Айвазовский / «Закат на море» / 1848
Иван Айвазовский / «Море. Коктебель» / 1853
Получившаяся серия изображений
Промпт: antarctica
Промпт: istanbul strait on a sunny day
Промпт: mumbai port
Промпт: peter and paul fortress, saint petersburg
Промпт: port of dubai port in night
Промпт: port of new york
Промпт: shanghai port in calm sunny weather
Промпт: singapore port on a moonlit night
Промпт: storm in the port of tokyo
Промпт: view of porto, portugal
Итоговая серия представляет собой порты современных городов. Изображения портов представлены в различных погодных и временных условиях. Стиль оригинальных картин Ивана Айвазовского хорошо получилось передать при обучении нейросети. Лучше всего вышло передать морскую атмосферу и строение кораблей. Отдельно стоит отметить, как нейросеть смогла изобразить побережье Антарктики, несмотря на то, что Айвазовский редко писал зимние сюжеты. Первоначальная идея попробовать сгенерировать различные порты удалась, хотя внешний вид кораблей остались из XIX века.
Ноутбук с кодом: https://disk.yandex.ru/d/NXyktCT47AVzHg
Процесс обучения:
Сначала скачиваем все картины Айвазовского с сайта Википедия. Названия файлов собираем в отдельный список.
Потом создаем отдельную папку, куда сохраняются обрезанные картины. Циклом проходимся по всем файлам, обрезаем их и записываем в новую папку.
Скачиваем нужные библиотеки. Код взят из репозитория преподавателя.
Загружаем BLIP для автоматического добавления подписей к картинам Айвазовского.
Подписываем каждую картину с помощью цикла и удаляем BLIP из памяти.
Заходим в аккаунт Hugging Face с помощью токена доступа, запускаем ускоритель и скачиваем ещё одну библиотеку.
Запускаем обучение модели со 1000 шагами обучения и контрольными точками каждые 500 шагов. После этого сохраняем модель.
Создаем функцию для генерации и вывода изображения на основе промпта. Сохраняем полученные изображения в папку RESULT.
Описание применения генеративной модели:
BLIP (https://github.com/salesforce/BLIP) использовалась для добавления описания к картинам Айвазовского. Stable Diffusion (https://github.com/Stability-AI/generative-models) использовалась для дообучения на картинах Айвазовского с целью дальнейшей генерации изображений.