1 Introduction

The analysis of limb trajectories has long been an area of interest in order to improve knowledge about performance, injury prevention, and understanding the functionality of movement variability [4, 5, 8, 9, 13]. However, analyzing complex strike patterns often requires manual labeling of the techniques that are used [1]. This increases the complexity and labour required to analyse the data, but was necessary for reliable analysis. Recently, [7] used a supervised classification method for automatically classifying punching techniques from video images. Their work was focused on boxing, so only punches were analysed. Here, we apply similar methods to a more complex dataset of beginning and experienced kick boxers striking a boxing bag. This dataset contains both punches and kicks and a variety of different techniques, complicating the task of accurately classifying the strikes. In this paper, we apply supervised classification to a dataset of 4000 strike trajectories using K-nearest neighbor (KNN) classification and multi-class linear support vector classification (SVC). We show that both models are capable of classifying the limb and technique used for the strike using a small fraction of the dataset. Furthermore, we demonstrate that supervised classification can classify strikes according to the skill level of the person performing the strike. This paper serves as a primer to demonstrate the possibilities of applying automatic classification to complex trajectory data.

2 Methods

2.1 Data Collection

Our primary objective was to examine the effect of skill in a task where participants aimed to maximize both the originality and functionality of striking actions in adapting to changes in external constraints (the distance to a target to strike). In doing so, a group of currently active kickboxers (n = 21, age = 25.9) and a group of participants naive to combat sports (n = 21, age = 25.3) were recruited and participated. The experimental design required participants strike a free hanging boxing bag. The distance to the midline of the bag was manipulated across 10 positions (see Fig. 1). Each distance corresponded to a percentage of the participants leg length (taken from the trochanter major to the ground while standing). The percentage leg lengths were linearly spaced from 0% to 100% and included: 0%; 11.1%; 22.2%; 44.4%; 55.6%; 66.7%; 77.8%, and; 88.9%; 100%. At each position participants were required to strike the bag 10 times consecutively. There was approximately ten seconds rest enforced between each strike. An additional two minutes rest every ten strikes was also enforced which facilitated adequate rest and afforded equipment checks. The position order for each participant was randomized using sampling without replacement. The specific instructions were: Using your hands and your feet, at each position to vary as much as possible across the ten strikes the method used to strike the bag [originality task constraint]. When striking the bag with the given method, do so as hard and as fast as possible [functionality task constraint]. To ensure that participants adapted to the position (and did not simply move to a self-preferred distance before striking), they were also required to stay within a stand-on-able square. The length of each side of the stand-on-able border was set to the participants shoulder width. We also adjusted the height of the centre of the boxing bag (weight = 45 kg) relative to the height of the sternoid process of each participant. The available surface area that could be struck was also body-scaled to the participant such that they were required to strike either above their knee and below their standing height. Participants were also fitted with safety gear gloves and shin guards for their hands and feet. Instrumentation for obtaining the striking limb trajectory included an optical motion capture system (Optotrak 3020, Northern Digital Inc., Canada) which has an accuracy of 0.5 mm. Two cameras were positioned 4 m at either side of the participant perpendicular to the striking direction. Two active infrared markers were secured to each glove and each ankle (directly beneath the malleolus). Two markers were used to ensure visibility should the participant rotate their limb during a strike. The position of each marker was recorded as 3D data points at a sampling rate of 240 Hz. Before the experiment, the coordinate system was defined using a calibration cube with the origin set directly beneath the longitudinal axis of the bag and subsequent marker paths projected in global coordinates (Fig. 1) [14]. In order to obtain a precise moment of contact with the bag a tri-axial accelerometer was attached to the posterior surface of the bag. The accelerometer measured at 1000 Hz and was linked to the optical motion capture system for time synchronisation. Participants were also equipped with inertial measurement units (IMUs) (MTx, Xsens Technologies, Netherlands) at each body segment and sampled at 120 Hz. IMU data was automatically time synchronized with optical data using the peak correlation of a large amplitude movement of the right foot on the vertical displacement (Figure 1A shows the synchronization and projection results).

2.2 Trajectory Extraction and Labeling

The average of each pair of limb position data was taken. A cubic spline was then used to fill missing values and a low pass Butterworth filter applied. The norm of the accelerometer signals was used to automatically detect moment of contact. We then automatically obtained the limb used to strike the bag, taking the limb associated with the highest acceleration norm (taken directly from the IMUs) around the moment of impact. The beginning of the strike was then determined automatically as when the limb used began to travel with a velocity greater than 0.2 m/s toward the bag. All steps were visually verified. The subsequent dataset consisted of 4235 strike trajectories (Fig. 1B–C). Out of this set, techniques were labeled by observing the full body kinematics of each strike (Fig. 1A). For punching techniques labels included: Hook; Straight; Uppercut; Overhand; Superman Punch; Back Fist; Spinning Back Fist. For kicking techniques labels included: Roundhouse Kick; Front Kick; Stamp Kick; Side Horse Kick; Rear Horse Kick; Spinning Kick. During this step the accuracy of the optical motion capture data for each strike was also verified and acceptable trajectories were retained (Fig. 1B-C).

Fig. 1.
figure 1

Retained limb trajectories. (A) Shows the initiation and moment of contact with the target of the projected optical motion capture and inertial measurement unit data obtained for each strike. Beginner (B) and expert (C) trajectories plotted in the global coordinate system (axis values are in metre units).

2.3 Data Cleaning and Analysis

In order to be able to perform and verify supervised classification, each trajectory is required to have outcome labels. Therefore, strikes with missing labels were removed. Furthermore, outcome classes are required to contain at least two members. Therefore, techniques which occurred only once were removed from the dataset. This resulted in a dataset of 3962 strike trajectories usable for classification, out of 4235 originally measured trajectories. The label distribution can be found in Table 1.

Table 1. Technique label distribution in cleaned dataset.

There is a strong correlation between subsequent points in the trajectory data. In order to reduce the number of dimensions and remove the correlations between features, principal component analysis was performed on the trajectory data. Each x-, y- and z-coordinate for each of the 100 normalised timesteps were included as features, resulting in 300 features for each trajectory. PCA was performed and the first fifteen principal components were retained, cumulatively explaining 99.99% of variance in the trajectories. This ensured that as much information as possible was retained from the trajectories, while still strongly reducing the amount number of features and removing correlations between features. These fifteen principal components were used as features for all classifications.

Fig. 2.
figure 2

Principal components of trajectory data. Color indicates which limb was used to perform the strike. (Color figure online)

2.4 Classification Models

Plotting the first two principal components using limb data shows relatively clear separation of limbs used (Fig. 2). This indicates that classification of limbs used should be possible using linear classification. Therefore, two supervised classification algorithms that are capable of detecting linearly separable classes were tested on the dataset. The KNN algorithm is one of the oldest and simplest classification methods available [2]. It classifies data points according to the class of the K nearest neighbors of that datapoint, using the Euclidean distance between points. This allows for the classification of both linearly and non-linearly separable data. Lower values of K generally perform better on stronger separated data and can lead to overfitting on datasets that are not clearly separated, while higher values of K are more robust against outliers and noise but can lead to values on the edges of clusters to be wrongly classified. Higher values of K also require more computational power as more neighbors need to be examined for each datapoint. The optimal value of K is often not known beforehand and has been an ongoing challenge [3, 11]. Multi-class linear SVC attempts to classify the data by finding linear vectors that separate the different classes [12]. When performing multi-class classification, two approaches are possible. The simplest method is known as one-against-all, in which one model is trained for each class that separates this class from the rest, resulting in n models for n classes. The other approach is one-against-one, where a model is trained for each possible combination of classes. This results in n x(n−1)/2 models for n classes. The combination of these models is then used to classify each data point. Due to these additional models, one-against-one is more computationally expensive but also less sensitive to unbalanced datasets [6]. All analyses were performed using the scikit-learn package in Python [10].

3 Results

3.1 Limb and Technique Classification

Strike trajectories were classified for which limb was used as well as which technique was performed. Twelve classes of techniques were defined beforehand, of which six were kicks and six were punches. The dataset was split into a training set and a test set which consisted of respectively 75% and 25% of the data. Strikes by the same participant were placed either all in the train set or all in the test set to prevent leakage of information and participant distribution over the train and test sets was randomised for each iteration. In order to determine the optimal number of neighbors K that would result in the highest classification accuracy, K was varied from 1 to 30 and KNN was performed using each value for K. The classification of which limb was used was most accurate for K = 18 (Fig. 3A), while techniques were most accurately qualified with K = 14 (Fig. 3B).

Fig. 3.
figure 3

Classification accuracy of KNN for varying values of K. (A) Shows the classification of which limb was used, (B) Shows classification of strike technique. Orange indicates the accuracy on the training set, blue indicates accuracy on the test set. Values are based on 100 iterations for each value of K. (Color figure online)

Subsequently, linear SVC was performed on the same dataset. Comparison of the classification accuracies of the models showed nearly identical results, with SVC scoring marginally higher for both limb and technique classification (Table 2). The high accuracy of linear SVC indicates that both the limb and the technique classes are linearly separable. This is in accordance with the fact that different limbs and techniques are spatially separated in the trajectory data.

