Next Article in Journal
Analysis of the Fatigue Crack Propagation Process of the Stress-Absorption Layer of Composite Pavement Based on Reliability
Next Article in Special Issue
Predictive Modeling of VO2max Based on 20 m Shuttle Run Test for Young Healthy People
Previous Article in Journal
Measurement of High Numerical Aperture Cylindrical Surface with Iterative Stitching Algorithm
Previous Article in Special Issue
Functional Data Analysis in Sport Science: Example of Swimmers’ Progression Curves Clustering
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A System for Analysing the Basketball Free Throw Trajectory Based on Particle Swarm Optimization

by
Krzysztof Przednowek
1,
Tomasz Krzeszowski
2,*,
Karolina H. Przednowek
1 and
Pawel Lenik
1
1
Faculty of Physical Education, University of Rzeszow, 35-959 Rzeszow, Poland
2
Faculty of Electrical and Computer Engineering, Rzeszow University of Technology, 35-959 Rzeszow, Poland
*
Author to whom correspondence should be addressed.
Appl. Sci. 2018, 8(11), 2090; https://doi.org/10.3390/app8112090
Submission received: 6 October 2018 / Revised: 24 October 2018 / Accepted: 25 October 2018 / Published: 29 October 2018
(This article belongs to the Special Issue Computer Science in Sport)

Abstract

:
This paper describes a system for the automatic detection and tracking of a ball trajectory during a free throw. The tracking method is based on a particle swarm optimization (PSO) algorithm. The proposed method allows for the measurement of selected parameters of a basketball free throw trajectory. Ten parameters (four distances, three velocities, and three angle parameters) were taken into account. The research material included 200 sequences captured by a 100 Hz monocular camera. The study was based on a group of 30 basketball players who played in the Polish Second Division during the 2015/2016 season and the Youth Polish National Team in 2017. The experimental results showed the differences between the parameters in both missed and hit throws. The proposed system may be used in the training process as a tool to improve the technique of the free throw in basketball.

1. Introduction

An important issue in sport is to analyse the factors that influence the achievement of the best sports results. In every sports discipline, there are elements whose performance has a direct impact on the final outcome. One such element in basketball includes the free throw which is very crucial in this kind of sport; therefore, it is essential to go through a scientific analysis to improve the free throw skills and hit rate of basketball players [1]. A free throw is a special component of the technical preparation of every player, which is based on automatic movement. It is always performed in the same way (with a suitable rhythm and speed).
A substantial body of research into the different aspects of basketball has been carried out to date [2,3,4,5,6]. These studies include research into the ways to improve a free throw. One example is the research conducted by Englert et al. [7] in which the scientists rated the levels of concentration of the player throwing free throws. In other studies, Hamilton and Reinschmidt [8] analysed the speed of the ball, the throw angle and the impact of those components on the effectiveness of a free throw. Button et al. [9], however, have evaluated the posture of a player during a free throw. Another paper [6] describes the analysis of selected kinematic parameters of free throws performed during the learning process, and identifies which one has the greater impact on the effectiveness of the throws. They used a 200 Hz camera and SIMI-Motion software (Simi Reality Motion Systems GmbH, Unterschleissheim, Germany). Gablonsky and Lang [3] presented a mathematical model of the free throw, which involves the initial angle, velocity and trajectory of the ball. This research has been explored further by Murphy [10]. The author focused on finding the best values for the parameters of a free throw. The player’s body height, and the angle and speed of the ball were all taken into consideration. A similar problem was considered by Tran and Silverberg [11], who analysed the initial angle, speed, rotation and height of the ball’s flight. An analysis presented by them showed that the angle of the ball during the throw should be about 52 , which allows for an effectiveness level of 70%.
The quality of the technical elements is based on the precision of the movements. It is really difficult to rate because it is only a visual observation. For this reason, every year, we have many new studies concerning the automatic and semi-automatic analyses of movement in sport [4,12,13,14,15,16,17]. For example, Rahma et al. [13] have developed a system to automatically analyse a basketball player’s free throw using recorded video sequences. The system detects the player and then the main shooting positions. Barros et al. [18] have proposed an algorithm for measuring the movements of handball players. The method they proposed was able to correctly determine the movements of 84% of players when applied to the second period of the same game used for training, and 74% when applied to a different game. The research by Perše et al. [5], which provided a system to detect the basic technical elements during a basketball game, is also noteworthy. This system showed the trajectory of the players’ moves in both defence and offence. Another study proposed the motion tracking of a tennis racket using a monocular camera and the markerless technique [17], whereas the work by Sheets et al. [19] makes use of a markerless motion capture system to test for kinematic differences in the lower back, shoulder, elbow, wrist, and racket between the flat, kick, and slice serves. In the study, seven male NCAA Division 1 players were tested on an outdoor court in daylight conditions. Video analysis was also used by Chen et al. [20], who presented a method based on observing the typical moves of individual players. The system automatically detects if the team are playing rather defensively or offensively.
One of the basic problems with computer vision is the detection and tracking of objects [21]. The methods used for their tracking are applied in various fields, including the army, industry, medicine, and robotics [22]. It is very difficult to track moving objects in real time, e.g., a ball in sports games [21,23,24,25,26]. However, at present, this problem is an important component of sports analysis because the information about the position of the ball and its velocity may be obtained [26]. Difficulties in tracking the ball appear in team games because the ball is often obscured by the players. This issue was dealt with in a study by Wang et al. [27]. The authors suggested an innovative approach to the subject by defining tracking in terms of deciding which player is in possession of the ball at any given time. Kurano et al. [25] described a method of automatic ball trajectory extraction in American football. They focused on ball holder prediction and constructed a play search and 3D virtual display system using information concerning the ball trajectory and the Unity development environment. Another solution was suggested by Wang et al. [28]. To track a tennis ball, they developed a multi-view ball tracking method by particle filter. Cheng et al. also dealt with the tracking of the position of the ball in sport [29]. The model proposed by them for tracking the ball in volleyball was based on the ball size adaptive (BSA) tracking window, a ball feature likelihood model and an anti-occlusion likelihood measurement (AOLM) based on a Particle Filter for improving accuracy.
The devices that may be used to correct various technical elements should also be mentioned. One example is the ShotLoc system [30] (Hoops Innovation Ltd. LCC, Canada), whose task is to optimize the position of the player’s hand on the ball during a free throw. Noah Shooting System [31] (NOAH Basketball, Athens, Alabama, USA) is a real time system that gives players immediate information on the angle of the ball flight and the distance of the ball to the basket ring. It is used to improve effectiveness and build muscle memory.
The main objective of this study is to develop a system for the measurement and analysis of selected parameters of a basketball free throw trajectory. The system is based on a particle swarm optimization (PSO) algorithm and utilised video data captured by a monocular camera. The main contribution of this work is to develop methods of ball detection, tracking and recovery after tracking failure and also to analyse the obtained parameters. The PSO algorithm has been used to track the ball. For automatic ball detection and redetection, the circularity factor and the size of segmented objects are taken into account. The estimated trajectory of the ball is used for parameter calculation. In this paper, the statistical analysis of both missed and hit throws is conducted. The analysis performed takes into account the differences in the heights of the basketball players. Graphs of dependence between the most important parameters were also determined.
The paper is an extension of a conference paper [15]. In relation to the aforementioned paper, the developed system has been significantly improved (automatic redetection of the lost ball has been added). In addition, the tracking algorithm has been thoroughly tested, and the results obtained have been compared with the results of the particle filter method. The part of the paper regarding parameter analysis has also been significantly developed.

