Overview of Project
The theme of my project is “Action Recognition System”. My work can help calculate the number of sports actions such as sit-ups, push-ups, etc. based on action recognition. Many people now exercise at home. This technology can help people exercise at home.Then a percentage display is added to this system. It can show the percentage of the action’s completion and identify the completeness of the action.
Concept and Background Research
Nowadays, many people do some exercise at home. Many people use fitness apps to do some strength training and other training. During the epidemic, the Statista report (2021) showed that more than 30% of fitness people in the world chose to exercise at home during the epidemic, and many people retained some home training habits even after the gym reopened. Although offline gyms have gradually been opened after the epidemic, the convenience and comfort of home fitness are still favored by many people. In 2023, 52% of Americans will exercise regularly at home, while 28% will go to the gym. The main reasons for exercising at home include convenience (51%)and privacy (20%) . The global fitness app market is expected to grow by $1.68 billion in 2024, at a CAGR of 12%, demonstrating strong demand for digital fitness solutions.
The most troublesome issues for people in home fitness are usually the quality of the movements and what movements to do to stimulate which parts of the body better. What is more important in the process is the number and quality of training movements. This also determines the effect of each exercise. Many times people may not reach the number of training because they are lazy or can’t keep up with the rhythm of the teaching video. The American College of Sports Medicine (ACSM)’s 2023 Home Fitness Trend Report stated that the proportion of users who adjust and pause the video on their own is as high as 62%, and the main reasons include “not keeping up with the movements” and “counting rhythm is too fast.” Individual differences in exercise rhythm (Journal of Sports Sciences 2021) mentioned that the standard completion time of the same action (such as squats) varies from person to person, and novices are on average 20%-30% slower than experienced people. Therefore, many times novices should have their own rhythm and movement patterns when using fitness apps to exercise at home.
This can greatly improve the efficiency of fitness. Users don’t have to worry about doing more or less, just focus on the movements.Current home fitness apps include Keep (China), Nike Training Club (NTC), Fitify, and Freeletics. Home fitness devices include smart fitness mirrors (such as Mirror, Lululemon Mirror, and Fiture). Among them, a few courses in the Keep software have human posture recognition, but some of them are not so easy to use due to lighting or lens issues. Nike Training Club does not have a similar function. Generally, professional coaches provide guidance. Smart fitness mirrors are different. Smart fitness mirrors have cameras and infrared cameras. They also contain AI visual models. They have 3D posture judgment capabilities. They also have real-time feedback and action counting functions. But they are expensive.
In general, there are some very mature products in the market. However, there is still room for development based on lightweight or some action recognition counters in browsers or software. So I want to make a similar prototype to achieve this effect.
Design process
My idea is to make a programming prototype that can recognize an action and then calculate the number of actions. At the beginning, I wanted to make a system similar to action recognition errors. Because I have used Google teachable machine before, which has a motion recognition function that can distinguish different motions and the percentage of the motion you perform. My initial idea was to put my correct and incorrect motion postures into the teachable machine for recognition, and then I would look at the correct percentage and the incorrect percentage of the motion. I was thinking of using this mechanism to make a motion correction system. However, the motion recognition of the teachable machine can only output JavaScript prototype code. This is a bit difficult for me. And if I want to do it, I need to make a website to run the program. This is very challenging for me. So I plan to find another way to do this project.
If I want to make a recognition system for wrong and correct movements. This is still too difficult to achieve with my current technology. So I decided to do a relatively simple direction, which is to count the number of movements. For example, squats or bicep curls and other movements. So I also searched for some relevant information on the Internet. I found that there are many related cases that can count the number of movements. Some technologies can be applied to AI to recognize the angle of your movement and the degree of completion of the movement. This is a good development direction to combine sports and AI technology. This is also the direction and goal I want to study in the future.
Through research and discussion with teachers, I found that ml5 can complete action recognition and checked the relevant teaching on the Internet. I found that this action recognition is not difficult to achieve. So I implemented the action recognition system through online video teaching.
According to the instructions of this video, I made the most basic motion recognition. Next, I have to add the number of motion recognition and some time and other things. I used chat to complete these and then made adjustments. First, I made the recognition of the number of motions.
After finding no problem, I added a recognition system for each group of 12. Every time 12 are achieved, they will be counted as a group and the number will be reset to zero. At the beginning, the effect of countdown 3, 2, 1 is also added.
I actually want to do a few more action recognitions, such as push-ups, sit-ups or pull-ups, but I still haven’t completed it. I hope that if I have more time in the future, I can go back and complete it. In addition, this recognition system actually has some loopholes sometimes. I will make this technology more complete.
Evaluation
If I have enough time in the future, I would like to make a website. But first I need to learn HTML and JavaScript. If I am more capable, I would like to make a fitness software with this function. Then I can add AI to recognize an action and then AI can make an evaluation after training. In this way, the trainer can also see the shortcomings of his training.
