js-handtracking

by jcmellado

jcmellado /js-handtracking

JavaScript Hand Tracking

137 Stars 33 Forks Last release: Not found Other 8 Commits 0 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

JavaScript library for hand tracking applications featuring:

  • Skin detection
  • Erode / Dilate operations
  • Contour extraction
  • Contour optimization
  • Convex Hull calculation
  • Convexity Defects calculation

Demo

Basic Demo, webcam basic demo

Fast Demo, erode and dilate operations are disabled

Video

js-handtracking

Usage

Create one

HT.Tracker
object:
var tracker = new HT.Tracker();

Call

detect
function:
var candidate = tracker.detect(imageData);

imageData
argument must be a valid
ImageData
canvas object.

candidate
result (if any) will be a
HT.Candidate
object with the following properties:
  • contour
    : Optimized contour as a plain array of two dimensional vectors
  • hull
    : Convex hull as a plain array of two dimensional vectors
  • defects
    : Convexity defects as a plain array of objects

defects
objects have the following properties:
  • start
    : Start point of hull segment as a two dimensional vector
  • end
    : End point of hull segment as a two dimensional vector
  • depthPoint
    : Deeper defect point as a two dimensional vector
  • depth
    : Minimum distance from hull segment to deeper defect point

Skin detection

The library converts RGB images to HSV one. V and H channels are used to characterize the colors range for skin detection:

v >= 15 and v <= 250

h >= 3 and h <= 33

Note that source alpha channel is ignored.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.