2. Material and Methods

2.1. Particle Swarm Optimization

In the ball tracking process, a particle swarm optimization algorithm (PSO) [32,33], was used. Its usefulness in solving problems related to object tracking has been repeatedly confirmed [22,34,35,36,37,38]. PSO is a stochastic optimization technique which operates on a vector of real-value data. In that algorithm, the particle swarm is used in order to find the best solution. Each of the particles in the swarm represents a hypothetical (a candidate) solution to the problem. During an iterative process, particles explore the search space effectively by exchanging a limited amount of information. Each i-th particle contains the current position x i , velocity v i , and its best position pbest i . Moreover, the particles have access to the best global position gbest , which has been found by the swarm. The d-th components of the velocity and position of each particle are updated using the following equations:
v i , d k + 1 = χ [ v i , d k + c 1 r 1 , d ( p b e s t i , d x i , d k ) + c 2 r 2 , d ( g b e s t d x i , d k ) ] ,
x i , d k + 1 = x i , d k + v i , d k + 1 ,
where c 1 , c 2 are positive constants equal to 2.05 , r 1 , d , r 2 , d are taken from a uniform distribution in [ 0 , 1 ] and χ is a constriction factor, which is given by the following equation [33]:
χ = 2 | 2 φ φ 2 4 φ | ,
where φ = c 1 + c 2 and φ > 4 .
The selection of the best position for the i-th particle ( pbest i ) and the best global position ( gbest ) are based on the fitness function value f ( · ) , which will be discussed later. The PSO algorithm in our paper solves the minimization problems, which may be expressed as follows [32]:
Algorithm 1: PSO algorithm
  For each particle i
      Initialize x i 0 , v i 0
       pbest i = x i 0
   gbest = arg min x i 0 f ( x i 0 )
  For k = 1 , 2 , , K
      For each particle i
           v i k + 1 = ω [ v i k + c 1 r 1 ( pbest i x i k ) + c 2 r 2 ( gbest x i k ) ]
           x i k + 1 = x i k + v i k + 1
          If f ( x i k + 1 ) < f ( pbest i ) than pbest i = x i k + 1
          If f ( x i k + 1 ) < f ( gbest ) than gbest = x i k + 1

2.2. Camera Calibration

In order to obtain distance parameters from the image, it is necessary to determine the transition from the two-dimensional image space to the three-dimensional space, which allows for the determination of the distance between the objects in the image. In order to maximally simplify the system initialization, a simplified calibration procedure was used. This procedure is based on the distance between the characteristic objects (landmarks) on the scene (the basketball court), such as lines, the intersection of lines, basket, etc. It was assumed that the ball moves perpendicular to the camera, the distance of the ball from the camera during the flight to the basket does not change and the distortions of the camera are negligible. The calibration procedure is limited to the selection of two landmarks on the stage, which is at the same distance from the camera as the ball and giving the distance between them in the image in pixels and the real distance in meters. Given the distance between landmarks in the image, the corresponding distance in the real world and the ball position on the image, the distance parameters of the ball may be estimated. In the presented study, the distance between the free throw line ( L 1 on Figure 1) and the line defining the end of basketball court ( L 2 on Figure 1) was used.

