VTS | Football
Tracking and Analysing Football Shots
Andoni Mujika
1
, David Oyarzun
1
, Jeser Zalba
2
, Aitor Ardanza
1
, Mikel Arizaleta
2
, Sara García
1
and Amalia Ortiz
2
1
Vicomtech-ik4, Mikeletegi Pasealekua, Donostia-San Sebastián, Spain
2
Visiona Technology Systems, Mikeletegi Pasealekua, Donostia-San Sebastián, Spain
Keywords: Visual Tracking, Football, Virtual Reality.
Abstract: This paper describes VTS | Football, a tool for tracking and analysing football shots. The system tracks the
trajectory of the ball using two synchronized cameras, removing all the geometries that are not similar to a
ball and extrapolating the position of the ball when it is hidden by the goal keeper. Once the trajectory is
obtained, the user can analyse the shot using a tool that has been developed for this purpose. He/she can
organize the training sessions, follow the evolution of a player, compare performances of different players
and visualize the shot in a 3D virtual environment. To make the visualization smooth, an interpolation
algorithm based on least squares methods has been developed and to make the visualization attractive a
football player and a crowded stadium have been added to the virtual scene.
1 INTRODUCTION
Improving the execution of free kicks in football is
an important aspect in training process since
statistical results of football (Liga, 2015)
demonstrate that:
Less than 80% of penalty shots finish in a goal
Less than 4% of free kicks finish in a goal
Around 70% of games end as a tie or victory by
one goal
At the end of the season the difference in points
by achieving objectives is minimum. For
example, in the Spanish league, in the last 5
seasons, the average points difference between
being relegated to the second division and
staying in the first is 0.80.
These data show that improving performance in set-
pieces achieving one more goal in any of the games
played throughout the league may represent
achieving the point that helps to win the league, play
in Europe or not be relegated to the second division.
Nowadays, the coach has a lot of tools for
training several aspects of the game, including free
kicks; however they have not objective information
about the shot in order to assess the improving of
each player.
During the latest years, authors of this work have
been working on Visiona Training System (VTS), a
platform that is able to reconstruct the trajectory of a
ball and objectively compare it with the ideal
trajectory. This platform has three key requirements
that are also innovation over state-of-the art systems:
Flexibility. The software should be useful for
different ball-based sports.
Low cost. The whole system should be low cost,
mainly by using regular hardware.
Mobility. The system has to be portable, but also
provide advanced usability on training sessions:
it has to take advantage of mobile devices to
configure and use it.
The scenario of free kicks in football is an ideal test-
bed for first market approaches of VTS platform.
Therefore, a dedicated instance of the platform,
called VTS | Football has been developed. VTS |
Football offers objective and real data on the exact
point where the ball crosses the plane of the goal and
its speed and it also includes specific functionalities
for football trainers.
This papers explains the VTS architecture and
the different modules that compose VTS | Football.
Next section is focused on related work, then
Section 3 explains the VTS reconstruction
architecture, and sections 4 and 5 the training and
visualization tools respectively. Finally, section 6
presents conclusions and future work.
Mujika, A., Oyarzun, D., Zalba, J., Ardanza, A., Arizaleta, M., García, S. and Ortiz, A..
VTS |Football - Tracking and Analysing Football Shots.
In Proceedings of the 3rd International Congress on Sport Sciences Research and Technology Support (icSPORTS 2015), pages 239-244
ISBN: 978-989-758-159-5
Copyright
c
2015 by SCITEPRESS Science and Technology Publications, Lda. All rights reserved
239
2 RELATED WORK
Using software technologies for supporting sports is
quite common nowadays. There exist several tools
that are focused training, help to refereeing or
analytics. Good known examples are (NACSport,
2015) or (VideoSTAT, 2015).
Going into visual computing based tools, very
specialized software can be found. Formula 1
drivers, for example, make use of advanced
simulators that virtually represent the car and the
tracks. These simulators are even able to reproduce
the forces and real effects that applies to the car,
temperature changes or specific weather (R&D,
2015).
Other specialized example is the system
developed by Jong and Myung, which is able to
analyse golf shots. This platform is composed by set
of cameras that records and reproduce the shot,
helping golf players in their train session (Jong-Sung
and Myung-Gyu, 2012).
An interesting system is designed by Bideau et
al., (2004). They propose a virtual reality platform
using a CAVE, where handball goalkeepers trains
against virtual handball players.
In the football case, there is a similar
development created by Hoinville et al., (2011).
Regarding 3D reconstruction, there are several
mature techniques that can be used as basis to a
system like VTS | Football. PatchMach (Barnes et
al., 2009), presented by Barnes et al., and its
combination with the Agglomerative
Correspondence Clustering (ACC) algorithm are
used in non-rigid elements.
And some techniques, such as those developed
by Sattler et al., (2011) or Schneider et al., (2011)
perform global optimization that improve the
resulting virtual model.
The combination of these techniques with
specific hardware, for example depth and RGB
cameras is being widely studied (Newcombe et al.,
2011); (Eitz et al., 2012).
The maturity of these techniques is proved by
their inclusion into commercial software, but not
applied to sports (Aqsense, 2015); (ICY, 2015);
(Chimera, 2015).
In general, related systems found in state of the
art are robust but very specific, lacking a dynamic
reconstruction algorithm that can be applied to other
sports different than football. Moreover, VTS |
Football is composed by low cost and portable
hardware that can be easily set up. The application
of general purpose reconstruction techniques is also
an innovative approach comparing existing systems.
3 VTS | FOOTBALL
DESCRIPTION
VTS | Football provides a tool that transforms the
goal area into a virtual target so that the coach can
improve training of all of the phases of the game in
which shooting is appreciated and it is particularly
useful in the training of set-pieces such as free kicks
and penalties.
VTS | Football is a system based on machine
vision technology. Machine vision is a field of
artificial intelligence which is based on the
programming of a computer so that it is able to
analyse and interpret a real world scene after
processing one or more images captured by some
cameras.
Once digitized, these images have to be
processed by a computer, where the appropriate
image processing algorithms have to be developed in
order to obtain the necessary information from the
inspected scene.
Our technology allows calculating the ball’s last
trajectory and offers the exact coordinates with
which it has entered the goal and its speed.
This information is also obtained in real time,
and allows correcting the player during training
sessions or, on the contrary, the player can train and
VTS | Football will store the resulting information to
be analysed later on.
3.1 Hardware
As can be seen in Figure 1, the system consists of
two synchronized cameras strategically placed on
both sides of the field and focusing to the goal. Both
cameras are controlled by the PC which is inside an
electric cabinet.
Figure 1: Capture system (two cameras and a PC)
localization in the football field.
The hardware generates as output a group of
synchronized images containing the ball movement
through the shot trajectory.
icSPORTS 2015 - International Congress on Sport Sciences Research and Technology Support
240
3.2 Calibration
The stereo system must be correctly calibrated in
order to obtain the relative position between both
cameras and the goal.
A calibration pattern with previously known
characteristic points is positioned in more than 20
different locations. The images of the calibration
pattern captured by both cameras are then processed
and every characteristic point is automatically
located in each image. This information is used in
order to calibrate both intrinsic and extrinsic
parameters of the stereo system applying standard
camera calibration algorithms defined by (Zhang,
2000).
3.3 Software
The images generated by the hardware are
processing by a software module. This module is
able to detect the ball in each pair of images and
calculate its exact position in each moment. For this
development we found two main challenges.
First of all the system is place outdoor which
means that the system should work under different
meteorology conditions. We develop a module that
permits the system to auto-adjust the different
camera parameters to the illumination conditions.
Besides, since the system is used during the
training, any object such as another player, a bird or
the goalkeeper can hide the correct visualization of
the ball. For that, we have implemented two
algorithms.
The first one permits to eliminate any object
from the scene that has not the geometry similar to a
ball. The second one permits to extrapolate the data
when the ball is hidden by other object.
Finally the system is able to analyse the data for
the trajectory obtained directly in the reconstruction,
the speed and the coordinates of the ball where it
crosses the plane of the goal.
Figure 2 shows how the system reconstructs the
scene. The image shows at the top the synchronized
pair of images captured in a given time instant.
Underneath, the image shows how the system has
deleted any static information, so the moving objects
have been clearly detected.
At that point, algorithms for blob analysis have
been implemented in order to extract different
properties of candidate blobs shown in Figure 2, so
that the system can segment the blob that represents
the ball in each image. Some of the conditions that
are imposed are geometrical properties, such as area
and contours, and coherent positions belonging to
the current detected trajectory.
Figure 2: Reconstruction system, removing all static
information and highlighting the ball and the keeper.
Once the blobs representing the ball have been
segmented and located in both cameras, the 3D point
is calculated via 3d stereo triangulation and a new
position of the trajectory is obtained.
4 USER TOOL
User tool allows the coach to:
Organize the training sessions by features, shoot
parameters, players list, comments...
Control the system indicating it when the system
should start to reconstruct the shot.
Visualize the results of each shot (speed,
trajectory as 3D animation and the point where
the ball crosses the plane of the goal as an
image).
Scoring each of the shots on templates
predefined by the coach.
See the evolution of all players throughout the
season or within any date range.
Comparing players including according to
predefined variables.
Figure 3 shows a screenshot of the statistics feature.
What the application does is showing a curve with
all the kicks that the selected player has done. The
coach also can filter a specific type of shot
(penalties, free kicks, corners…) by using the same
parameter that he/she uses for the training session.
The tool also allows comparing any player
against any of his teammates, generating plots with
the average score along time for each compared
player, taking into account training sessions
performed under identical conditions, regarding
VTS |Football - Tracking and Analysing Football Shots
241
distance to the goal, scoring template used, etc.
Figure 3: Statistics application comparing several players.
5 SHOT VISUALIZATION
As stated before, the user can visualize any shot
captured by the VTS | Football system in order to
analyse the trajectory more precisely (e.g. when the
coach wants to show how the trajectory of the
evolved to make the player see why the ball went
out).
Figure 4: Shot visualization application showing the
trajectory of the ball, the player and the spectators.
The user can watch the selected shot in a similar
way to any video player. He/she can play or pause
the ball at any point of the trajectory or watch it
faster or slower. Moreover, the point of the view can
be changed at any point. For example, a shot can be
watched from a point located quite far away from
the goal, to analyse the trajectory, but at the end, the
user can pause the animation and move the camera
to a point where the entrance of the ball is better
shown. Figure 4 shows the shot visualization
application. The trajectory of the ball is highlighted
in yellow so that it can be analysed easily.
For this visualization, the application takes the n
points captured in the real trajectory and makes an
interpolation to obtain an approximated trajectory in
a virtual 3D football field. The next subsection
shows how this interpolation is done.
5.1 Trajectory Interpolation
For the interpolation, it is considered that the ball at
time t follows the following curve:


