All Projects → tensorlayer → Hyperpose

tensorlayer / Hyperpose

HyperPose: A Collection of Real-time Human Pose Estimation

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Hyperpose

Paddlex
PaddlePaddle End-to-End Development Toolkit(『飞桨』深度学习全流程开发工具)
Stars: ✭ 3,399 (+253.69%)
Mutual labels:  neural-networks, mobilenet
Swiftopenpose
tf-openpose Based iOS Project
Stars: ✭ 215 (-77.63%)
Mutual labels:  pose-estimation, mobilenet
Tensorflow realtime multi Person pose estimation
Multi-Person Pose Estimation project for Tensorflow 2.0 with a small and fast model based on MobilenetV3
Stars: ✭ 129 (-86.58%)
Mutual labels:  pose-estimation, mobilenet
Tf Pose Estimation
Deep Pose Estimation implemented using Tensorflow with Custom Architectures for fast inference.
Stars: ✭ 3,856 (+301.25%)
Mutual labels:  pose-estimation, mobilenet
Mace Models
Mobile AI Compute Engine Model Zoo
Stars: ✭ 329 (-65.76%)
Mutual labels:  neural-networks, mobilenet
Deepposekit
a toolkit for pose estimation using deep learning
Stars: ✭ 233 (-75.75%)
Mutual labels:  neural-networks, pose-estimation
Posenet Coreml
I checked the performance by running PoseNet on CoreML
Stars: ✭ 143 (-85.12%)
Mutual labels:  pose-estimation, mobilenet
Fast Stacked Hourglass Network OpenVino
A fast stacked hourglass network for human pose estimation on OpenVino
Stars: ✭ 52 (-94.59%)
Mutual labels:  pose-estimation, mobilenet
Tensorlayer Tricks
How to use TensorLayer
Stars: ✭ 357 (-62.85%)
Mutual labels:  neural-networks, tensorlayer
Tensorflow Tutorial
TensorFlow and Deep Learning Tutorials
Stars: ✭ 748 (-22.16%)
Mutual labels:  neural-networks, tensorlayer
Openhabai
Train Neuronal networks to automate your home
Stars: ✭ 19 (-98.02%)
Mutual labels:  neural-networks
Nips2017
A list of resources for all invited talks, tutorials, workshops and presentations at NIPS 2017
Stars: ✭ 907 (-5.62%)
Mutual labels:  neural-networks
Traffic Sign Classifier
Udacity Self-Driving Car Engineer Nanodegree. Project: Build a Traffic Sign Recognition Classifier
Stars: ✭ 12 (-98.75%)
Mutual labels:  neural-networks
Udacity Deep Learning Nanodegree
This is just a collection of projects that made during my DEEPLEARNING NANODEGREE by UDACITY
Stars: ✭ 15 (-98.44%)
Mutual labels:  neural-networks
Tract
Tiny, no-nonsense, self-contained, Tensorflow and ONNX inference
Stars: ✭ 899 (-6.45%)
Mutual labels:  neural-networks
18337
18.337 - Parallel Computing and Scientific Machine Learning
Stars: ✭ 834 (-13.22%)
Mutual labels:  neural-networks
Daily Neural Network Practice 2
Daily Dose of Neural Network that Everyone Needs
Stars: ✭ 18 (-98.13%)
Mutual labels:  neural-networks
Riceteacatpanda
repo with challenge material for riceteacatpanda (2020)
Stars: ✭ 18 (-98.13%)
Mutual labels:  neural-networks
Awesome Capsule Networks
A curated list of awesome resources related to capsule networks
Stars: ✭ 896 (-6.76%)
Mutual labels:  neural-networks
Lemonml
🍋Machine Learning library from scratch.🍋
Stars: ✭ 29 (-96.98%)
Mutual labels:  neural-networks


FeaturesDocumentationQuick-Start with DockerPerformanceLicense

HyperPose is a library for building human pose estimation systems that can efficiently operate in the wild.

Features

