All Projects → ildoonet → Ros Openpose

ildoonet / Ros Openpose

CMU's OpenPose for ROS

Projects that are alternatives of or similar to Ros Openpose

Tf Pose Estimation
Deep Pose Estimation implemented using Tensorflow with Custom Architectures for fast inference.
Stars: ✭ 3,856 (+4660.49%)
Mutual labels:  robotics, ros, convolutional-neural-networks, pose-estimation
Bonnet
Bonnet: An Open-Source Training and Deployment Framework for Semantic Segmentation in Robotics.
Stars: ✭ 274 (+238.27%)
Mutual labels:  robotics, ros, convolutional-neural-networks
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 (+262.96%)
Mutual labels:  robotics, ros, convolutional-neural-networks
Diff drive
ROS nodes for controlling and monitoring a differential drive robot.
Stars: ✭ 77 (-4.94%)
Mutual labels:  robotics, ros
Ros Academy For Beginners
中国大学MOOC《机器人操作系统入门》代码示例 ROS tutorial
Stars: ✭ 861 (+962.96%)
Mutual labels:  robotics, ros
Navigator
NaviGator ASV on-board software
Stars: ✭ 29 (-64.2%)
Mutual labels:  robotics, ros
Pepper plymouth ros
A set of launch files and configuration files for Plymouth University's Pepper robot
Stars: ✭ 22 (-72.84%)
Mutual labels:  robotics, ros
Stag
STag: A Stable Fiducial Marker System
Stars: ✭ 75 (-7.41%)
Mutual labels:  robotics, pose-estimation
Openre
HandsFree OpenRE Tutorial
Stars: ✭ 41 (-49.38%)
Mutual labels:  robotics, ros
Ev3dev Lang Java
A project to learn Java and create software for Mindstorms Robots using hardware supported by EV3Dev & the LeJOS way.
Stars: ✭ 79 (-2.47%)
Mutual labels:  robotics, ros
Ros2 java
Java and Android bindings for ROS2
Stars: ✭ 60 (-25.93%)
Mutual labels:  robotics, ros
Joctomap
Java/Android wrapper for Octomap: an octree-based mapping library
Stars: ✭ 11 (-86.42%)
Mutual labels:  robotics, ros
Quickmcl
QuickMCL - Monte Carlo localisation for ROS
Stars: ✭ 24 (-70.37%)
Mutual labels:  robotics, ros
Pendulum
ROS, ROS2, real-time, control, pendulum
Stars: ✭ 37 (-54.32%)
Mutual labels:  robotics, ros
Champ setup assistant
CHAMP Package Config Generator
Stars: ✭ 24 (-70.37%)
Mutual labels:  robotics, ros
Deepseqslam
The Official Deep Learning Framework for Route-based Place Recognition
Stars: ✭ 49 (-39.51%)
Mutual labels:  robotics, convolutional-neural-networks
Vector ros
ROS package for Anki Vector home robot
Stars: ✭ 55 (-32.1%)
Mutual labels:  robotics, ros
Hrim
An information model for robot hardware. Facilitates interoperability across modules from different robot manufacturers. Built around ROS 2.0
Stars: ✭ 61 (-24.69%)
Mutual labels:  robotics, ros
Get Started Ros2
書籍「ROS2ではじめよう 次世代ロボットプログラミング」オンラインリソース
Stars: ✭ 65 (-19.75%)
Mutual labels:  robotics, ros
Ros best practices
Best practices, conventions, and tricks for ROS. Do you want to become a robotics master? Then consider graduating or working at the Robotics Systems Lab at ETH in Zürich!
Stars: ✭ 799 (+886.42%)
Mutual labels:  robotics, ros

openpose-ros

CMU's Openpose for ROS

posefacehands

Update Information

I re-implemented cmu's openpose in tensorflow with some modifications.

Especially, using Mobilenet's 'Depthwise Separable Convolution', I improved it to run in realtime even in an low-computation embedded deivce or only-cpu environment.

See : https://github.com/ildoonet/tf-openpose

Implementation

  • [X] Broadcasting Ros Message
  • [X] Humans Pose Estimation
  • [ ] Face Landmark
  • [ ] Hand Pose Estimation

Installation

Openpose

See Openpose.

After building openpose, set the environment variable OPENPOSE_HOME.

$ export OPENPOSE_HOME='{path/to/your/openpose/home}'

Packages

$ sudo apt-get install ros-indigo-image-common ros-indigo-vision-opencv ros-indigo-video-stream-opencv ros-indigo-image-view

Catkin Build

$ cd src
$ git clone https://github.com/ildoonet/ros-openpose
$ cd ..
$ catkin_make

Message

Parameter

  • resolution(string, default: 640x480) : input image resolution
  • net_resolution(string, default: 640x480) : network resolution
  • num_gpu(int, default: -1) : number of gpus to use. -1 indiciates 'all'.
  • num_gpu_start(int, default: 0) : first index of gpu to use.
  • model_pose(string, default: COCO) : pose estimation model name provided by openpose.
  • no_display(bool, default: false) : if true, it will launch opencv image view to show realtime estimation.
  • camera(string, default: /camera/image)
  • result_image_topic(string, default: '') : if provided, it will broadcast image with estimated pose.

Broadcast

BodyParts are stored as indexed Nose = 0 Neck = 1 RShoulder = 2 RElbow = 3 RWrist = 4 LShoulder = 5 LElbow = 6 LWrist = 7 RHip = 8 RKnee = 9 RAnkle = 10 LHip = 11 LKnee = 12 LAnkle = 13 REye = 14 LEye = 15 REar = 16 LEar = 17

Example

Launch File Example

<node name="openpose_ros_node" pkg="openpose_ros_node" type="openpose_ros_node" output="screen" required="true">
        <param name="camera" value="/videofile/image_raw" />
        <param name="result_image_topic" value="/openpose/image_raw" />
        <param name="resolution" value="480x320" />
        <param name="face" value="false" />
    </node>

Test with Camera/Video Files

$ roslaunch openpose_ros_node videostream.launch video:=0 video_visualize:=true
$ roslaunch openpose_ros_node videostream.launch video:=${filepath} video_visualize:=true

USB Camera Example

See /launch/videostream.

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