A COMPONENT BASED INTEGRATED SYSTEM FOR SIGNAL
PROCESSING OF SWIMMING PERFORMANCE
Tanya Le Sage
Sports Technology Institute, Loughborough University, LE11 3TU, Loughborough, U.K.
Paul Conway, Laura Justham, Siân Slawson, Axel Bindel, Andrew West
Wolfson School of Mechanical and Manufacturing Engineering, Loughborough University
LE11 3TU Loughborough, U.K.
Keywords: Swimming, Components, Integrated system, Signal processing.
Abstract: Research presented in this paper details the development of an integrated system, which allowed
presentation of meaningful data to coaches and their swimmers in a training environment. The integrated
system comprised of a wireless sensor node, vision components, a wireless audio communication module
and force measurement technologies. A trigger function was implemented onto the sensor node which
synchronized all of the components and that allowed relative processing of the data. Filtering approaches
and signal processing algorithms were used to allow real-time data analysis on the sensor node.
1 INTRODUCTION
The majority of methods used to analyse swimming
technique are vision-based systems. Quintic is an
example of vision-based software where the analyst
uses a pre-recorded video file and then manually
digitises key occurrences within the recording
(Quintic). The disadvantage of this and other vision
systems are the parallax errors introduced by the use
of video cameras, inaccurate measurements due to
light reflections on the water surface and the large
amount of time it takes to process the data. Manual
digitisation is a time consuming process and does
not allow real-time feedback to the coaches or
swimmers. The process provides limited quantitative
data and requires operator expertise. There is
inherent variability within the results due to the
reliance of human judgement.
Force measurement platforms are an additional
technology used for measuring swimmer
performance. Force data can be integrated with
video data during the block phase (time from the
start trigger to leaving the block) of the dive to
enable more complete analysis.
Accelerometer sensor devices have also been
developed for use in a swimming environment. An
example of this was presented by Davey (2005),
where a system was developed using a tri-axis
accelerometer to monitor stroke technique. Ohgi
used a similar system to measure wrist acceleration
of swimmers (Ohgi, 2002). Both systems used a data
logging accelerometer system to capture the data,
which meant that the data could not be viewed in
real time. These existing systems focus on post
processing that again increases the analysis time
significantly and subsequently coaches are unable to
offer immediate feedback to the swimmers based on
these data. Neither case used a wireless sensor
network (WSN) to allow data to be captured from
multiple swimmers, nor an integrated system to
allow full analysis of the stroke technique.
Research presented within this paper, carried out
at Loughborough University, UK, was concerned
with the development of a component based
integrated system for monitoring elite athletes in the
water. The main results of the initial feasibility study
are presented in this paper. This study considered a
variety of different sensing and measurement
devices and an integrated system was constructed to
capture the data. The integrated system comprised of
a WSN, real time audio communications to the
swimmer, a vision analysis system using real-time
image processing, an underwater camera and a force
measurement platform. The WSN was chosen due to
73
Le Sage T., Conway P., Justham L., Slawson S., Bindel A. and West A. (2010).
A COMPONENT BASED INTEGRATED SYSTEM FOR SIGNAL PROCESSING OF SWIMMING PERFORMANCE.
In Proceedings of the International Conference on Signal Processing and Multimedia Applications, pages 73-79
Copyright
c
SciTePress
Figure 1: Integrated system.
its ability to transmit and feedback data in real-time.
It also allowed multiple swimmers performances to
be analysed simultaneously. Furthermore it was
possible to synchronize the network with other data
capture methods used within the integrated system.
The high-speed and underwater cameras were used
because of their ability to provide the coach with
visual information with regards to the athletes’
performance. This made analysing the data from the
accelerometer and the force platform much simpler.
The audio communications were chosen because
they allowed the coach to feedback information to
the swimmer in real-time, based on the data
gathered.
The WSN was designed with a star topology, a
number of nodes communicated with a poolside
personal computer (PC) via an “Access Point” that
collated the wireless data transmissions from the
wireless nodes and had a hardwired connection to
the PC. A trigger function was implemented onto the
sensor node to allow synchronised processing of
data obtained from all components. A Butterworth
filter and signal processing algorithms to extract the
relevant swimming features were embedded onto the
node which allowed the coach to extract useful data
with regards to each individual swimmer’s
performance in real time.
2 METHODOLOGY
The force measurement system was used to augment
the information available from a high speed camera
and the WSN during the start process. The force
measurement system was comprised of a start
platform instrumented with four Kistler force
transducers (9317B) sampling at 100Hz. The force
measurement platform was used to ascertain the
following parameters:
Horizontal force
Vertical force
Time: to first movement, to back foot leaving,
to front foot leaving, overall block time
Centre of pressure
A high-speed camera and a WSN were
synchronised with the force measurement platform
using a TTL trigger function. The function was
implemented in the embedded programming of the
node which sent an interrupt to the access point (AP)
when the trigger was enabled. Sending a TTL signal
to a port on the AP triggered the system. The
embedded code initialised the trigger, starting the
trigger on the rising edge of the signal. The
integrated system can be seen in Figure 1 and has
been used to determine the characteristics of an
accelerometer trace based on the data gathered from
the high speed video camera and force plateThe
camera used was a Photron SA1 colour camera with
a 1024x1024 resolution, sampling at 50 frames per
second (fps). Automated vision processing was used
to track wearable LED markers placed on body key
body landmarks, for example, the hip. This was done
via spatial thresholding algorithms, developed in
Matlab. An underwater bullet CCTV camera
sampling at 25 fps was also used. Vision data was
used to supplement the data gathered from the WSN,
SIGMAP 2010 - International Conference on Signal Processing and Multimedia Applications
74
allowing stroke recognition and real-time analysis of
the accelerometer signal.
For many low-g (<2g) inertial sensing
applications the signal-to-noise ratio is low and thus
any un-modelled error in the physical parameters
undermine the effectiveness of the intended
application over time (Ang, 2004). A common
method to minimize the errors associated with the
accelerometer signal is the use of filtering (see for
example Koukoulas 2005, Jo 2004, Hernandez
2000). For the current system a low-pass finite
impulse response (FIR) filter was implemented to
filter out frequencies greater than a pre-defined
threshold while retaining the low frequency
components (Ketharnavaz, 2005). Filtering also
reduces the errors associated with integration of a
signal, in this case integration of the accelerometer
data in order to obtain velocity and double
integration to obtain position. Edwards (2005)
demonstrated that seemingly small aliased content
could cause appreciable errors in the integrated
waveforms.
The raw accelerometer values were fed into a
real-time Butterworth filter and signal processing
equations, which were embedded onto the node.
This enabled analysis to take place robustly, in real-
time, so that the results could be sent directly from
the node rather than sending raw data. This was
preferable because the raw data file was large and
therefore filled the available bandwidth. A low pass
Butterworth filter was chosen to smooth the data
collected and to minimize the noise components of
the signal. It was chosen over a Chebyshev filter due
to its ability to be implemented in real time and
embedded on the sensor node. Lap count
identification was automatically determined by
setting a low filter frequency on the Butterworth
filter and using a ‘zero crossing’ algorithm. Signal
processing algorithms were developed to analyse
filtered data, including a ‘zero crossing’ algorithm to
determine the stroke durations and stroke rates,
which were identified to be the variables of most
interest to the end users. Pulse analysis of the
filtered data was also calculated and used to
determine the rise and fall times of each stroke.
Circular buffers were used to allow real-time
implementation of the filter and signal processing
algorithms.
A wireless audio communication module was
attached to the swimmer and a UART interface to
the host device was used to configure the module
operation and then transfer data between the host
and the communication end-point via the wireless
interface. Once the devices were connected the
coach used the microphone input to provide
feedback to the swimmer (who wore earphones
attached to the wireless module) on their
performance throughout their training. The module
transmitted wirelessly up to a depth of 10cm over a
distance of more than 50m underwater.
3 RESULTS
Initially the results are used to highlight the
implementation of the synchronised system and data
capture. The filtering technique used on the
synchronised data is then considered. Finally
determination and analysis of the stroke
characteristics from the filtered data are reviewed.
The TTL trigger function embedded on the
sensor node was used to capture data simultaneously
from the force measurement platform, the high
speed video camera and the sensor node. These data
can be seen in Figure 2. The high speed video was
used to supplement the data gathered from the force
platform and allowed determination of the key
points that occurred during the dive, for example,
time of back foot leaving the force platform. The
times on the video were correlated with those of the
accelerometer data, identifying time to entry, the
point where the stroke was initiated and the time at
15m (where the start officially ends). In addition, the
WSN was used to consider elements such as lap
count, stroke rate, stroke duration in free swimming
and to distinguish the different phases of the turn.
Initially a Butterworth filter was used to
ascertain the lap count of the swimmer. Setting a
low filter frequency achieved this. A comparison of
the raw unfiltered data and the real-time embedded
filtered data on 4 lengths of front crawl stroke can be
seen in Figure 3. The largest peak in the data was
identified as the swimmer’s turn at the wall at the
halfway point. By setting a threshold the filter and
signal processing algorithms were used to pick out
the lap count. For these data the four laps were
identified.
Different filter frequencies were required for the
different swimming strokes. In order to retain the
peaks in the breaststroke and butterfly data a higher
cut off frequency was used. The signal processing
technique used for one length of front crawl can be
seen in Figure 4. It was found that pre processed
data could be analysed to establish timing
information, stroke count, stroke durations, rise
times and fall times. This analysis may then be
collated to give an indication of the swimmers
performance. Four 100m trials have been analysed
A COMPONENT BASED INTEGRATED SYSTEM FOR SIGNAL PROCESSING OF SWIMMING PERFORMANCE
75
Figure 2: Integrated system for starts.
Figure 3: Butterworth filter on 4 lengths of front crawl data.
SIGMAP 2010 - International Conference on Signal Processing and Multimedia Applications
76
Figure 4: Analysis of the front crawl stroke using video and accelerometer data.
to derive all of the discussed parameters, Figure 5.
Automated timing was found to be within 1 second
of hand timing on average. Hand timing is
undesirable since it is subject to human judgement
and variability and cannot be readily scaled to
support the monitoring of multiple swimmers in
training sessions. Average stroke durations gave an
idea of a swimmer’s typical stroke and provided a
measure to determine if they had changed their
technique.
The underwater video camera was used to
chracterise phases of the turn with the accelerometer
data. The x axes represented the forward motion, the
y axis the roll of the swimmer laterally and the z axis
the vertical movement of the swimmer. On the
swimmer’s approach to the wall the acceleration in
the z axis remained fairly constant. When the
swimmer initiated the turn the z axis rotated through
90 degrees, which meant that the x axis experienced
the major gravity component and the z axis tended
towards zero. When the swimmer turned onto their
back the z component experienced a negative
contribution from gravity. As the swimmer turned
back onto their front the z acceleration returned to
fluctuating about 1g. This process can be seen from
the video and accelerometer data in Figure 6.
A comparison of manual and automatic tracking
was carried out to determine the efficiency of the
automated code. The time it took to analyse one
100m IM manually, i.e. to determine lap count,
stroke rate, stroke duration and rise and fall times,
was approximately 45 minutes. An elite swimmer
swims around 4-6km in a two hour session. If each
length was analysed for the parameters discussed it
would take up to 45hours to analyse one swimmer’s
two hour training session! The embedded coding
enabled these same values to be obtained in real-
time throughout the swimmer’s training session.
A COMPONENT BASED INTEGRATED SYSTEM FOR SIGNAL PROCESSING OF SWIMMING PERFORMANCE
77
4 CONCLUSIONS
A multimedia system and signal processing
techniques for monitoring swimmer performance has
been presented in this paper. It provides a significant
advantage over current methods used because it
allows results from multiple components to be
integrated and analysed simultaneously in real-time.
The signal processing techniques used on the
accelerometer offer feedback to swimmers in real-
time and parameters are derived automatically on the
sensor node.
5 FUTURE WORK
An inertial navigation system (INS) will be used in
which measurements from embedded accelerometers
and gyroscopes will be used to track the position and
orientation of a swimmer relative to a known
starting point, orientation and velocity. An INS
comprising of a tri-axis accelerometer and a tri-axis
gyroscope, measuring angular velocity and linear
acceleration respectively, will be attached as a
strapdown system to a swimmer. By processing
signals from these devices it is possible to track the
position and orientation of a device (Woodman,
2007). The output of the gyroscope provides the
attitude of the swimmer. Strapdown navigation
equations will be used to combine the accelerometer
and gyroscope data, compensating for the effect of
gravity on the system. The output will then be
integrated twice (once in order to obtain velocity,
and again in order to obtain position).
The results from the IMU will then be fed into an
extended Kalman filter. The Kalman filter combines
noisy sensor outputs to estimate the state of a system
with uncertain dynamics (Grewal, 2007). The noisy
sensors in this research will be INS accelerometers
and gyroscopes. The system state includes position,
velocity and attitude rate of the swimmer. It also
includes the accelerometer and gyroscope biases and
scale factors. The uncertain dynamics includes
unpredictable disturbances of the swimmer, for
example, waves in the water. A GPS receiver may
be used to calibrate the system initially (before the
swimmer enters the building), increasing the
accuracy of the initial error predictions.
The integrated system will be presented in a
graphical user interface (GUI) thus allowing the
coaches and swimmers to visualise the results with
ease, allowing unique insight into the skill and
performance capabilities of elite swimmers.
REFERENCES
Ang, W., 2004. Physical model of a MEMS accelerometer
for low-g motion tracking applications. Proceedings of
the 2004 IEEE International Conference on Robotics
and Automation. New Orleans, LA.
Arellano, R., et al., 2005. A comparison of CMJ,
simulated and swimming grab-start force recordings
and their relationships with the start performance.
Proceedings of XXI International Society of
Biomechanics in Sport. China
Brown, R., Hwang, P., 1992. Introduction to random
signals and applied Kalman filtering. John Wiley &
Sons, Inc.
Davey, N., 2005. An accelerometer-based system for elite
swimming performance analysis. Proceedings of SPIE
the International Society for Optical Engineering., vol.
5649, no. 1.
Edwards, T., 2005. Effects of aliasing on numerical
integration. Mechanical systems and signal
processing, vol. 21. Elsevier.
Galbraith, H., et al., 2008. Biomechanical comparison of
the track start and the modified one-handed track start
in competitive swimming: an intervention study.
Journal of Applied Biomechanics, vol. 24.
Grewal, M., 2007. Global positioning systems, inertial
navigation, and integration. Hoboken, New Jersey.
John Wiley & Sons, Inc.
Hernandez, W., 2000. Improving the response of an
accelerometer by using optimal filtering. Sensors and
actuators A, vol. 88. Elsevier.
Jo, G., 2004. Underwater navigation system with velocity
measurement by a receding horizon Kalman filter.
Seiken symposium conference 38, vol. 3.
Ketharnavas, N., 2005. Real-time digital signal
processing. Bulington, MA, USA. Elsevier.
Koukoulas, T., 2005. Binary low, high and band pass
amplitude filters will full and quantized phase in the
presence of disjoint noise. Lasers in Engineering. Old
City Publishing Inc, vol. 15.
Maglischo, E., 1993. Swimming even faster. Mountain
View, CA. Mayfield Publishing Company.
Mason, B., et al., 2007. A kinematic analysis and
recommendations for elite swimmers performing the
sprint start. Proceedings of XXV International Society
of Biomechanics in Sport. Brazil.
Ohgi, Y., 2002. Microcomputer-based data logging device
for accelerometry in swimming. Engineering of Sport.,
vol.4.
Quintic Consultancy Ltd. Putting sports science into
practice. Available: http://www.quintic.com
[Accessed: 10
th
October 2009]
Woodman, O., 2007. An introduction to inertial
navigation. Technical Report, no. 696. University of
Cambridge.
A COMPONENT BASED INTEGRATED SYSTEM FOR SIGNAL PROCESSING OF SWIMMING PERFORMANCE
79