HyperPose has two key features, which are not available in existing libraries:

  • Flexible training platform: HyperPose provides flexible Python APIs to provide a customise pipeline for developing various pose estimation models. HyperPose users can:
  • make use of uniform pipelines for train,evaluation,visualization,pre-processing and post-processing across various models (e.g., OpenPose,Pifpaf,PoseProposal Network)
  • customise model and dataset for their own use(e.g. user-defined model,user-defined dataset,mitiple dataset combination)
  • parallel training using multiple GPUs(using Kungfu adaptive distribute training library) thus building models specific to their real-world scenarios.
  • High-performance pose estimation: HyperPose achieves real-time pose estimation though a high-performance pose estimation engine. This engine implements numerous system optimizations: pipeline parallelism, model inference with TensorRT, CPU/GPU hybrid scheduling, and many others. This allows HyperPose to run 4x FASTER than OpenPose and 10x FASTER than TF-Pose.

Documentation

You can install HyperPose(Python Training Library, C++ inference Library) and learn its APIs through HyperPose Documentation.

Quick-Start with Docker

The official docker image is on DockerHub.

Make sure you have docker with nvidia-docker functionality installed.

Also note that your nvidia driver should be compatible with CUDA10.2.

# [Example 1]: Doing inference on given video, copy the output.avi to the local path. 
docker run --name quick-start --gpus all tensorlayer/hyperpose --runtime=stream
docker cp quick-start:/hyperpose/build/output.avi .
docker rm quick-start


# [Example 2](X11 server required to see the imshow window): Real-time inference.
# You may need to install X11 server locally:
# sudo apt install xorg openbox xauth
xhost +; docker run --rm --gpus all -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix tensorlayer/hyperpose --imshow


# [Example 3]: Camera + imshow window
xhost +; docker run --name pose-camera --rm --gpus all -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix --device=/dev/video0:/dev/video0 tensorlayer/hyperpose --source=camera --imshow
# To quit this image, please type `docker kill pose-camera` in another terminal.


# [Dive into the image]
xhost +; docker run --rm --gpus all -it -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix --device=/dev/video0:/dev/video0 --entrypoint /bin/bash tensorlayer/hyperpose
# For users that cannot access a camera or X11 server. You may also use:
# docker run --rm --gpus all -it --entrypoint /bin/bash tensorlayer/hyperpose

For more details, please check here.

Performance

We compare the prediction performance of HyperPose with OpenPose 1.6 and TF-Pose. We implement the OpenPose algorithms with different configurations in HyperPose. The test-bed has Ubuntu18.04, 1070Ti GPU, Intel i7 CPU (12 logic cores).

HyperPose Configuration DNN Size Input Size HyperPose Baseline
OpenPose (VGG) 209.3MB 656 x 368 27.32 FPS 8 FPS (OpenPose)
OpenPose (TinyVGG) 34.7 MB 384 x 256 124.925 FPS N/A
OpenPose (MobileNet) 17.9 MB 432 x 368 84.32 FPS 8.5 FPS (TF-Pose)
OpenPose (ResNet18) 45.0 MB 432 x 368 62.52 FPS N/A

Accuracy

We evaluate accuracy of pose estimation models developed by hyperpose (mainly over Mscoco2017 dataset). the development environment is Ubuntu16.04, with 4 V100-DGXs and 24 Intel Xeon CPU. The training procedure takes 1~2 weeks using 1 V100-DGX for each model. (If you want to train from strach, loading the pretrained backbone weight is recommended.)

HyperPose Configuration DNN Size Input Size Evaluate Dataset Accuracy-hyperpose (Iou=0.50:0.95) Accuracy-original (Iou=0.50:0.95)
Openpose (vgg19) 199 MB 432 x 368 Mscoco2014(random 1160 images) 57.0 map 58.4 map
LightweightOpenpose (dailated mobilenet) 17.7 MB 432 x 368 Mscoco2017(all 5000 images) 46.1 map 42.8 map
LightweightOpenpose (mobilenet-thin) 17.4 MB 432 x 368 Mscoco2017(all 5000 images) 44.2 map 28.06 map (Mscoco2014)
LightweightOpenpose (tinyvgg) 23.6 MB 432 x 368 Mscoco2017(all 5000 images) 47.3 map -
LightweightOpenpose (resnet50) 42.7 MB 432 x 368 Mscoco2017(all 5000 images) 48.2 map -
PoseProposal (resnet18) 45.2 MB 384 x 384 MPII(all 2729 images) 54.9 map (Pckh) 72.8 map (Pckh)

新宝岛 with HyperPose(Lightweight OpenPose model)

License

HyperPose is open-sourced under the Apache 2.0 license.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].