HKS Pose Estimation — Day 1/30

Abdelrahman Helaly
3 min readJul 6, 2021

--

Day one of preparing to develop projects regarding the pose estimation problem.

Literature Review

I Began reading multiple article related to the topic of Multi-Pose estimation

This Article For Example summarized the open source pose estimation algorithms. [OpenPose-MultiPoseNet-Detectron II- Alpha Pose]

This Article is slightly outdated, but however gave a nice presentation to what are the kinds of Pose Estimation Techniques.

Top-down: is where we first detect all humans in the image, and then for each human, find the key points, speed in function in the number of people in the image.

bottom-up: key points are detected and then points are grouped into people, bottom up is faster because it performs pose estimation for all people together

In the previous article, there was alot of mentioning of PAF (Which are Part affinity Fields)

So this lead me to read this amazing article, which explains in details the OpenPose Parts Fields Affinity.

Practical Side

I decided i just want to get something up and running to test one of the Repos listed, and since OpenPose was the most famous.

i found this Tutorial (Deep Learning Using OpenPose Course) on Packt.

It walked me through the steps of installing the model and had a nice intuition explanation for the github repo.

A very sad pose estimation

The course had 5 Apps, which i tried 3 of them today. (Human Counter,Fall detection And Yoga Angle Corrector)

First When being a person counter. (Which just counts the number of humans that are result of inference)

PoseEstimator used in here is from this repo: https://github.com/ZheC/tf-pose-estimation

Second, Basically if the head position changes drastically from the values in our buffer, we detect that a fall occurred.

body_parts encloses the detected parts for each human

Third, Yoga Mountain Pose Detection

This repo follows this section of the course very well.

Points in OpenPose

what is a very simplified version of pose correction, it finds the distance between the left arm and head and similar for the right arm and head, and the same for angles.

Code is copied from the repo mentioned above :)
Correct Yoga Mountain Pose

Logic is performed on the angles and the distance to check if the correct pose is achieved or not.

Tomorrow, i will complete the last 2 Apps and probably look for the official PyTorch implementation, and start reading the first paper.

--

--