Proof of concept for the system of
The idea of ​​combining the capabilities of an AI and the sports domain is quite new and not fully explored. Only professional sports clubs are using AI on a daily basis, that is why we were eager to cooperate with the founder of a football school who wanted to integrate an AI solution into the daily activities of the coaches. The analytics takes various actions of the players on the field (the number of passes, shots, distance covered, etc.) into account. Based on those actions, the analytics system should create an overall statistics list for each player.
Develop and test the possible approaches: different AI models and ways for statistics calculation. At the initial stage, we put forward several hypotheses and selected possible tools (AI models) that we wanted to test
  • Player identification
    on the video feed
  • Player’s action identification
  • Video synchronization
  • Ball detection
In order to understand how the whole system works, we should start with some basic use case scenario on how the user interacts with the system:
Calibration of cameras
Before the game starts, the coach calibrates 6 cameras so that they cover the required zones. It happens in a web application, where he/she can see live feed from all of the cameras.
Start of the recording
The game starts with the whistle blow, and this is the signal for the cameras to start the recording.
Players automatic calibration
Players get identified automatically based on the face recognition results.
Players manual calibration
By the end of the game, a coach opens a video from one of the cameras on the web app and manually calibrates the players. It is needed when the automatic calibration doesn't identificate the player (several players are in the same spot, long-term collisions, blindspots on the video).
Pose and face recognition
At this step we understand how the player moves and what action he/she does on the field.
Statistical summary
As a result of the recognition, the coach receives the overall statistics for each player on the field.

We came up with an idea that included facial recognition for player identification purposes. We used several CV solutions for automatic player identification:

  1. Face detection model
  2. Face recognition model
In order to understand the type of actions of each player on the field, we used models for human poses identification. They show the ‘skeleton’ for each person captured on the video feed and the movement of their body parts (legs, arms, torso, etc).

Another challenge was camera synchronization. Because of the sizes of a football field, we couldn't use just one camera to cover it completely. Based on the quality and performance of the cameras available, we developed an approach using 6 cameras (4 at the corners and 2 in the middle of the field). The main method of synchronization for us was sound (aloud whistle at the beginning of the match) and further synchronization through the comparison of the sound waves on all 6 cameras.

During the PoC stage, we’ve inspected several ML algorithms for pose and face detection. We’ve made a documentation that included project overview, use-case scenarios, preliminary architecture, and functionality list. By the end of the PoC, we were ready for the start of the project by combining the ML algorithms together and integrating them into a web application.


One of the most crucial requirements we also should remember about was the speed of the recognition process. The speed was a strict requirement for several reasons:

  • Our client has 300 football schools and in 150 of those schools training activities were simultaneous;
  • time = money since the video processing took place on third-party servers;
  • Coaches want to work with up-to-date analytics and concentrate more
    on working with the analytics rather than spending time collecting it.

As for the client, the main focus was on bringing more interactivity between the parents and the results of their children. By receiving an analytical overview of their kids performance, they become more engaged in the whole training process.