Нейронные сети в искусстве (проект) — различия между версиями
(не показано 11 промежуточных версии 3 участников) | |||
Строка 9: | Строка 9: | ||
|categorize=yes | |categorize=yes | ||
}} | }} | ||
+ | http://s17.postimg.org/dt35su5wf/Auu_Zve_A0p9_DN_1500x1500_mtdh_GWCw_png_500_500_20.jpg | ||
=== Что это за проект? === | === Что это за проект? === | ||
− | |||
Улучшенный клон http://deepart.io/latest/ | Улучшенный клон http://deepart.io/latest/ | ||
Строка 25: | Строка 25: | ||
=== Какие начальные требования? === | === Какие начальные требования? === | ||
− | Из предыдущего пункта понятно, что есть несколько перпендикулярных задач. Будет здорово, если вы знакомы с нейронными сетями | + | Из предыдущего пункта понятно, что есть несколько перпендикулярных задач. Будет здорово, если вы знакомы с: |
+ | |||
+ | * нейронными сетями; | ||
+ | |||
+ | * Python (numpy, scipy, deeppy, PIL); | ||
+ | |||
+ | * JS; | ||
+ | |||
+ | * CSS; | ||
+ | |||
+ | * HTML; | ||
+ | |||
+ | * Photoshop. | ||
=== Какие будут использоваться технологии? === | === Какие будут использоваться технологии? === | ||
− | Пока что я заказал виртуалку у Яндекса, которую можно превратить в хостинг, но, вполне вероятно, нам понадобится какой-нибудь облачный сервис, который умеет обсчитывать на видеокартах, например Amazon Web Services | + | * Пока что я заказал виртуалку у Яндекса, которую можно превратить в хостинг, но, вполне вероятно, нам понадобится какой-нибудь облачный сервис, который умеет обсчитывать на видеокартах, например Amazon Web Services.<br /> |
− | + | * API Яндекс.Диска | |
− | + | * Шаблон сайта возьмем, например, с wix.com<br /> | |
− | Познакомимся с PIL - пакетом для обработки изображений на Python | + | * Познакомимся с PIL - пакетом для обработки изображений на Python. |
+ | |||
+ | * Познакомимся с http-сервером на Python. | ||
+ | |||
+ | * Возможно, потребуется поднять Nginx.<br /> | ||
=== Темы вводных занятий === | === Темы вводных занятий === | ||
Строка 40: | Строка 56: | ||
=== Направления развития === | === Направления развития === | ||
− | Можно добавить функцию оплаты на сайте. <br /> | + | * Можно добавить функцию оплаты на сайте. <br /> |
− | Можно попробовать сделать видео и запилить такую функцию. <br /> | + | |
− | Можно попробовать делать большие и качественные изображения. | + | * Можно попробовать сделать видео и запилить такую функцию. <br /> |
+ | |||
+ | * Можно попробовать делать большие и качественные изображения. | ||
=== Критерии оценки === | === Критерии оценки === | ||
− | 4-5: | + | 4-5: На бэкэнде нужно реализовать очередь, которая будет скачивать из определенной папки Яндекс.Диска фотки, обрабатывать и загружать в соседнюю папку <br /> |
− | 6-7: | + | 6-7: Cайт с формой загрузки, оценкой веремени, отображением промежуточного результата и возможностью отменить рассчет, не дожидаясь окончания.<br /> |
− | 8-10: Качественное улучшение алгоритма, предобсчет миниатюры, обсчет на видеокартах (реализация уже есть), форма оплаты, возможность обсчета больших изображений, возможность обрабатывать видео, пред- и пост-обработка | + | 8-10: Качественное улучшение алгоритма, предобсчет миниатюры, обсчет на видеокартах (реализация уже есть), форма оплаты, возможность обсчета больших изображений, возможность обрабатывать видео, пред- и пост-обработка. |
=== Ориентировочное расписание занятий === | === Ориентировочное расписание занятий === | ||
− | + | Уточняется |
Текущая версия на 16:13, 28 июля 2017
Ментор | Слинько Игорь |
Учебный семестр | Весна 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.
- API Яндекс.Диска
- Шаблон сайта возьмем, например, с wix.com
- Познакомимся с PIL - пакетом для обработки изображений на Python.
- Познакомимся с http-сервером на Python.
- Возможно, потребуется поднять Nginx.
Темы вводных занятий
Покажу, что получилось сделать на сегодняшний момент у меня и что получилось сделать у других. Расскажу о проблемах, которые ожидают на пути.
Направления развития
- Можно добавить функцию оплаты на сайте.
- Можно попробовать сделать видео и запилить такую функцию.
- Можно попробовать делать большие и качественные изображения.
Критерии оценки
4-5: На бэкэнде нужно реализовать очередь, которая будет скачивать из определенной папки Яндекс.Диска фотки, обрабатывать и загружать в соседнюю папку
6-7: Cайт с формой загрузки, оценкой веремени, отображением промежуточного результата и возможностью отменить рассчет, не дожидаясь окончания.
8-10: Качественное улучшение алгоритма, предобсчет миниатюры, обсчет на видеокартах (реализация уже есть), форма оплаты, возможность обсчета больших изображений, возможность обрабатывать видео, пред- и пост-обработка.
Ориентировочное расписание занятий
Уточняется