2.3. Basketball Detection

An important part of the system developed to obtain the trajectory of a basketball free throw is the detection of the ball. This ball detection method enables automatic tracking initialization and redetection in case of a tracking failure. To extract the moving objects, the background subtraction algorithm developed by Zivkovic and van der Heijden [39] as well as morphological methods [40] were used. After extraction for each object, two conditions are checked; if both are true, the object is classified as a ball. The first condition concerns the size of the object and is determined by comparing the radius of the enclosing circle of the object with the radius of the ball. The first condition has the form:
r o r b < m ,
where r o is the radius of the enclosing circle of the considered object, r b is the radius of the ball and m is the margin factor, whose value was set at 22 % of r b . The parameter r b is set during calibration; we assume that the change in the size of the ball during flight is negligible. The second condition uses the circularity factor f c = 4 π A P 2 [41], where A is the area of the object and P is the perimeter of the object. The value of f c for a perfectly round object is equal to 1. The second condition is described by the formula:
T c < f c ,
where T c is the circle threshold equal to 0.78 . The values of m and T c have been determined experimentally. If both conditions are true, it means that the object under consideration is a ball and the tracking process can be started. Additionally, in order to minimize the risk of false detections, all of the objects in the image in front of the free-throw line and simultaneously below the chest of the reference player (player with a height corresponding to the average height of all competitors) are removed.

2.4. Ball Tracking

The proposed method of tracking is a 2D method; its result is the position of the ball in the image in the form of pixel coordinates. In our application, the position of the i-th particle represents the hypothetical position of a ball and the fitness function determines whether a considered part of the image contains the tracked object or not. This function is defined as the ratio of the number of pixels in the extracted objects that are located within the circle defined by the ball position and radius r b to the number of pixels that are outside the circle.
The block diagram of the ball detection and tracking algorithm is shown in Figure 2. At the beginning, the value of the boolean variable i s _ d e t e c t e d , which determines if the ball is detected; it is set to FALSE (see block 1 in Figure 2). Next, a new image frame is loaded (block 2) and it is determined whether or not the ball position from the previous frame is known (block 3), if not, the ball detection procedure is started (block 4, see Section 2.3). If the position of the ball in the previous frame is known, then the PSO algorithm is initialized from it (block 6). In the next steps (blocks 7, 8, 9, 10), the algorithm tries to find the current position of the ball. In block 11, the algorithm checks whether the current position of the ball has been determined. If so, the value of the best particle gbest is assigned to the variable ball _ pos . Otherwise, the variable i s _ d e t e c t e d is set to FALSE. The algorithm ends when there are no more frames available for processing (block 14).

2.5. Parameter Calculations

The parameters of the free throw (see Figure 3) may be calculated using the estimated trajectory. The analysis included ten parameters at three points of the throw. The measured parameters were: velocities in three points ( v 1 , v 2 , v 3 ), angles of the moving ball ( α 1 , α 2 , α 3 ), height parameters ( h 1 , h 2 ) and a distance parameters ( l 1 , l 2 ). It should be noted that the value of parameter h 1 is also closely related to the player’s height, in addition to the player’s technique. A description of the specified parameters is shown in Figure 3. The procedure for calculating the parameters from a 2D ball trajectory is listed below:
  • Calculate the 2D coordinates of the ball trajectory using the PSO algorithm.
  • Smooth the trajectory using the moving average filter (window = 5),
  • Determination of auxiliary points ( P 1 —point when the ball leaves player’s hands, P 2 —the highest point of the ball trajectory and P 3 —point when the ball makes contact for the first time with the rim line or with the basket board) (Figure 3). Points P 1 and P 3 determine the range of the analysed trajectory.
  • Calculation of altitude and distance parameters on the basis of determined points.
  • Determination of auxiliary vectors anchored in the analysed points to determine angular parameters.
  • The angular parameters are calculated from the formula:
    α = cos 1 ( v · h v · h ) · 180 π ,
    where: α is the calculated angle (degrees), v —vertical vector, h —horizontal vector, v is the Euclidean norm of vector v and h is the Euclidean norm of vector h .
  • Conduct a statistical analysis including basic statistical measures, a test of the significance of differences between hit and missed throws, and an analysis of the relationship between the α 1 and v 1 parameters.

2.6. Data Collection

The study was conducted on a group of basketball players who played in the Polish Second Division during the 2015/2016 season and the Youth Polish National Team in 2017. The analysed group consisted of 30 males aged 18.8 ± 2.3. The players were described by the following parameters: body height 188.0 ± 8.7 cm, body mass 80.4 ± 9.2 kg, and BMI 22.7 ± 1.5. Throughout the research, the sequence of a free throw under regulation conditions was captured. In the analysis, 200 throws were used. The sequences were captured by a monocular 100 Hz Basler Ace acA645-100gc camera (Basler AG, Ahrensburg Germany). The camera was placed 4.6 m from the predicted trajectory of the ball and perpendicular to it. It should be noted that the ideal perpendicular positioning is very difficult to implement under experimental conditions.

3. Results

3.1. Algorithm Evaluation

