Bagadus – Player tracking

Bagadus integrates a camera array video capture system with the ZXY Sport Tracking system for player statistics and a system for human expert annotations. Bagadus allows the game analytics to automatically playout a tagged game event or extract a video of events extracted from the statistical player data like all sprints at a given speed. Using the exact player position, we can also follow individual or groups of players. The videos are presented using a stitched panorama video or by switching cameras. The prototype, developed at UiO,  is applied at Alfheim Stadium (Tromsø IL, Norway).

State of the art

A large number of (elite) sports clubs spend a large amount of resources to analyze their game performance, either manually or using one of the many existing analytics tools.In the area of soccer, there exist several systems where coaches can analyze the game play in order to improve the performance.

Parhaps most common is Interplay-sports, which has been used since 1994. Here, video streams are manually analyzed and annotated using a soccer ontology classification scheme. Trained and soccer-skilled operators tag who has the ball,
who made a pass, etc. ProZone is another commonly used system that automates some of this manual notation process by video-analysis software. In particular, it quantifies movement patterns and characteristics like speed, velocity and position of the athletes. An empirical evaluation of deployed ProZone systems at Old Trafford in Manchester and Reebook Stadium in Bolton, concluded that the video camera deployment gives an accurate and valid motion analysis. Similarly, STATS SportVU Tracking Technology uses video cameras to collect the positioning data of the players within the playing field in real-time. This is further compiled into player statistics and performance.

Bagadus Architecture

The Bagadus system provide an alternative to the above inaccurate and resource hungry approaches,
It is divided into three different subsystems which are integrated in our soccer analysis application.

ZXY Sensor subsystem

Tracking people through camera arrays has been an active research topic for several years, and several solutions has been suggested. The accuracy of such systems are improving, but they are still giving errors.
ZXY Sport Tracking provides such a solution where a sensor system submits position information at an accuracy of about one meter at a frequency of 20 Hz. Based on these sensor data, statistics like total length ran, number of sprints of a given speed, etc. can be queried for, in addition, to the exact position of all players at all times.

ZXY Sport Tracking uses global positioning and radio based systems for capturing performance measurements of athletes. Using a sensor system, ZXY captures a player’s orientation on the field, position, step frequency and heart rate frequency with a resolution of samples up to 20 times per second.

Analytics subsystem

Coaches have for a long time analyzed games in order to improve their own team’s game play and to understand their opponents. Traditionally, this have been done by making notes using pen and paper, either during the game or by watching hours of videe. Some clubs even use one person per player. To reduce the manual labor, Bagadus integrates with Muithu, which equips a user with a device like a mobile phone or a tablet to register predefined events and/or events can be annotated textually. The registered event is then stored in an analytics database together with the time for later retrieval.

Video recording subsystem

To record high-resolution video of the entire soccer field, we have installed a camera array consisting of 4 Basler industry cameras with a 1/3-inch image sensor supporting 30 fps and a resolution of 1280×960. The cameras are synchronized by an external trigger signal in order to enable a video stitching process that produces a panorama video picture. The cameras are mounted close to the middle line under the roof covering the spectator area. With a 3 mm lens, each camera covers a field-of-view of about 68 degrees (i.e., all four cover the full field with sufficient overlap to identify common features necessary for camera calibration and stitching.) The video subsystem supports two different playback modes. The first allows playing video from individual cameras where the view switches automatically between the cameras (i.e., manually selecting a camera or automatically following players. For this mode, the video data from each camera is stored and encoded separately.) The second mode plays back a panorama video stitched from the 4 camera feeds. The cameras are calibrated in their fixed position, and the captured videos are each processed in a capture-debarrel-rotate-stitch-store pipeline. This means that due to the 3 mm fish-eye lens, we must correct the images for lens distortion in the outer parts of the frame. Then, since the cameras have different position and point at different areas of the field, the frames must be rotated and morphed into the panorama perspective. Finally, the overlapping areas between the frames are used to stitch the 4 videos into a 7000×960 panorama picture before storing it to disk. Currently, the panorama pipeline is non-real-time, but we are currently working on optimizing, parallelizing and offloading operations to multiple cores and GPUs.