Training YOLOv2 for Limb detection
Is split into two parts Trying to detect limbs and then redesigning YOLOv2 to work with angled bounding boxes something like this:

I’m going to train the YOLOv2 to detect limbs and output the coordinates from the bounding boxes. Then based on the output of these coordinates of each bounding box, I will draw a line between the top left to top right going down the center line this would represent the skeleton once a full iteration is completed.
I train initially on 500 images of limbs to see if this approach will work. It should be noted that most images in my dataset are more than one human pose in the image.
Obtaining Ground Truth
MPII provides points where the centre of the joint is. So from this we need to create bounding boxes around each of these and write the box dimensions and class number to file. It’s time fire up the GTX 1070 (8GB) to see how it fairs.
Interesting Development
My computer breaks…. So time to convert my MacPro to a Deep Learning Rig using Google Cloud. I’ve got myself some free credit (£250) and topped it up £70. I’m currently renting a Intel 4 Core Machine with 16GB of RAM and a Nivida K80 12GB. So we’ll see how it goes…
Limb Id’s
- Head
- Right lower leg
- Right upper leg
- Left lower leg
- Left upper leg
- right lower arm
- right upper arm
- left lower arm
- left upper
- Chest

This is angled ground truth data ready to be fed into the network.
I’m now using a Python Implementation of YOLOv2 using the Tensorflow framework instead of the Darknet framework. There are several reason for this, but mainly because It’s in python and I understand the language better.