This is a interesting rope jumping Android app and Apple Watch app. The Android version is now also available on Google Play.
Available on Github: https://github.com/LeeLeeYeah/AirRopeJumping
It’s a virtual rope jumping app. Users can a cell phone instead of a real rope to do rope jumping. The app will count for the users, and also give the sound of swinging rope synchronously, making it feels like swinging a real rope.
To prevent users from fabricating data by doing other motion, I tried machine learning method to detect cheating behaviors. Here is a demo:
Apple Watch Version
I also develop a Apple Watch demo version. When users wear their apple watches to do rope jumping, the app will count for the users. Also, it can count the number of trips based on the interval time between jumps.
The counting algorithm is based on the value of the vector product of acceleration and gravity. A jump is counted when the value exceed an upper threshold and then a lower threshold (a pair of red dots in the following figure).
I built a SVM classifier on the server. The app sends the motion data to the server, and gets the classification results back. The accuracy is approximately 90%. Though 90% seems like a pretty good will result, the 10% misjudgment is terrible to users, so I didn’t put this feature into the release version.
I collaborated with Lingfei Chen on this project, and was supervised by associate professor Ming Cai in Zhejiang University. This project is recognized as National Undergraduate Training Program for Innovation and Entrepreneurship and also Undergraduate Research Training Program of Zhejiang Province. We received research funding grant of 15,000 RMB by the Ministry of Education of the People’s Republic of China.