Анализируйте баскетбольные броски и позы для бросков с помощью машинного обучения!
Это приложение на базе искусственного интеллекта, предназначенное для обнаружения объектов и анализа баскетбольных бросков. Приложение позволяет пользователям загружать баскетбольные видео для анализа или отправлять POST-запросы к API. Результаты включают подробный анализ снимков и поз на основе данных обнаружения объектов. В проекте используется OpenPose для вычисления ключевых точек тела и других показателей.
AI Basketball Analysis использует искусственный интеллект для анализа баскетбольных бросков, определяя движения игроков, точность бросков и данные о позе. Он использует популярную платформу OpenPose для оценки позы человека. Независимо от того, являетесь ли вы разработчиком или спортивным аналитиком, этот проект поможет изучить, как ИИ может автоматизировать и улучшить баскетбольный анализ.
Важно : этот проект предназначен только для некоммерческого исследовательского использования , поскольку он использует лицензию OpenPose. Пожалуйста, ознакомьтесь с ЛИЦЕНЗИЕЙ для получения подробной информации.
Если вы новичок в оценке позы человека, прочтите эту сводную статью, в которой раскрываются ключевые концепции OpenPose.
Чтобы получить копию проекта, выполните следующую команду:
git-клон https://github.com/chonyy/AI-basketball-anaанализ.git
Перед запуском проекта убедитесь, что все необходимые зависимости установлены, выполнив:
pip install -r требования.txt
Примечание . Для эффективного запуска OpenPose, особенно для анализа видео, для этого проекта требуется графический процессор с поддержкой CUDA .
После того, как все настроено, вы можете разместить проект локально с помощью простой команды:
приложение Python.py
Приложение запустится локально, куда вы сможете загрузить баскетбольные видео или изображения для анализа.
Если вы предпочитаете не запускать проект локально, вы можете попробовать следующие альтернативы:
Благодаря hardik0 вы можете экспериментировать с AI Basketball Analysis в Google Colab, не нуждаясь в собственном графическом процессоре:
Этот проект также доступен на Heroku, однако учтите, что тяжелые вычисления, такие как TensorFlow, могут привести к ошибкам тайм-аута на Heroku из-за ограниченности ресурсов. Для достижения максимальной производительности рекомендуется запускать приложение локально.
Вот разбивка ключевых компонентов проекта:
app.py : основной файл для запуска веб-приложения.
/static : содержит все статические ресурсы, такие как изображения, CSS и JavaScript.
/models : каталог, содержащий предварительно обученные модели для обнаружения объектов.
/scripts : служебные сценарии для обработки данных и обучения модели.
Анализируйте баскетбольные броски из входного видео, определяя успешные и пропущенные броски. Ключевые точки разных цветов обозначают:
Синий : обнаружен баскетбольный мяч в нормальном состоянии.
Фиолетовый : неопределенный выстрел.
Зеленый : Успешный выстрел.
Красный : пропущенный бросок.
Используя OpenPose, проект анализирует углы локтей и коленей игрока во время удара, помогая определить углы и время удара.
Эта функция визуализирует обнаружение выстрелов, показывая уровни достоверности и координаты для каждого обнаружения.
Проект включает в себя REST API для обнаружения, позволяющий отправлять изображения через запрос POST и получать ответ JSON с обнаруженными ключевыми точками и другими данными.
POST/detection_json
КЛЮЧ : изображение
ЗНАЧЕНИЕ : Входное изображение.
Модель основана на архитектуре Faster R-CNN , обученной на наборе данных COCO . Для получения более подробной информации обратитесь к Зоопарку моделей TensorFlow.
Переведите модель на YOLOv4 для повышения производительности.
Внедрите алгоритм отслеживания SORT для фильтрации ложных обнаружений.
Улучшите функции визуализации для получения более четких результатов.
Оптимизируйте эффективность для лучшей интеграции веб-приложений.
Мы приветствуем вклад сообщества! Вот как вы можете принять участие:
Форкнуть репозиторий
Создайте ветку : git checkout -b feature/your-feature-name
Зафиксируйте изменения : git commit -m 'Add some feature'
Нажмите на ветку : git push origin feature/your-feature-name
Открыть запрос на включение
Для получения дополнительной информации о вкладе посетите страницу «Сделать запрос на включение».