image thumbnail

Human Pose Estimation with Deep Learning

version 1.0.3 (66.7 MB) by Tohru Kikawada
Human Pose Estimation with Deep Learning

557 Downloads

Updated 04 Jan 2021

From GitHub

View license on GitHub

Human Pose Estimation with Deep Learning

This demo shows how to train and test a human pose estimation using deep neural network. In R2019b, Deep Learning Toolbox(TM) supports low-level APIs to customize training loops and it enables us to train flexible deep neural networks. GPU Coder(TM) also enables us to deploy the trained model to an NVIDIA(R) Jetson(TM) devices. Once deployed, the human pose estimator will be running as a standalone.

This repository includes a pretrained network using the COCO dataset, which was collected by the COCO Consortium (cocodataset.org).

View Human Pose Estimation with Deep Learning on File Exchange

Required Toolboxes

Pose Estimation Toolbox requires the following products:

To deploy the model to a NVIDIA Jetson or Drive platforms, you'll also need the following products.

Installation

Download the latest release of this repository. To install, open the .mltbx file in MATLAB.

Getting Started

Open the project file to add paths to related folders if you cloned the GitHub respotory.

open simple-pose-estimation.prj

Load a pose estimator model.

detector = posenet.PoseEstimator;

First, read a test image, then crop a person and resize it to fit to the network input.

I = imread('visionteam1.jpg');
bbox = [182 74 303 404];
Iin = imresize(imcrop(I,bbox),detector.InputSize(1:2));

Then, perform the pose estimation on the image. To visualise the results we can superimpose the detected keypoints on the original image.

keypoints = detectPose(detector,Iin);
J = detector.visualizeKeyPoints(Iin,keypoints);
imshow(J);

figure_0_png.jpg

Click here for a complete example.

Examples

About the Model

The network architecture is based on Xiao's pose estimation network[1] which combines upsampling and convolutional parameters into transposed convolutional layers in a much simpler way, without using skip layer connections. We also use COCO dataset[2] which is one of the well known large public human pose dataset.

[1] Xiao, Bin, Haiping Wu, and Yichen Wei. “Simple baselines for human pose estimation and tracking.” Proceedings of the European Conference on Computer Vision (ECCV). 2018.

[2] Lin, T., et al. "Microsoft COCO: Common objects in context. arXiv 2014." arXiv preprint arXiv:1405.0312.

Copyright 2020 The MathWorks, Inc.

Cite As

Tohru Kikawada (2021). Human Pose Estimation with Deep Learning (https://github.com/matlab-deep-learning/Human-Pose-Estimation-with-Deep-Learning/releases/tag/v1.0.3), GitHub. Retrieved .

MATLAB Release Compatibility
Created with R2020a
Compatible with R2019b and later releases
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

src/+posenet

src/doc

To view or report issues in this GitHub add-on, visit the GitHub Repository.
To view or report issues in this GitHub add-on, visit the GitHub Repository.