(1)
Where ∈
is the location of the ball and
,,
are the coefficients of the curve. Even
the equation 1 is very simple, since it is quadratic in
three dimensions, it is sufficient to interpolate even
spinning balls. In the following, the notation will be
reduced to one dimension, assuming that every step
will be done three times, once per coordinate.


(2)
When rendering the ball in time , the trajectory
generator takes captured points, 
,
, that
surround such time. Then, using the least squares
method the following function must be minimized.





(3)
So, the first partial derivatives of must be 0.


0


0


0
(4)
Equation 5 and 6 show the equation obtained with
the first derivative with respect to a and the other
two are computed in a similar way.
2




0
(5)








(6)
And putting all the equation together we obtain an
equation system like the following.
















1








(7)
The equation system is resolved with a simple LU
Decomposition method and a,b,c are obtained.
icSPORTS 2015 - International Congress on Sport Sciences Research and Technology Support
242
Thus, inserting them in equation 1, the position
where the ball will be rendered in time t is obtained.
5.2 Adding the Starting Point
Another utilization scenario has been identified for
VTS | Football tool. The reconstruction and
visualization tool can be used for marketing events,
where a visitor shoots some balls to goal and he/she
can visualize his/her performance.
In that case, the aim of the applications is not
only to have a realistic reproduction, but also an
attractive visualization. For that, several virtual
elements have been included in the 3D virtual
environment. Figure 5 shows the stadium that has
been modelled, based on real stadiums and the
virtual player that has been introduced so that it
looks like the player is shooting the ball.
Besides, thousands of spectators have been
placed in the stadium. The simple visual characters
are replicated and animated via shaders in the GPU.
This way, there is no loss of performance efficiency
because of the rendering of such amount of virtual
characters.
When locating the player in the field a new
problem arises. The points of the trajectory that have
been captured don’t start at the floor; they are near
the goal. Thus, a starting point, the point where the
virtual player kicks the ball has to be computed.
Figure 5: The virtual stadium and the virtual player that
have been modelled for the application.
Since, a perfect realism is not essential in this
scenario; a simple method has been used for this
computation, assuming that the ball follows a
Uniformly Accelerated Motion. Specifically, the
formula of such motion in the vertical axis is used
to obtain the time difference between the starting
point and the first captured point.