The system developed for ball tracking was evaluated in 20 video sequences of the basketball free throw. The quality of tracking was determined by analyses carried out through qualitative visual evaluations as well as quantitatively through the use of manually obtained ground truth data. In Figure 4, Figure 5 and Figure 6 the ball tracking results for selected players are presented. In Figure 4 and Figure 5, the ball went into the basket. However, Figure 6 shows a missed shot. It may be observed that the proposed method for tracking the ball has very high levels of accuracy. However, in some situations, tracking errors may occur due to imperfections in the computer vision methods for extracting objects in the scene. For example, in sequence s1 (see Figure 4), the ball was detected later than in the case of other sequences, which resulted in the tracking starting with a delay (see Figure 4, frame #130). Another example may be seen in frame #148 in Figure 4 where the tracking inaccuracies caused by changes in the lighting level on stage may be observed. This change in lighting was caused by the light source being obscured by the ball.
Table 1 presents the Root Mean Square Error (RMSE) for results obtained by PSO and a particle filter (PF) algorithm, which is commonly used for object tracking [21,23,28,29]. The RMSE error for one sequences has the form:
R M S E N = 1 F i = 1 F ( x i x i G T ) 2 + ( y i y i G T ) 2 ,
R M S E = 1 N j = 1 N R M S E j ,
where: N—is the total number of sequences, F—is the total number of frames, x i , y i —are the estimated coordinates of the ball, x i G T , y i G T —the manual settings (ground truth) coordinates of the ball.
The ground truth data were obtained by manually pointing out the positions of the ball on the image sequences. For each algorithm, errors were determined for the 5 configurations selected so that for both algorithms the number of calls of the objective function was the same. For most configurations, the PSO algorithm produced much better results, with the exception of the configuration with the smallest number of particles. In addition, Table 2 contains a number of incidents in which the tracking failed, and redetection was necessary. The best result (RMSE = 5.82 pixels) was obtained for the configuration of 50 particles and 10 iterations of the PSO algorithm.
Figure 7 presents the determined trajectory of the ball in selected sequences. The trajectories were filtered using the moving average filter (window = 5). In the initial phase of tracking, the errors caused by the change in lighting conditions, mentioned earlier, may be observed (see Figure 7, sequence s1) However, it should be noted that these errors can be eliminated by carrying out additional analyses of the ball trajectory.

3.2. Using in Practice

Table 2 shows the basic statistics of the analysed parameters ( x ¯ —mean, s d —standard deviation, d—difference between the mean values of the missed and hit throws). The table presents data for all athletes grouped by body height. The parameters were calculated from 200 sequences including 155 hit and 45 missed throws. Additionally, to specify the statistical significance of the difference between hit and missed throws the t-Student’s test was used (p).
In the case of the parameter h 1 , measured from the lowest point of the altitude of the ball relative to the basket height, it may be observed that players who throw the ball into the basket reached the lower value of this parameter of 542 mm. The differences between hit and missed throws for this parameter had a statistical significance ( p < 0.001 ). This parameter reached the highest value among the shortest competitors (body height 171–180 cm; 695 cm for hit and 946 for missed throws). An analysis of the data showed that the maximum altitude of the ball for all participants ( h 2 ) in hit and missed throws were at the same level (approximately 3900 mm). In addition, in the body height groups, there were no significant differences in h 2 between hit and missed throws. The distance analysis of the first part of the ball trajectory l 1 (measured from P 1 to P 2 —see Figure 3), showed that this parameter was higher for hit throws (2198 mm), but the difference was relatively small ( 13.3 mm). Considering the length l 2 (measured from P 2 to P 3 ), it may be seen that the hit throws had a longer distance (1648 mm) than the missed throws (1549 m). From analysing the values of l 2 for individual height groups, it is noteworthy that, in each case, the value is higher for hit throws. Differences in the l 2 parameters are statistically significant ( p < 0.001 ). The values of the initial angle α 1 for most players who throw the ball into the basket reaches 50.0 . Since, according to earlier studies [42,43], the initial angle of the ball should be about 52 , it may be assumed that in such a case we are dealing with a correct throw. In missed throws, this parameter was at the level of 48.9 . The analysis conducted also showed that the lowest α 1 in hit throws occurred for athletes with a body height in the range of 191–200 cm, while the largest angle ( 55.8 ) during the throw was obtained by athletes belonging to a group of people with a body height of 181–190 cm. In the case of missed throws, this parameter was placed at the lowest level ( 46.2 ) among the tallest athletes. Another analysed parameter is the angle α 2 (the angle of ball trajectory at the highest point of the trajectory). The angle α 2 measured during hit throws assumes similar values for each research group with a slight advantage among athletes whose body height is between 191–200 cm. Analysing α 2 for a missed throw shows that the situation is different. In the group of the shortest athletes, this angle assumes the lowest value at the level of 8.8 , and, among the tallest athletes, it reaches the highest value ( 12.1 ). For the whole group parameter, α 2 was slightly higher for hit throws ( α 2 = 11.2 , p < 0.05 ). In the case of the angle α 3 , the values of this parameter are larger in the hit throws than in the missed throws ( p < 0.001 ). However, we should pay attention to players with a body height of 191–200 cm. This group produced the lowest α 3 values during hits ( 44.5 ) and missed ( 38.3 ) throws. The last considered parameters are the throw velocities. According to Hamilton and Reinschmidt [8], the optimum speed v 1 , which is achieved when the ball is thrown, is approximately 7.3 m/s. By analysing v 1 , without dividing the height of bodies, for hit and missed throws, it is shown that the velocity assumes similar values ( 5.5 for hit and 5.6 m/s for missed throws). The lowest velocity v 1 in hit throws are produced by the tallest athletes ( 5.3 m/s). In the case of missed throws, the highest value ( 5.7 m/s) of the ball occurs during the throws by almost the tallest athletes (191–200 cm). The conducted analysis also indicated that, regardless of the height of the athlete’s body, for parameters v 2 and v 3 , there were no significant differences in the values of these variables.
According to Ref. [44], we also present the relationship between α 1 and v 1 for all competitors and for individual body height groups as shown in Figure 8. The blue dotted lines present the typical values for the analysed groups. For example, players with a body height of 181 cm to 190 cm should make a throw at 5.6 m/s and at an angle of about 56 . The size of the ellipse surrounding the points represents the dispersion of the results (blue for hit throws, red for missed throws). On the basis of Figure 8, it may be observed that, for all participants, the dispersion of missed throws is significantly larger than the dispersion of hit throws. By analysing the studied dependencies in individual groups, it may be concluded that, among smaller players (171–180 cm and 181–190 cm), missed throws are characterized by a greater dispersion in terms of the parameters v 1 and α 1 . Among the tallest players, hit throws are characterized by a higher dispersion value.

4. Conclusions

The paper presents a system for ball detection, tracking and trajectory analysis during a basketball free throw. The experimental results were based on 200 sequences of 30 basketball players. The values of 10 parameters were measured. The results showed the differences between the parameters in missed and correct throws. The analysis showed that significant differences between missed and hit free throws were observed for parameters h 1 , l 2 , α 2 and α 3 . Additionally, an analysis of the relationship between body height and the parameters of the trajectory was calculated.
The proposed method of analysing ball trajectory in free throws may be used in practice by coaches in the training process as a tool to improve the execution of free throws. Coaches using this system will be able to monitor the trajectory of the ball and the parameters of the free throw, which will help to improve the correct motor habit. He can also eliminate some of the technical mistakes of players performing a free throw. On the basis of α 1 and v 1 , among other factors, the coach could adjust the player’s body posture (i.e., upper limb positions). They could also pay attention to the initial velocity of the ball—the player may make a throw with more or less strength, which will change the speed of the ball. A basketball coach was consulted concerning the whole idea of the system.
Future work will focus on improving the proposed system and developing an expert system that would allow for the automatic evaluation of performed free throws.

Author Contributions

Conceptualization, K.P., T.K. and P.L.; Formal analysis, K.P. and K.H.P.; Investigation, K.P., T.K., K.H.P. and P.L.; Methodology, K.P. and T.K.; Software, T.K.; Validation, K.P., T.K. and K.H.P.; Visualization, K.P., T.K. and K.H.P.; Writing—Original Draft, K.P., T.K. and P.L.; Writing—Review and Editing, K.P., T.K., K.H.P. and P.L.

Funding

This research was partially funded by the Polish Ministry of Science and Higher Education under grant number DS/M.EA.18.002.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Yang, X. Research on free throw shooting skills in basketball games. BioTechnol. Indian J. 2014, 10, 11800–11805. [Google Scholar]
  2. Gómez, M.Á.; Lorenzo, A.; Jiménez, S.; Navarro, R.M.; Sampaio, J. Examining choking in basketball: Effects of game outcome and situational variables during last 5 minutes and overtimes. Percept. Mot. Skills 2015, 120, 111–124. [Google Scholar] [CrossRef] [PubMed]
  3. Gablonsky, J.M.; Lang, A.S. Modeling basketball free throws. SIAM Rev. 2005, 47, 775–798. [Google Scholar] [CrossRef]
  4. Liu, Y.; Huang, C.; Liu, X. A New method to classify shots in basketball video. In Proceedings of the Second International Symposium on Networking and Network Security (ISNNS ’10), Minneapolis, MN, USA, 20–22 August 2010; pp. 153–156. [Google Scholar]
  5. Perše, M.; Kristan, M.; Kovačič, S.; Vučkovič, G.; Perš, J. A trajectory-based analysis of coordinated team activity in a basketball game. Comput. Vis. Image Underst. 2009, 113, 612–621. [Google Scholar] [CrossRef]
  6. Ammar, A.; Chtourou, H.; Abdelkarim, O.; Parish, A.; Hoekelmann, A. Free throw shot in basketball: Kinematic analysis of scored and missed shots during the learning process. Sport Sci. Health 2016, 12, 27–33. [Google Scholar] [CrossRef]
  7. Englert, C.; Bertrams, A.; Furley, P.; Oudejans, R.R. Is ego depletion associated with increased distractibility? Results from a basketball free throw task. Psychol. Sport Exerc. 2015, 18, 26–31. [Google Scholar] [CrossRef]
  8. Hamilton, G.R.; Reinschmidt, C. Optimal trajectory for the basketball free throw. J. Sports Sci. 1997, 15, 491–504. [Google Scholar] [CrossRef] [PubMed]
  9. Button, C.; Macleod, M.; Sanders, R.; Coleman, S. Examining movement variability in the basketball free-throw action at different skill levels. Res. Q. Exerc. Sport 2003, 74, 257–269. [Google Scholar] [CrossRef] [PubMed]
  10. Murphy, L. Modeling baskestball free throws. In Proceedings of the 17th Annual Statewide Undergraduate Research Conference, Amherst, MA, USA, 22 April 2012. [Google Scholar]
  11. Tran, C.M.; Silverberg, L.M. Optimal release conditions for the free throw in men’s basketball. J. Sports Sci. 2008, 26, 1147–1155. [Google Scholar] [CrossRef] [PubMed]
  12. Xu, P.; Xie, L.; Chang, S.F.; Divakaran, A.; Vetro, A.; Sun, H. Algorithms and system for segmentation and structure analysis in soccer video. In Proceedings of the International Conference on Multimedia and Expo 2001 (ICME 2001), Tokyo, Japan, 22–25 August 2001; pp. 928–931. [Google Scholar] [CrossRef]
  13. Rahma, A.M.S.; Rahma, M.A.; Rahma, M.A. Automated analysis for basketball free throw. In Proceedings of the Seventh International Conference on Intelligent Computing and Information Systems, Penang, Malaysia, 12–14 December 2015; pp. 447–453. [Google Scholar]
  14. Panagiotakis, C.; Grinias, I.; Tziritas, G. Automatic human motion analysis and action recognition in athletics videos. In Proceedings of the 14th European Signal Processing Conference, Florence, Italy, 4–8 September 2006. [Google Scholar]
  15. Lenik, P.; Krzeszowski, T.; Przednowek, K.; Lenik, J. The analysis of basketball free throw trajectory using PSO algorithm. In Proceedings of the 3rd International Congress on Sport Sciences Research and Technology Support, Lisbon, Portugal, 15–17 November 2015; pp. 250–256. [Google Scholar]
  16. Ramasso, E.; Panagiotakis, C.; Rombaut, M.; Pellerin, D.; Tziritas, G. Human shape-motion analysis in athletics videos for coarse to fine action/activity recognition using transferable belief model. Electron. Lett. Comput. Vis. Image Anal. 2009, 7, 32–50. [Google Scholar] [CrossRef]
  17. Elliott, N.; Choppin, S.; Goodwill, S.R.; Allen, T. Markerless tracking of tennis racket motion using a camera. Procedia Eng. 2014, 72, 344–349. [Google Scholar] [CrossRef]
  18. Barros, R.M.; Menezes, R.P.; Russomanno, T.G.; Misuta, M.S.; Brandão, B.C.; Figueroa, P.J.; Leite, N.J.; Goldenstein, S.K. Measuring handball players trajectories using an automatically trained boosting algorithm. Comput. Methods Biomech. Biomed. Eng. 2010, 14, 53–63. [Google Scholar] [CrossRef] [PubMed]
  19. Sheets, A.L.; Abrams, G.D.; Corazza, S.; Safran, M.R.; Andriacchi, T.P. Kinematics differences between the flat, kick, and slice serves measured using a markerless motion mapture method. Ann. Biomed. Eng. 2011, 39, 3011–3020. [Google Scholar] [CrossRef] [PubMed]
  20. Chen, H.T.; Chou, C.L.; Fu, T.S.; Lee, S.Y.; Lin, B.S.P. Recognizing tactic patterns in broadcast basketball video using player trajectory. J. Vis. Commun. Image Represent. 2012, 23, 932–947. [Google Scholar] [CrossRef]
  21. Gomez, G.; López, P.H.; Link, D.; Eskofier, B. Tracking of ball and players in beach volleyball videos. PLoS ONE 2014, 9, e111730. [Google Scholar] [CrossRef] [PubMed]
  22. Tawab, A.M.A.; Abdelhalim, M.; Habib, S.D. Efficient multi-feature PSO for fast gray level object-tracking. Appl. Soft Comput. 2014, 14, 317–337. [Google Scholar] [CrossRef]
  23. Nummiaro, K.; Koller-Meier, E.; Gool, L.V. An adaptive color-based particle filter. Image Vis. Comput. 2003, 21, 99–110. [Google Scholar] [CrossRef] [Green Version]
  24. Chen, H.T.; Tsai, W.J.; Lee, S.Y.; Yu, J.Y. Ball tracking and 3D trajectory approximation with applications to tactics analysis from single-camera volleyball sequences. Multimed. Tools Appl. 2012, 60, 641–667. [Google Scholar] [CrossRef]
  25. Kurano, J.; Hayashi, M.; Yamamoto, T.; Kataoka, H.; Tanabiki, M.; Furuyama, J.; Aoki, Y. Ball trajectory extraction in team sports videos by focusing on ball holder candidates for a play search and 3D virtual display system. J. Signal Process. 2015, 19, 147–150. [Google Scholar] [CrossRef]
  26. Hou, Y.; Cheng, X.; Ikenaga, T. Real-time 3D ball tracking with CPU-GPU acceleration using particle filter with multi-command queues and stepped parallelism iteration. In Proceedings of the 2nd International Conference on Multimedia and Image Processing (ICMIP), Wuhan, China, 17–19 March 2017; pp. 235–239. [Google Scholar]
  27. Wang, X.; Ablavsky, V.; Shitrit, H.B.; Fua, P. Take your eyes off the ball: Improving ball-tracking by focusing on team play. Comput. Vis. Image Underst. 2014, 119, 102–115. [Google Scholar] [CrossRef] [Green Version]
  28. Wang, Y.; Cheng, X.; Ikoma, N.; Honda, M.; Ikenaga, T. Motion prejudgment dependent mixture system noise in system model for tennis ball 3D position tracking by particle filter. In Proceedings of the Joint 8th International Conference on Soft Computing and Intelligent Systems (SCIS) and 17th International Symposium on Advanced Intelligent Systems (ISIS), Sapporo, Japan, 25–28 August 2016; pp. 124–129. [Google Scholar]
  29. Cheng, X.; Zhuang, X.; Wang, Y.; Honda, M.; Ikenaga, T. Particle filter with ball size adaptive tracking window and ball feature likelihood model for ball’s 3D position tracking in volleyball analysis. In Advances in Multimedia Information Processing—PCM 2015; Ho, Y.S., Sang, J., Ro, Y.M., Kim, J., Wu, F., Eds.; Springer International Publishing: Cham, The Netherlands, 2015; pp. 203–211. [Google Scholar]
  30. Alexander, M.J.; Hayward-Ellis, J. The effectiveness of the shotloc training tool on basketball free throw performance and technique. Int. J. Kinesiol. Sports Sci. 2016, 4, 43–54. [Google Scholar]
  31. Marty, A.; McGhee, R.; Edwards, T. Trajectory Detection and Feedback System. U.S. Patent 11/508,004, 16 January 2007. [Google Scholar]
  32. Kennedy, J.; Eberhart, R. Particle swarm optimization. In Proceedings of the International Conference on Neural Networks, Perth, Western Australia, 27 November–1 December 1995; IEEE Press: Piscataway, NJ, USA, 1995; Volume 4, pp. 1942–1948. [Google Scholar]
  33. Eberhart, R.C.; Shi, Y. Comparing inertia weights and constriction factors in particle swarm optimization. In Proceedings of the Congress on Evolutionary Computation, La Jolla, CA, USA, 16–19 July 2000; Volume 1, pp. 84–88. [Google Scholar] [CrossRef]
  34. Kwolek, B. Object tracking via multi-region covariance and particle swarm optimization. In Proceedings of the 11th IEEE International Conference on Advanced Video and Signal Based Surveillance (AVSS), Washington, DC, USA, 2–4 September 2009; pp. 418–423. [Google Scholar] [CrossRef]
  35. Mussi, L.; Ivekovic, S.; Cagnoni, S. Markerless articulated human body tracking from multi-view video with GPU-PSO. In Evolvable Systems: From Biology to Hardware; Tempesti, G., Tyrrell, A.M., Miller, J.F., Eds.; Springer: Berlin/Heidelberg, Germany, 2010; pp. 97–108. [Google Scholar]
  36. John, V.; Trucco, E.; Ivekovic, S. Markerless human articulated tracking using hierarchical particle swarm optimisation. Image Vis. Comput. 2010, 28, 1530–1547. [Google Scholar] [CrossRef]
  37. Kwolek, B.; Krzeszowski, T.; Gagalowicz, A.; Wojciechowski, K.; Josinski, H. Real-time multi-view human motion tracking using particle swarm optimization with resampling. In Articulated Motion and Deformable Objects; Lecture Notes in Computer Science; Perales, F., Fisher, R., Moeslund, T., Eds.; Springer: Berlin/Heidelberg, Germany, 2012; Volume 7378, pp. 92–101. [Google Scholar] [CrossRef]
  38. Michel, D.; Panagiotakis, C.; Argyros, A.A. Tracking the articulated motion of the human body with two RGBD cameras. Mach. Vis. Appl. 2015, 26, 41–54. [Google Scholar] [CrossRef]
  39. Zivkovic, Z.; van der Heijden, F. Efficient adaptive density estimation per image pixel for the task of background subtraction. Pattern Recogn. Lett. 2006, 27, 773–780. [Google Scholar] [CrossRef]
  40. Haralick, R.M.; Sternberg, S.R.; Zhuang, X. Image analysis using mathematical morphology. IEEE Trans. Pattern Anal. Mach. Intell. 1987, 9, 532–550. [Google Scholar] [CrossRef] [PubMed]
  41. Ritter, N.; Cooper, J. New resolution independent measures of circularity. J. Math. Imaging Vis. 2009, 35, 117–127. [Google Scholar] [CrossRef]
  42. Hudson, J.L. A biomechanical analysis by skill level of free throw shooting in basketball. Biomech. Sports 1982, 1, 95–102. [Google Scholar]
  43. Chen, H.T.; Tien, M.C.; Chen, Y.W.; Tsai, W.J.; Lee, S.Y. Physics-based ball tracking and 3D trajectory reconstruction with applications to shooting location estimation in basketball video. J. Vis. Commun. Image Represent. 2009, 20, 204–216. [Google Scholar] [CrossRef]
  44. Inaba, Y.; Hakamada, N.; Murata, M. Influence of selection of release angle and speed on success rates of jump shots in basketball. In Proceedings of the 5th International Congress on Sport Sciences Research and Technology Support, Funchal, Madeira, Portugal, 30–31 October 2017; pp. 48–55. [Google Scholar] [CrossRef]
Figure 1. Block diagram of the ball detection and tracking algorithm.
Figure 1. Block diagram of the ball detection and tracking algorithm.
Applsci 08 02090 g001
Figure 2. Block diagram of the ball detection and tracking algorithm.
Figure 2. Block diagram of the ball detection and tracking algorithm.
Applsci 08 02090 g002
Figure 3. Analysed parameters of a basket throw; h 1 [m]—height between ball and basket, h 2 [m]—height of ball parabola, l 1 [m]—distance between 1st and 2nd point, l 2 [m]—distance between 2nd and 3rd point, v 1 [m/s]—velocity of ball in 1st point, v 2 [m/s]—velocity of ball in 2nd point, v 3 [m/s]—velocity of ball in 3rd point, α 1 [ ] —angle of ball in 1st point, α 2 [ ] —angle of ball in 2nd point, α 3 [ ] —angle of ball in 3rd point.
Figure 3. Analysed parameters of a basket throw; h 1 [m]—height between ball and basket, h 2 [m]—height of ball parabola, l 1 [m]—distance between 1st and 2nd point, l 2 [m]—distance between 2nd and 3rd point, v 1 [m/s]—velocity of ball in 1st point, v 2 [m/s]—velocity of ball in 2nd point, v 3 [m/s]—velocity of ball in 3rd point, α 1 [ ] —angle of ball in 1st point, α 2 [ ] —angle of ball in 2nd point, α 3 [ ] —angle of ball in 3rd point.
Applsci 08 02090 g003
Figure 4. Ball tracking in selected frames of sequence s1.
Figure 4. Ball tracking in selected frames of sequence s1.
Applsci 08 02090 g004
Figure 5. Ball tracking in selected frames of sequence s11.
Figure 5. Ball tracking in selected frames of sequence s11.
Applsci 08 02090 g005
Figure 6. Ball tracking in selected frames of sequence s148.
Figure 6. Ball tracking in selected frames of sequence s148.
Applsci 08 02090 g006
Figure 7. Ball trajectory for selected sequences.
Figure 7. Ball trajectory for selected sequences.
Applsci 08 02090 g007
Figure 8. Relationships between α 1 and v 1 parameters.
Figure 8. Relationships between α 1 and v 1 parameters.
Applsci 08 02090 g008
Table 1. Errors for compared methods.
Table 1. Errors for compared methods.
Method PF PSO
Particles50100200300500510203050
Iterations1010101010
RMSE [pixels]9.898.068.208.8010.7110.947.225.915.935.82
Tracking failure [number of incidents]418131300000
Table 2. Estimated parameters of the free throw trajectory.
Table 2. Estimated parameters of the free throw trajectory.
Param.ThrowsBody Height of AthletesAll Athletes
171–180 cm181–190 cm191–200 cm201–210 cm
x ¯ s d x ¯ s d x ¯ s d x ¯ s d x ¯ s d dp
h 1 hit695214678219463237345141542251
missed946156732271694292491138723277−181.60.0001
h 2 hit3861147390274393918639151213909139
missed390910039031203926243382411739061843.00.9004
l 1 hit23071932187132222413320931352198159
missed2311133220516521391742137135218517013.30.6061
l 2 hit16141211629152165021516961431648168
missed155562155214415531491518821549129980.0001
α 1 hit48.87.355.813.746.99.147.49.950.011.2
missed50.74.651.513.147.29.846.211.248.910.31.20.5070
α 2 hit10.72.011.02.211.93.710.72.011.22.7
missed8.82.610.62.310.22.612.11.610.32.50.90.0336
α 3 hit45.911.245.48.944.59.844.67.145.19.2
missed40.35.240.68.038.38.641.112.039.58.3−5.50.0001
v 1 hit5.50.45.60.85.50.65.30.45.50.6
missed5.60.25.40.65.71.15.40.25.60.8−0.10.5171
v 2 hit3.90.33.90.24.00.34.00.24.00.3
missed3.90.23.90.34.00.54.10.24.00.40.0-
v 3 hit4.41.04.60.84.70.74.70.84.60.8
missed4.60.24.70.54.60.64.30.74.60.50.0-
x ¯ —mean, s d —standard deviation, d—difference between mean values of missed and hit throws, p—test probability.

Share and Cite

MDPI and ACS Style

Przednowek, K.; Krzeszowski, T.; Przednowek, K.H.; Lenik, P. A System for Analysing the Basketball Free Throw Trajectory Based on Particle Swarm Optimization. Appl. Sci. 2018, 8, 2090. https://doi.org/10.3390/app8112090

AMA Style

Przednowek K, Krzeszowski T, Przednowek KH, Lenik P. A System for Analysing the Basketball Free Throw Trajectory Based on Particle Swarm Optimization. Applied Sciences. 2018; 8(11):2090. https://doi.org/10.3390/app8112090

Chicago/Turabian Style

Przednowek, Krzysztof, Tomasz Krzeszowski, Karolina H. Przednowek, and Pawel Lenik. 2018. "A System for Analysing the Basketball Free Throw Trajectory Based on Particle Swarm Optimization" Applied Sciences 8, no. 11: 2090. https://doi.org/10.3390/app8112090

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop