Software apps and online services
Hand tools and fabrication machines
The efficiency of the badminton sports depends both on stamina of the player as well as the quick moves undertaken through the racquet. Moreover, post-analysis of the game is done through conglomerate efforts from the coach, feedback camera recordings and player in itself on traditional basis. With the addition of the real-time racquet data would shift the player and game-level to the next stage.
This project focuses on acquisition and analysis of racquet data during the active practice and game-session through the use of RSL10Sense Board's Inertial measurement unit as well as using the full capabilities of onboard multi sensor technique. This would certainly benefit the player for improving the skill-level through the use of AI-driven post-analytics. Moreover, one can add the RSL10Sense Board as an addon to any of the racquets available commercially, through custom 3D printed butt-cap housing.
Getting the data from the Gyro + Accelero sensor (BHI160), helps in capturing the movements of the racquet. BME680 environ sensor records the ambient condition during the game-play session. Complete data profile is transmitted from the RSL10 Sense Board via BLE to the player's smartphone, and required post-processing on data is performed through machine learning algorithms, the device would then be able to classify standard badminton movements like:
Based on the data, one can augment the motion timestamps including the angle and speed over the recorded video overlay(negated solution). As well as suggest specific trajectories and required velocities for earning game-point at earnest through the aid of machine-learning approach. While this solution is much cheaper, easy-to-use and computationally efficient compared to video-based methods for analyzing badminton strokes. It also provides advantage of dynamic monitoring of multiple players in indoor and outdoor environments through multiple sensors.
Basics of Badminton Sport..
Racquet sports, such as badminton, tennis, table tennis and squash, are amongst the most popular recreational sports activities. In addition to physical fitness, racquet sport players need aerobic stamina, agility, strength, speed, and precision simultaneously. Generally, a badminton player should be able to strike a shuttlecock with different motions (with corresponding force) known as ‘strokes’. This requires techniques which are constructed and delivered through precise basic skills, powerful strength, and coordination. Badminton can be characterized by three types of racquet movements: short drops, long clears and hard smashes. Timely execution of these strokes contributes to success in matches. In recent years, numerous researchers have investigated the movement of racket sports players, since observable changes from athletes are vital in the coaching process. The majority of conventional studies focus on using video-based methods to track athletes’ actions and performance. However, such video-based methods are not utilized in day-to-day training due to limitations such as large computation load, costly equipment, and environmental constraints.
I had the opportunity, to associate the project idea into one of the customized practice-game at the court, supervised by a professional coach, a total of 6 players with different skill levels, each performed 20 straight smashes, short drops, and long clears, respectively. The coach served the shuttlecock to position “1” (for drops), position “2” (for smashes), and position “3” (for clears). Each of them performed the actions at different positions. Each of them had to hit the shuttlecock to the destination inside the right half court; otherwise, we did not count it as a successful action.
The RSL10 Sensor Development Kit is a compact and a comprehensive platform for developing IoT applications with leading sensor technology and the industry's lowest power BLE-SoC, for developing several applications like industrial wearables, asset monitoring, smart sensing solutions through this platform. The compact platform features a full range of sensors and support for several cloud services (AWS, IBM, Azure, etc.) that helps in building a true end-solution.
Based on the RSL10 System-in-Package (SiP).Bluetooth 5, certified to international wireless regulations (CE, IC, KC, MIC, FCC).Configurable, low-power sensors onboard;
- NOA1305 (Ambient light)
- BHI160 (Integrated low power smart hub, 3-axis accelerometer, 3-axis gyroscope)
- BMM150 (Low Power, Low Noise 3-axis digital geomagnetic sensor)
- BME680 (Integrated high-accuracy gas, pressure, humidity and temperature sensor)
- INMP522 (Ultra-low noise digital Microphone)
- APTF1616 (Programmable RGB LED)
- N24RF64 (64kB NFC EEPROM)
- 3 programmable push-buttons
- Supported by the RSL10 Sense and Control app (IoS ®,Android ™) for cloud connectivity.
Before the gameplay..
An enclosure for RSL10 was designed in Fusion360 and fabricated through 3D Printer. Though OnSemi provided a 3DPDF document for the RSL10Board, but still conditions were tough to export the concerned 3D PCB file through Tetra4D converter. Hence, following the footprints of Jobbs, I went on designing the enclosure from scratch. Luckily, OnSemi provided the gerber for RSL10Sense, which was further imported into Altium Designer-19, and I was able to export the 3D PCB (top-mask and dimension layer).
It was further imported into Fusion360, which helped to build a rough estimate of enclosure design, required for our job. Since, the racquet sensor is to be mounted at the base(stump); (an approach, similar to commercial sensors from Sony, Garmin, Babolat, Flink & Coollang).
Interaction with Smart Racquet through Software:
To receive and visualize the IMU data collected from the BLE peripheral node, I have utilized the functionality of ON Semiconductor's Sense and Control Android App. The features of App can be divided into three modules: BLE Connection, Sensor Data Display (Text, Graph) and Sensor Data Cloud integration through MQTT.
After a successful connection has been made between the Racquet and Android App the IMU based motion data along with E-sensors is received and visualized in real-time.
Connecting Smart Racquet to Cloud..
Teserract was used to capture the recent events from IoT Cloud into.csv file, that was further used for post-analysis.
Graphing it out!
The initial IMU dataset was sampled and verified through spreadsheet program and was later imported to Matlab Graph toolbox for filtering the custom IMU values from the dataset.
Time for some heavy M.L. Classification
To demonstrate performance of ML model, Support Vector Machine (SVM) classifier was used. Getting, the mean and variance from the six axes and root mean square (RMS) from three acceleration axes; the maximum acceleration in x-axis, 3-axis acceleration data and 3-axis angular velocity data. Along with SVM, PCA was also used to verify the same dataset. During the training process, I have used 10-fold cross validation to avoid the overfitting problem and find the best parameters of the SVM classifier.
For stroke recognition, comparision between k-Nearest-Neighbor (kNN) non-parametric classifier and Naïve Bayes (NB) classifier is used to determine whether SVM+PCA is the best classifier for the data. Applying different k values (from 1 to 11) to find the best estimator for data, hence achieving the best model results when k=5. The results from testing two other algorithms demonstrated that the computational efficient of PCA+SVM is also sufficiently accurate.
The performance levels represented by the skill data were thus estimated by SVM, kNN and NB classifiers. Comparisons of these classifiers show SVM achieves high accuracy in stroke recognition (97%) and in assessing levels of players in executing clear stokes (90.3%).
The obtained results from the Classifier's Learner App, shows that the system is capable of recognizing three different actions, i.e., smashes, clears and drops, with an accuracy rate of more than 95%. The skill assessment function can partially differentiate between professional, sub-elite, and amateur players from their stroke performance style.
It is thus feasible to identify level of performance from wrist motion data of smash and clear. Based on the results thus far, we could possibly identify elite players just by observing their clear strokes. However, drop strokes are relatively flexible. Moreover, amateurs and sub-elites play similarly while elite players’ drop strokes are consistently different from those of amateur and sub-elites. Using this system, we can compile a database of badminton action movements from players at different levels, which can then be utilized for improving the game.
In the future, I would like to train more dataset for recognizing more motion artifacts of this game(that have not been covered in this build). For me, the RSL10Sense played it's part efficiently for 'Analytics in Motion Sports'.