Обосноваться
(Больше не поддерживается)
Веб -приложение, которое использует снимок пользователя для обнаружения эмоций и использования этого, создает подходящий музыкальный плейлист. Этот проект был построен для ACM Month of Code, фактическое кодирование, проведенное примерно через 3 недели.
Прочитайте подробную статью о здании Moodify здесь: https://medium.com/@ajay.ns08/acm-month-of-code-2k17-building-moodify-d5d9e0c52ca7
Выполнение
Камера, музыкальный проигрыватель, сценарии для распознавания эмоций и базы данных были подключены и завернуты в веб -приложение с использованием колбы, используя маршруты для использования бэкэнда, подобного API, в то время как фронт обрабатывает пользователя.
Будучи экспериментальной настройкой, встроенной в такой короткий промежуток времени, пользовательский интерфейс и поток потребует нескольких исправлений перед развертыванием.
Установка
У вас должен быть следующее предустановленное:
- OpenCV
- Mongodb
- Файлы данных предиктора DLIB должны быть размещены в данных/
- Файлы данных HAAR CASCADES, которые будут размещены в данных/
- Питон 2
- Файлы/mp3 и файлы/IMG хранить музыкальные данные и искусство альбома
Предпочтительно настроить виртуальную env, и тогда вам просто нужно установить пакеты:
pip install -r requirements.txt
Убедитесь, что у вас есть MongoDB, работающий для размещения базы данных. Также запустите простой HTTP -сервер для обслуживания файлов/ папки по адресу Localhost: 8000
cd files
python -m SimpleHTTPServer
Начните программу
Откройте веб -приложение из браузера по адресу localhost: 5000
Технологии
Внешний интерфейс
- Angularjs: JavaScript Framework для программирования музыкального проигрывателя.
- Materialize: CSS Framework для кожи приложения на основе дизайна материала Google.
- WebCamjs: библиотека JavaScript для захвата изображений
- Angular Soundmanager 2: добавляет функциональность музыки для AngularJs с использованием API SoundManager 2
Бэкэнд
- Колба: MicroFramework для Python для построения веб -приложений
- OPENCV: компьютерное зрение с открытым исходным кодом, используемое здесь для распознавания лиц, анализа и идентификации эмоций.
- Несколько библиотек машинного обучения, используемых вместе с OpenCV, такими как DLIB, Numpy, Scikit
Отдельные компоненты
- NG-MusicPlayer: компонент музыкального проигрывателя, построенный на AngularJS и материализуется.
- Pyemotion Recognition: сценарий, используемый для обнаружения настроения из изображения с использованием библиотек OpenCV и машинного обучения.
- Pymusicmood: для автоматической классификации музыки в настроениях на основе параметров, извлеченных из API Spotify.
- Cam-App, Py-Flask-wa: начальный код при настройке сервера кулачкового и колба