DIP-football - A football video analyse system based on Yolov5, alphapose, Qt6

Overview

足球视频分析系统

作者

简介

本项目是SJTU 21-22学年CS386 数字图像处理课程的大作业,本文是足球视频分析系统的参考文档。我们主要实现了以下功能:

  1. 基于Yolo v5和PastaNet搭建了足球视频的分析神经网络,能够对球员位置、球员姿态和动作进行识别,也能对球队战术进行初步识别
  2. 基于Qt6搭建了一套足球分析系统,包括服务端和客户端:客户端上传视频到服务端,分析完成后再下载结果并展示

使用方法

  • 服务端:

    1. 需要一台装有NVIDIA20系列显卡,并且装有cuda10.2的Linux电脑(如果你打算用CPU运行神经网络,没有显卡也可以)
    2. 配置python环境,输入conda env create -n activity2vec -f DIP/HAKE-Action-Torch-Activity2Vec/activity2vec.yamlconda env create -n yolo -f DIP/Yolov5_DeepSort_Pytorch/yolo.yaml
    3. 在Linux环境下用Qt6编译src/server-console/server-console.pro,如果是在docker中,那么还需用ldd命令找到所需的库文件,将编译好的可执行文件和库文件一起拷贝到docker
    4. 修改DIP文件夹下面三个.sh脚本,将其中的$PYTHON_PATH改成自己conda环境中对应的python位置
    5. 将编译好的server-console放到DIP文件夹下,运行之
  • 客户端:

    1. 下载并安装Qt6
    2. 用Qt6打开src/layouts/basiclayouts.pro,编译之
    3. DIP/GUI中的get_place.py打包成get_place.exe,并与第二步编译好的文件放在同一目录下
    4. 运行第二步编译好的文件

文件夹

DIP  神经网络方面
|-- GUI            人工校准GUI
|-- inputfile      输入文件
|-- Yolov5_DeepSort_Pytorch
|-- HAKE-Action-Torch-Activity2Vec
...

src  图像界面方面
|-- layouts        客户端
|-- server-console 服务端

report 报告

注意

  • 我们在此处没有提供全套DIP文件夹,它足足有7.2G,您可以根据下面的链接下载环境

    链接: https://pan.baidu.com/s/1PiAyDIr59o5IvgcjAnUylw  密码: 0gso
    --来自百度网盘超级会员V5的分享
    

Football Video Analyse System

Introduction

This project is a major assignment of cs386 digital image processing course of SJTU 21-22 academic year. This tutorial is a reference document for football video analysis system. We mainly realize the following functions:

  1. We build a football video analysis neural network, which can identify the player's position, player's posture and action, and also preliminarily identify the team's tactics.
  2. We construct a football analysis system based on Qt-6, including server and client: the client uploads the video to the server, downloads the results and displays them after analysis.

Usage

  • Server:

    1. You need a CUDA 10.2 Linux computer with NVIDIA 20 series graphics card (If you plan to run neural networks with CPU, you can do it without a graphics card)
    2. Build the python environment, enter conda env create -n activity2vec -f DIP/HAKE-Action-Torch-Activity2Vec/activity2vec.yaml and conda env create -n yolo -f DIP/Yolov5_DeepSort_Pytorch/yolo.yaml
    3. Compile src/server-console/server-console.pro in Linux Qt6. If you decide to run it in docker, you also need ldd command to find the required library, then copy the executable file and the library to docker
    4. Modify the three .sh script in folder DIP, change $PYTHON_PATH to the corresponding Python location in your conda environment
    5. Put the executable server-console into the DIP folder, then run it
  • Client:

    1. Download and install Qt6
    2. Open src/layouts/basiclayouts.pro with Qt6, then compile it
    3. Pack the DIP/GUI/get_place.py to get_place.exe and put it in the same directory as the files compiled in step 2
    4. Run the file compiled in step 2

Directory

DIP  # about neural network
|-- GUI            # calibrate GUI
|-- inputfile      
|-- Yolov5_DeepSort_Pytorch
|-- HAKE-Action-Torch-Activity2Vec
...

src  # about GUI
|-- layouts        # client
|-- server-console # server

report 报告

Note

  • We don't provide a full set of DIP folders here. It takes up 7.2G of space. You can download the environment according to the link below:

    URL: https://pan.baidu.com/s/1PiAyDIr59o5IvgcjAnUylw
    password: 0gso
    
PyTorch implementation of DeepUME: Learning the Universal Manifold Embedding for Robust Point Cloud Registration (BMVC 2021)

DeepUME: Learning the Universal Manifold Embedding for Robust Point Cloud Registration [video] [paper] [supplementary] [data] [thesis] Introduction De

Natalie Lang 10 Dec 14, 2022
FlingBot: The Unreasonable Effectiveness of Dynamic Manipulations for Cloth Unfolding

This repository contains code for training and evaluating FlingBot in both simulation and real-world settings on a dual-UR5 robot arm setup for Ubuntu 18.04

Columbia Artificial Intelligence and Robotics Lab 70 Dec 06, 2022
Pytorch implementation of the paper: "A Unified Framework for Separating Superimposed Images", in CVPR 2020.