2




(8)
Where the known variables are

the altitude of
the first captured point;

0 the altitude of the
starting point;

vertical velocity at the first
captured point (computed with the difference
between the first captured two points) and
9,8 the acceleration in the vertical axis (gravity).
The unknown variables are

, the vertical velocity
at the starting point and
, the time difference
between the first captured point and the starting
point
0.
The accelerations in the axes x and z,
and
,
are also assumed to be uniform. Thus, they can be
computed with the difference between the first and
the last captured points.













(9)
In the same way,

and

, velocities at the
starting point are computed. And finally, we obtain
the starting point

,0,

.





2





2
(10)
6 CONCLUSIONS AND FUTURE
WORK
In this paper authors presented the work done
around Visiona Training System platform and its
VTS | Football instance. VTS is a system that
provides a virtual reconstruction of ball trajectories
and allows their measurement against ideal
trajectories. The platform is based on three main
premises:
Flexibility for using it in different sports
Low cost hardware
Portability and usability
The paper has explained the technical architecture of
VTS platform and it has detailed the reconstruction
and visualization algorithms.
Moreover, it presents tools that have been
implemented specifically for the VTS | Football
instance.
Future work is mainly focused on getting both
technical and commercial feedback of VTS |
Football software and apply it to new instances of
the platform for other sports.
VTS |Football - Tracking and Analysing Football Shots
243
ACKNOWLEDGEMENTS
The work presented in this paper has been partly
funded by Basque Government (IN-2014/00004).
REFERENCES
Aqsense, 2015. Aqsense Home page. [Online]
Available at: http://www.aqsense.com/
[Accessed June 2015].
Barnes, C., Shechtman, E., Finkelstein, A. & Goldman, D.
B., 2009. PatchMatch: a randomized correspondence
algorithm for structural image editing. ACM Trans.
Graph.
Bideau, B. et al., 2004. Virtual reality applied to sports:
do handball goalkeepers react realistically to
simulated synthetic opponents?
Chimera, 2015. Chimera Home page. [Online]
Available at: http://www.cgl.ucsf.edu/chimera/
[Accessed June 2015].
Eitz, M. et al., 2012. Sketch-based Shape Retrieval.
Transactions on Graphics (TOG), 31(4).
Hoinville, T. et al., 2011. Performances of experienced
and novice sportball players in heading virtual
spinning soccer balls.
ICY, 2015. ICY Home page. [Online]
Available at: http://icy.bioimageanalysis.org/
[Accessed June 2015].
Jong-Sung, K. & Myung-Gyu, K., 2012. A high-speed
multi-exposure camera for virtual sports games
Liga, 2015. La Liga Statistics. [Online]
Available at: http://www.laliga.es/estadisticas/liga-
bbva/ [Accessed June 2015].
NACSport, 2015. NACSport Home page. [Online]
Available at: http://www.nacsport.com/
[Accessed June 2015].
Newcombe, R. A. et al., 2011. KinectFusion: Real-Time
Dense Surface Mapping and Tracking.
R&D, 2015. R&D F1 Simulation. [Online]
Available at: http://f1simulation.com.my/
[Accessed June 2015].
Sattler, T., Leibe, B. & Kobbelt, L., 2011. Fast Image-
Based Localization using Direct 2D-to-3D Matching.
s.l., s.n.
Schneider, D. C., Kettern, M., Hilsmann, A. & Eisert, P.,
2011. A Global Optimization Approach to High-detail
Reconstruction of the Head, Vision, Modeling and
Visualization.
VideoSTAT, 2015. VideoSTAT Home page. [Online]
Available at: http://www.videostat.com.ar/
[Accessed June 2015].
Zhang, Z., 2000. A flexible new technique for camera
calibration. Pattern Analysis and Machine
Intelligence, IEEE Transactions on, 22(11), 1330-
1334.
icSPORTS 2015 - International Congress on Sport Sciences Research and Technology Support
244