It's my undergraduate project aims to help beginners learn table tennis by providing them 3D skeleton motion & improvement suggestions. With one camera, like a cellphone, users can visualize their 3D skeleton with motion in 3D space, and compare it with the one from an expert we provided. Moreover, considering that beginners need some concrete advice, we train an LSTM to classify user's motion and the software gives suggestions according to the result.
-
3D Visualization
- Side-by-Side Comparison: Display the expert’s and the beginner’s motions simultaneously, allowing users to compare their postures.
-
LSTM Posture Analysis
- Complexity of Techniques: Table tennis involves intricate techniques that beginners find difficult without proper guidance.
- High Cost and Time Investment: It takes much time and money if beginners want to get feedback and correct their posture.
- Lack of effective Apps: Few Apps teach beginners how to exercise right.
- OpenPose
- MocapNet
- LSTM posture suggestion (LSTM model)
- BVH rotation analysis (video preprocess & analysis)
- Pybind11
- Pytorch
- Pytorch lightning
- NanoGUI
- PyAutoGui - Mouse Recorder -> for Demo purpose.
- Bvh motion retarget. Attach bvh motion to model for more comprehensive visualization.
We'd already worked on the feature. Here is the example.
- Qammaz, A., & Argyros, A.A. (2019). MocapNET: Ensemble of SNN Encoders for 3D Human Pose Estimation in RGB Images. British Machine Vision Conference
- A. Qammaz and A. Argyros, "Occlusion-tolerant and personalized 3D human pose estimation in RGB images," 2020 25th International Conference on Pattern Recognition (ICPR), Milan, Italy, 2021, pp. 6904-6911, doi: 10.1109/ICPR48806.2021.9411956.
- LSTM