All Projects → ildoonet → Tf Pose Estimation

ildoonet / Tf Pose Estimation

Licence: apache-2.0
Deep Pose Estimation implemented using Tensorflow with Custom Architectures for fast inference.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Tf Pose Estimation

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 (-96.65%)
Mutual labels:  convolutional-neural-networks, pose-estimation, human-pose-estimation, mobilenet, mobile
Ros Openpose
CMU's OpenPose for ROS
Stars: ✭ 81 (-97.9%)
Mutual labels:  robotics, ros, convolutional-neural-networks, pose-estimation
Poseestimationformobile
💃 Real-time single person pose estimation for Android and iOS.
Stars: ✭ 783 (-79.69%)
Mutual labels:  convolutional-neural-networks, pose-estimation, human-pose-estimation
Alphapose
Real-Time and Accurate Full-Body Multi-Person Pose Estimation&Tracking System
Stars: ✭ 5,697 (+47.74%)
Mutual labels:  pose-estimation, human-pose-estimation, realtime
Cherry Autonomous Racecar
Implementation of the CNN from End to End Learning for Self-Driving Cars on a Nvidia Jetson TX1 using Tensorflow and ROS
Stars: ✭ 294 (-92.38%)
Mutual labels:  robotics, ros, convolutional-neural-networks
Embedded Ai.bi Weekly
嵌入式AI公众号: NeuralTalk,Weekly report and awesome list of embedded-ai.
Stars: ✭ 331 (-91.42%)
Mutual labels:  mobilenet, embedded, mobile
Sod
An Embedded Computer Vision & Machine Learning Library (CPU Optimized & IoT Capable)
Stars: ✭ 1,460 (-62.14%)
Mutual labels:  convolutional-neural-networks, image-processing, embedded
Tf Mobilenet V2
Mobilenet V2(Inverted Residual) Implementation & Trained Weights Using Tensorflow
Stars: ✭ 85 (-97.8%)
Mutual labels:  convolutional-neural-networks, cnn, mobilenet
rmpe dataset server
Realtime Multi-Person Pose Estimation data server. Used as a training and validation data provider in training process.
Stars: ✭ 14 (-99.64%)
Mutual labels:  realtime, human-pose-estimation, pose-estimation
Deepseqslam
The Official Deep Learning Framework for Route-based Place Recognition
Stars: ✭ 49 (-98.73%)
Mutual labels:  robotics, convolutional-neural-networks, cnn
FastPose
pytorch realtime multi person keypoint estimation
Stars: ✭ 36 (-99.07%)
Mutual labels:  realtime, human-pose-estimation, pose-estimation
Bonnet
Bonnet: An Open-Source Training and Deployment Framework for Semantic Segmentation in Robotics.
Stars: ✭ 274 (-92.89%)
Mutual labels:  robotics, ros, convolutional-neural-networks
Artificio
Deep Learning Computer Vision Algorithms for Real-World Use
Stars: ✭ 326 (-91.55%)
Mutual labels:  convolutional-neural-networks, image-processing
Poseflow
PoseFlow: Efficient Online Pose Tracking (BMVC'18)
Stars: ✭ 330 (-91.44%)
Mutual labels:  pose-estimation, realtime
Neuralnetwork.net
A TensorFlow-inspired neural network library built from scratch in C# 7.3 for .NET Standard 2.0, with GPU support through cuDNN
Stars: ✭ 392 (-89.83%)
Mutual labels:  convolutional-neural-networks, cnn
Ros Sensor Fusion Tutorial
An in-depth step-by-step tutorial for implementing sensor fusion with robot_localization! 🛰
Stars: ✭ 306 (-92.06%)
Mutual labels:  robotics, ros
Gpd
Detect 6-DOF grasp poses in point clouds
Stars: ✭ 330 (-91.44%)
Mutual labels:  robotics, ros
Ios 10 Sampler
Code examples for new APIs of iOS 10.
Stars: ✭ 3,341 (-13.36%)
Mutual labels:  convolutional-neural-networks, cnn
Personality Detection
Implementation of a hierarchical CNN based model to detect Big Five personality traits
Stars: ✭ 338 (-91.23%)
Mutual labels:  convolutional-neural-networks, cnn
Image pipeline
An image processing pipeline for ROS.
Stars: ✭ 343 (-91.1%)
Mutual labels:  ros, image-processing

tf-pose-estimation

'Openpose', human pose estimation algorithm, have been implemented using Tensorflow. It also provides several variants that have some changes to the network structure for real-time processing on the CPU or low-power embedded devices.

You can even run this on your macbook with a descent FPS!

Original Repo(Caffe) : https://github.com/CMU-Perceptual-Computing-Lab/openpose

CMU's Original Model on Macbook Pro 15" Mobilenet-thin on Macbook Pro 15" Mobilenet-thinon Jetson TX2
cmu-model mb-model-macbook mb-model-tx2
~0.6 FPS ~4.2 FPS @ 368x368 ~10 FPS @ 368x368
2.8GHz Quad-core i7 2.8GHz Quad-core i7 Jetson TX2 Embedded Board

Implemented features are listed here : features

Important Updates

Install

Dependencies

You need dependencies below.

Pre-Install Jetson case

$ sudo apt-get install libllvm-7-ocaml-dev libllvm7 llvm-7 llvm-7-dev llvm-7-doc llvm-7-examples llvm-7-runtime
$ export LLVM_CONFIG=/usr/bin/llvm-config-7 

Install

Clone the repo and install 3rd-party libraries.

$ git clone https://www.github.com/ildoonet/tf-pose-estimation
$ cd tf-pose-estimation
$ pip3 install -r requirements.txt

Build c++ library for post processing. See : https://github.com/ildoonet/tf-pose-estimation/tree/master/tf_pose/pafprocess

$ cd tf_pose/pafprocess
$ swig -python -c++ pafprocess.i && python3 setup.py build_ext --inplace

Package Install

Alternatively, you can install this repo as a shared package using pip.

$ git clone https://www.github.com/ildoonet/tf-pose-estimation
$ cd tf-pose-estimation
$ python setup.py install  # Or, `pip install -e .`

Models & Performances

See experiments.md

Download Tensorflow Graph File(pb file)

Before running demo, you should download graph files. You can deploy this graph on your mobile or other platforms.

  • cmu (trained in 656x368)
  • mobilenet_thin (trained in 432x368)
  • mobilenet_v2_large (trained in 432x368)
  • mobilenet_v2_small (trained in 432x368)

CMU's model graphs are too large for git, so I uploaded them on an external cloud. You should download them if you want to use cmu's original model. Download scripts are provided in the model folder.

$ cd models/graph/cmu
$ bash download.sh

Demo

Test Inference

You can test the inference feature with a single image.

$ python run.py --model=mobilenet_thin --resize=432x368 --image=./images/p1.jpg

The image flag MUST be relative to the src folder with no "~", i.e:

--image ../../Desktop

Then you will see the screen as below with pafmap, heatmap, result and etc.

inferent_result

Realtime Webcam

$ python run_webcam.py --model=mobilenet_thin --resize=432x368 --camera=0

Apply TensoRT

$ python run_webcam.py --model=mobilenet_thin --resize=432x368 --camera=0 --tensorrt=True

Then you will see the realtime webcam screen with estimated poses as below. This Realtime Result was recored on macbook pro 13" with 3.1Ghz Dual-Core CPU.

Python Usage

This pose estimator provides simple python classes that you can use in your applications.

See run.py or run_webcam.py as references.

e = TfPoseEstimator(get_graph_path(args.model), target_size=(w, h))
humans = e.inference(image)
image = TfPoseEstimator.draw_humans(image, humans, imgcopy=False)

If you installed it as a package,

import tf_pose
coco_style = tf_pose.infer(image_path)

ROS Support

See : etcs/ros.md

Training

See : etcs/training.md

References

See : etcs/reference.md

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].