Git Product home page Git Product logo

openpose-hand-detection's Introduction

Openpose-Hand-Detection

CMU Perpetual Computing Lab Openpose modifications for v1.4.0 to add Python wrapper for Hand point detection

Licence: https://github.com/CMU-Perceptual-Computing-Lab/openpose/blob/master/LICENSE

Environment for this build:

Ubuntu 18.04
Python 3.5.3
OpenCV 4.0.0-alpha
Openpose 1.4.0 [https://github.com/ortegatron/hand_standalone]

The current openpose version by CMU doesn't have a python wrapper for Hand point detection. Ortegatron created a nice version but based on Openpose v1.3.0. I took Ortegratron's code and merge into 1.4.0 and rebuild openpose. Placed the generated _openpose.so on the openpose home directory

execute the program op-hands-one-ok.py to see hard coded hands extraction of COCO hand pose

image

COCO Hand model has 21 points as shown below. The left hands numpy array returned from the forward_hands function can be used to calculate the angles of the fingers for certain recognition of finger gestures.

image

Openpose is not the only method for hand fingers detection, pure OpenCV has imbedded DNN codes [cv2.dnn.blobFromImage] from v3.4 onwards and download pose_iter_102000.caffemodel weights file, one can do a net.forward to extract out the hand points. As always, the use of a single image is limited in application. Using a webcam will allow a stream of hands and the speed of prediction will be more important and techniques can be added to increase the accuracy such as greenscreening the background before detection and python multithreading/processing.

image

Openpose released a new python wrapper. I updated the sample code with a webcam viewer https://github.com/StrongRay/Openpose-Hand-Detection/blob/master/web-hand.py Here's how the hands are detected with a hardcoded handRectangle.

webcam sample capture

Latest Deep Dive into fingers

An interesting exploration into fingers. Extraction seemed to be orientated wrongly. Discovered that lighting makes alot of difference to the detection of fingers. Will move next into finger-straightness-with-tolerance next.

webcam sample capture

Upgraded from UBUNTU 16 to 17 and rebuild OpenCV 4.1 and recompile Openpose 1.5 Look at the speed now

webcam sample capture

openpose-hand-detection's People

Contributors

strongray avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.