A Project Review-1 Presentation
on
DETECTION OF BODY POSTURE FOR MUSCLE
REHABILITATION USING NEURAL NETWORK
TECHNIQUE
Submitted By
Devansh. Pundir
19021011258/19SCSE1010049
Mohd. Sahil
19021011258/ 19SCSE1010049
Abstract
The complications of poor posture include back pain, spinal dysfunction, joint degeneration, rounded shoulders
and a potbelly. Suggestions to improve your posture include regular exercise and stretching, ergonomic furniture
and paying attention to the way your body feels. Pose estimation refers to computer vision techniques that detect
human figures in images and video, so that one could determine, for example, where someone’s elbow shows up
in an image. To be clear, this technology is not recognizing who is in an image — there is no personal
identifiable information associated with pose detection. The algorithm is simply estimating where key body
joints are. Human posture detection can be used for people who need muscle rehabilitation training. It not only
solves the problem of inconvenient operation for patients with motor dysfunction, but also has important
practical significance for improving the rehabilitation training effect of patients. For building this project we will
be using PoseNet - a machine learning model which allows for real-time human pose estimation in the browser.
Applications of this project can be used in the real-world by organizations as snapchat filters where you see the
tongue, aspects, glimpse, dummy faces. Fitness apps which are used to detect your exercise poses and virtual
games to analyze shots of players.
Title Page No.
Abstract
Contents
Chapter 1. Introduction
1.1 Introduction
1.2 Formulation of Problem
1.3 Tools and Technology Used
.
Chapter 2. Literature Survey/ Project DesigN
Chapter 3. Functionality/ Working of the Project
Chapter 4. Results and Discussion
Chapter 5. Conclusion and Future Scope
5.1 Conclusion
5.2 Future Scope
References
Introduction
Human pose recognition is an extremely troublesome and difficult task within the discipline of computer vision. It deals
with the localization of human joints in a picture or video to make a skeletal illustration. To mechanically discover a
user's activity in a picture may be a troublesome drawback because it depends on a variety of aspects like scale and
determination of the image, illumination variation, background muddle, venture variations, and interaction of humans
with the environment. The matter with posture is that it's of utmost importance to apply it properly as any incorrect
posture is often unproductive and probably damaging. This results in the requirement of getting an educator to supervise
the session and proper posture.
Since not all users have access or resources to an educator, an artificial intelligence-based application can be wont to
supply customized feedback to assist people to improve their poses. In recent years, human pose estimation has benefited
greatly from machine learning and large gains in performance are achieved. Machine learning approaches give an
additional simple approach of mapping the structure rather than having to wear down the dependencies between
structures manually. This project focuses on exploring the various approaches for yoga pose classification and seeks to
realize insight into the following: what's cause estimation? What's Machine learning? However, will machine learning be
applied to pose detection in real-time?
This project uses references from conference proceedings, revealed papers, technical reports, and journals. The second
section talks about different cause extraction ways are then mentioned in conjunction with machine learning primarily
based models - PostNet, P5 and ML for posture detection.
Literature Survey
1. Pose estimation can be performed using the various deep learning based pose estimation algorithms, they are
mainly divided into two categories top-down and bottom-up pose estimation algorithms or approaches.
2. The top-down approach of human pose estimation is a very naive and traditional method. Given an image or a
video of people it first detects where a person is present in that image and then draws a bounding box around it
using object detection. After obtaining the bounding box it is fed to a pose estimator which then extracts the body
key-points from that bounding box. This approach is very simple but has some drawbacks like the runtime is
directly proportional to the number of people and high computational cost.
The bottom-up approach is exactly opposite to that of the top-down approach yet so powerful. It first draws the
key-points on the image and then tries to map it with different people in that image using part affinity maps. This method
is not only fast but also more accurate as compared to the top-down approach. All modern day pose estimation algorithms
are inspired by this approach. We have studied some major bottom-up algorithms like DeepPose, Convolutional Pose
Machines, Openpose, Posenet and Blazepose.
We have compared the different bottom-up techniques for pose estimation on the basis of a few parameters like type of
architecture, baseline CNN model, average accuracy and FPS achieved. The algorithms/techniques compared in this
study are DeepPose, Convolutional Pose Machines, Openpose and Posenet. All of these algorithms have a multi-stage
architecture which have multiple stages and can have different baseline models
Another factor of comparison can be the fps achieved while testing the techniques and it also depends on the hardware of
the system and as we know that Posenet has Mobilenet CNN and therefore it achieves the highest fps then comes
DeepPose due to its simpler architecture the fps achieved by CPM and Openpose were relatively less as compared to the
other two techniques since Openpose requires heavy computational resources
After exploring all the techniques and methods we compared the pose estimation techniques on a few parameters and our
attempt will be to develop an application which uses pose estimation and comparison which will help people who need
muscle rehabilitation training.
Functionality/ Working of the Project
Functionality
PoseNet can be used to estimate either a single pose or multiple poses, meaning there is a version of the algorithm that
can detect only one person in an image/video and one version that can detect multiple persons in an image/video. Why
are there two versions? The single person pose detector is faster and simpler but requires only one subject present in the
image (more on that later). We cover the single-pose one first because it’s easier to follow.
Posenet is a deep learning TensorFlow model that allows you to estimate human pose by detecting body parts such as
elbows, hips, wrists, knees, ankles, and forming a skeleton structure of your pose by joining these points.
At a high level pose estimation happens in two phases:
1. An input RGB image is fed through a convolutional neural network.
2. Either a single-pose or multi-pose decoding algorithm is used to decode poses, pose confidence scores, keypoint
positions, and keypoint confidence scores from the model outputs.
Pose - is at the highest level, PoseNet will return a pose object that contains a list of keypoints and an instance-level
confidence score for each detected person.
Pose confidence score - this determines the overall confidence in the estimation of a pose. It ranges between 0.0 and 1.0.
It can be used to hide poses that are not deemed strong enough.
Keypoint - a part of a person’s pose that is estimated, such as the nose, right ear, left knee, right
foot, etc. It contains both a position and a keypoint confidence score. PoseNet currently detects 17 key points illustrated
in the following diagram:
Keypoint Confidence Score - this determines the confidence that an estimated keypoint position is accurate. It ranges
between 0.0 and 1.0. It can be used to hide key points that are not deemed strong enough.
Keypoint Position - 2D x and y coordinates in the original input image where a keypoint has been detected.
Working of the Project
You can use any IDE to implement the project like Visual studio code, sublime text, etc.
1) Boiler Template
Create a new folder and create one HTML file which will work as our website to users. here only we will import our
javascript file, Machine learning, and deep learning libraries that we will use.
2) p5.js
It is a javascript library used for creative coding. There is one software known as Processing on the top of which P5.js is
based. The Processing was made in java, which helps creative coding in desktop apps but after that when there was a
need for the same thing in websites then P5.js was implemented. Creative coding basically means that It helps you to
draw various shapes and figures like lines, rectangles, squares, circles, points, etc on the browser in a creative
manner(colored or animated) by just calling an inbuilt function, and provide height and width of shape you want.
3) ML5.js
The best way to share code applications with others is the web. Only share URL and you can use other applications on
your system. keeping this google implemented tensorflow.js, but working with tensorflow.js requires a deep
understanding So, ML5.js build a wrapper around tensorflow.js and made the task simple by using some function so
indirectly you will deal with TensorFlow.js through ml5.js. The same you can read on official documentation of Ml5.js
Deploy the Project
As the project is on a browser so you can simply deploy it on Github and make it available for others to use. Just upload
all the files and images to the new repository on Github as they are in your local system. After uploading, visit the
settings of the repository and visit Github pages. change none to main branch and click save. It will give you the URL of
a project which will live after some time and you can share it with others.
Conclusion and Future Scope
Human posture detection can be used for people who need muscle rehabilitation training. It not only solves the problem
of inconvenient operation for patients with motor dysfunction, but also has important practical significance for improving
the rehabilitation training effect of patients.
Applications of Pose Detection in the Real-world used by organizations
1) Used in Snapchat filters where you see the tongue, aspects, glimpse, dummy faces.
2) Fitness apps which use human posture detect for fixing your exercise poses.
3) A very popular Instagram Reels uses posture detection to provide you different features to apply on your face and
surroundings.
4) Virtual Games to analyze shots of players.
REFERENCES
1. Derrick Mwiti, "A 2019 Guide to Human Pose Estimation," August 5,2019.
https://heartbeat.comet.ml/a-2019-guide-to-humanpose-estimation-c10b79b64b73
2. A. Toshev and C. Szegedy, "DeepPose: Human Pose Estimation via Deep Neural Networks," 2014 IEEE Conference on
Computer Vision and Pattern Recognition, 2014, pp. 1653-1660, doi: 10.1109/CVPR.2014.214.
THANK YOU