Deep Adversarial Decomposition PDF | Supp | 1min-DemoVideo Pytorch implementation of the paper: "Deep Adversarial Decomposition: A Unified Framework f

Zhengxia Zou 72 Dec 18, 2022
Painting app using Python machine learning and vision technology.

AI Painting App We are making an app that will track our hand and helps us to draw from that. We will be using the advance knowledge of Machine Learni

Badsha Laskar 3 Oct 03, 2022
ECLARE: Extreme Classification with Label Graph Correlations

ECLARE ECLARE: Extreme Classification with Label Graph Correlations @InProceedings{Mittal21b, author = "Mittal, A. and Sachdeva, N. and Agrawal

Extreme Classification 35 Nov 06, 2022
Semi-supervised Adversarial Learning to Generate Photorealistic Face Images of New Identities from 3D Morphable Model

Semi-supervised Adversarial Learning to Generate Photorealistic Face Images of New Identities from 3D Morphable Model Baris Gecer 1, Binod Bhattarai 1

Baris Gecer 190 Dec 29, 2022
yolov5目标检测模型的知识蒸馏(基于响应的蒸馏)

代码地址: https://github.com/Sharpiless/yolov5-knowledge-distillation 教师模型: python train.py --weights weights/yolov5m.pt \ --cfg models/yolov5m.ya

52 Dec 04, 2022
RAMA: Rapid algorithm for multicut problem

RAMA: Rapid algorithm for multicut problem Solves multicut (correlation clustering) problems orders of magnitude faster than CPU based solvers without

Paul Swoboda 60 Dec 13, 2022
Repo for CVPR2021 paper "QPIC: Query-Based Pairwise Human-Object Interaction Detection with Image-Wide Contextual Information"

QPIC: Query-Based Pairwise Human-Object Interaction Detection with Image-Wide Contextual Information by Masato Tamura, Hiroki Ohashi, and Tomoaki Yosh

105 Dec 23, 2022
Super-BPD: Super Boundary-to-Pixel Direction for Fast Image Segmentation (CVPR 2020)

Super-BPD for Fast Image Segmentation (CVPR 2020) Introduction We propose direction-based super-BPD, an alternative to superpixel, for fast generic im

189 Dec 07, 2022
Pytorch implementation of FlowNet by Dosovitskiy et al.

FlowNetPytorch Pytorch implementation of FlowNet by Dosovitskiy et al. This repository is a torch implementation of FlowNet, by Alexey Dosovitskiy et

Clément Pinard 762 Jan 02, 2023
用opencv的dnn模块做yolov5目标检测,包含C++和Python两个版本的程序

yolov5-dnn-cpp-py yolov5s,yolov5l,yolov5m,yolov5x的onnx文件在百度云盘下载, 链接:https://pan.baidu.com/s/1d67LUlOoPFQy0MV39gpJiw 提取码:bayj python版本的主程序是main_yolov5.

365 Jan 04, 2023
This is the official PyTorch implementation for "Mesa: A Memory-saving Training Framework for Transformers".

A Memory-saving Training Framework for Transformers This is the official PyTorch implementation for Mesa: A Memory-saving Training Framework for Trans

Zhuang AI Group 105 Dec 06, 2022
Array Camera Ptychography

Array Camera Ptychography This repository provides the code for the following papers: Schulz, Timothy J., David J. Brady, and Chengyu Wang. "Photon-li

Brady lab in Optical Sciences 1 Nov 15, 2021
Implementation of fast algorithms for Maximum Spanning Tree (MST) parsing that includes fast ArcMax+Reweighting+Tarjan algorithm for single-root dependency parsing.

Fast MST Algorithm Implementation of fast algorithms for (Maximum Spanning Tree) MST parsing that includes fast ArcMax+Reweighting+Tarjan algorithm fo

Miloš Stanojević 11 Oct 14, 2022
Malware Analysis Neural Network project.

MalanaNeuralNetwork Description Malware Analysis Neural Network project. Table of Contents Getting Started Requirements Installation Clone Set-Up VENV

2 Nov 13, 2021
Tensorflow2 Keras-based Semantic Segmentation Models Implementation

Tensorflow2 Keras-based Semantic Segmentation Models Implementation

Hah Min Lew 1 Feb 08, 2022
A fast python implementation of Ray Tracing in One Weekend using python and Taichi

ray-tracing-one-weekend-taichi A fast python implementation of Ray Tracing in One Weekend using python and Taichi. Taichi is a simple "Domain specific

157 Dec 26, 2022
The Unreasonable Effectiveness of Random Pruning: Return of the Most Naive Baseline for Sparse Training

[ICLR 2022] The Unreasonable Effectiveness of Random Pruning: Return of the Most Naive Baseline for Sparse Training The Unreasonable Effectiveness of

VITA 44 Dec 23, 2022
An OpenAI-Gym Package for Training and Testing Reinforcement Learning algorithms with OpenSim Models

Authors: Utkarsh A. Mishra and Dr. Dimitar Stanev Advisors: Dr. Dimitar Stanev and Prof. Auke Ijspeert, Biorobotics Laboratory (BioRob), EPFL Video Pl

Utkarsh Mishra 16 Dec 13, 2022