Table 2. Classification accuracy of different models.

3.2 Minimal Required Training Set

After determining that the trajectory data can accurately be classified into the correct limb and technique classes, we attempted to determine the smallest training set size that can still provide accurate classifications. We varied the size of the training set from 1% to 75% of the dataset and assigned the remainder of the data to the test set (Fig. 4). SVC again slightly outperformed KNN for all measurements. For both models, accuracy improvement started leveling off after assigning approximately 10% of the dataset (\(\sim \)400 strikes) as training data, indicating that this fraction was sufficient to approach the classification accuracy that was originally obtained using 75% of the data for training.

Fig. 4.
figure 4

Accuracy of classification for various training set percentages. Dotted lines show accuracy of limb classification, dashed lines show technique classification. Values are based on 50 iterations for each training set percentage.

3.3 Hierarchical Classification

[7] found that technique classification could be improved by using a hierarchical model, classifying strikes first on limb level and subsequently on technique level. Applying a similar technique, we separated the strike trajectories according to limb classification and then classified the trajectories into technique classes for each limb separately using linear SVC. Accuracy of technique prediction increased for all four limbs (Table 3). These findings confirm the merits of using hierarchical classification for technique recognition. It should be noted that all participants in the experiment were right-handed.

Table 3. Technique label in cleaned dataset.

3.4 Classification of Skill Level

Finally, we explored the capability of the models to predict the skill level of the person performing the strike. Separation of skill level based on trajectory data is less likely to be based on spatial separation, as both beginners and experts used all four limbs to strike the bag. Indeed, coloring the first two principal components of the trajectory data shows an overlap between the two skill groups (Fig. 5). The dataset was separated again into 75% training data and 25 testing data, participants were randomly placed in one of the sets for each round of training. Both models were trained 50 times. KNN provided an average accuracy of 73.3%, while SVC provided 61.0% accuracy. No significant differences in accuracy were found for different values of K.

Fig. 5.
figure 5

Principal components colored by skill level. (Color figure online)

4 Discussion

In this exploratory data analysis study, we examined the possibility of using supervised classification techniques for automatic labeling of strikes based on trajectory data. Both KNN and SVC were found to accurately classify which limb and technique were used for a strike. KNN was able to classify skill level of the participant with 73.3% accuracy, which indicates that some classification of skill is possible but more data likely needs to be included for accurate classification. Hierarchical clustering was found to increase the accuracy of technique classifications. Considering the excellent accuracy of limb classification, it seems recommended to classify strike trajectories on a limb level first and then proceed to the classification of techniques for optimal accuracy. Furthermore, only a small fraction of the data was needed as training data in order to obtain accurately performing models.

4.1 Applications

Automatic classification of strike trajectories allows for rapid analysis of large strike datasets. Until now, manual classification was required in order to process the data obtained in experiments involving the punching bag. This exploratory study is a step towards the (partial) automation of the data analysis. For subsequent experiments with similar set ups, the models developed in this article will be usable to classify the majority of strikes automatically. Furthermore, the small fraction of data that is required to make accurate predictions suggests that this method is also applicable to other experiments for which the current model cannot be applied directly. This would require labeling a small part of the data and then using that to classify the rest. Besides automating data analysis in experiments, this work also contributes to developing a quantitative measure of what distinguishes a strike performed by an expert compared to a novice. The possibility of classifying trajectories based on the skill level of the person performing the strike indicates that strike trajectories have properties that are correlated to the quality of the strike. Although classification of the principal components of the trajectories do not directly give an insight into which aspects of the trajectory predict skill level, this finding implies the possibility of quantifying the quality of a strike based on its trajectory. Accuracy of skill prediction can likely be improved further by including measures such as the impact force and execution time of the strike.

4.2 Limitations and Further Developments

The models presented here still face several limitations. Due to the requirement of knowing the labels beforehand, the models are incapable of detecting techniques that have not previously occurred. This limits the applicability of supervised classification in situations where rare techniques are relevant to the research question. This is the case for research on movement creativity and variability [9]. Therefore, the method should be refined further in order to be able to classify rare techniques. Similarly, accurate prediction of skill will require additional features to be added into the models. Furthermore, the model can only be generalized to datasets that are similar to the dataset used here. Trajectory data that differs significantly will require at least partial manual labeling in order to apply supervised classification. Future research could test the generalizability of the model by attempting to classify previously unseen strike trajectory data. Furthermore, it could include the use of unsupervised classification methods in order to further reduce the need for manual labeling and improve the classification accuracy. Overall, the application of machine learning to the automatic classification of strike data seems like a promising opportunity to advance data analysis in the field of movement science.