Нейронные сети в искусстве (проект)
Ментор | Слинько Игорь |
Учебный семестр | Весна 2016 |
Учебный курс | 1-й курс |
Проект можно развивать на летней практике | |
Максимальное количество студентов, выбравших проект: 10 | |
Что это за проект?
Улучшенный клон http://deepart.io/latest/
Этой осенью Gatys, Ecker и Bethge опубликовали статью, в которой описано, как обучить нейронную сеть рисовать картины. Статью можно почитать здесь: http://arxiv.org/pdf/1508.06576v2.pdf Сейчас на гитхабе пара десятков репозиториев, которые реализуют этот алгоритм: https://github.com/search?utf8=✓&q=neural-style . Функциональность довольно простая: берем картину как стиль, берем фотку с котиком, ждем пару часов - и вот у нас уже получися котик, нарисованный Ван Гогом. Недавно появилось первое видео, нарисованное нейронными сетями: https://www.youtube.com/watch?v=0uCdJKVjPmQ . Пока еще не создали Марио "со вкусом" Эдварда Мунка. Сфера новая и понятно, что она будет развиваться. Уже скоро мы будем иметь в фотошопе соответствующие "фильтры", кинематограф будет обрабатывать свои картины новыми инструментами, художники начнут создавать картины больше задавая стиль, а детали оставляя компьютеру. |
Хочется сделать сервис, который позволял бы удобно создавать такие картины/видео
Чему вы научитесь?
Познакомимся с нейросетями и с конкретной релизацией. Напишем бэкэнд на Python (без сложных фреймворков типа Jango). Напишем "ручки" на JavaScript и доверстаем (скорее всего уже готовый) шаблон
Какие начальные требования?
Из предыдущего пункта понятно, что есть несколько перпендикулярных задач. Будет здорово, если вы знакомы с нейронными сетями, Python (numpy, scipy, deeppy, PIL), JS, CSS, HTML, Photoshop
Какие будут использоваться технологии?
Пока что я заказал виртуалку у Яндекса, которую можно превратить в хостинг, но, вполне вероятно, нам понадобится какой-нибудь облачный сервис, который умеет обсчитывать на видеокартах, например Amazon Web Services такое умеет.
Шаблон сайта возьмем, например, с wix.com
Возможно, потребуется поднять Nginx.
Познакомимся с PIL - пакетом для обработки изображений на Python
Темы вводных занятий
Покажу, что получилось сделать на сегодняшний момент у меня и что получилось сделать у других. Расскажу о проблемах, которые ожидают на пути.
Направления развития
Можно добавить функцию оплаты на сайте.
Можно попробовать сделать видео и запилить такую функцию.
Можно попробовать делать большие и качественные изображения.
Критерии оценки
4-5: Сайт с формой загрузки и ссылками - историей результатов. На бэкэнде нужно реализовать очередь.
6-7: Красивый сайт с формой загрузки, оценкой веремени, отображением промежуточного результата и возможностью отменить рассчет, не дожидаясь окончания. Возможность загрузить сразу несколько фотографий и несколько стилей.
8-10: Качественное улучшение алгоритма, предобсчет миниатюры, обсчет на видеокартах (реализация уже есть), форма оплаты, возможность обсчета больших изображений, возможность обрабатывать видео, пред- и пост-обработка
Ориентировочное расписание занятий
Пока не знаю