Skip to main content

real-time hands tracker, sends joints coords over OSC

Project description

#handjoints-osc

Real-time hand tracking with MediaPipe. Sends data over OSC. Written in Python.

Installation

Recommended: make a virtual environment

python -m venv .venv source .venv/bin/activate

Install requirements:

pip install -r requirements

Arguments:

$ python main.py --help

usage: main.py [-h] [--host HOST] [--confidence CONFIDENCE] port

positional arguments: port send OSC to this port

options: -h, --help show this help message and exit --host HOST send OSC to this host --confidence CONFIDENCE, -c CONFIDENCE minimum detection confidence threshold

OSC format

  • path: /handjoints i *i* ...f
  • [0] number of detected hands
  • [1:numHands] handedness for each detected hand
  • [numHands+1:..] x and y coordinates for each joint for each hand

The program detects maximum 2 hands, each hand has 21 joints, and each joint 2 coordinates.

Arguments are all in a single list, starting with the number of hands, then handedness for each hand, and following with x and y coordinates for all joints of one hand, and then the joint of each other hand.

[nHands, ...handedness, ...coordsHand0, ...cordsHand1] coords: [j0x, j0y, j1x, j1y, j2x, j2y, ...]

If only one hand is detected, numHands + handedness + coords (21 * 2) gives 44 values. If two hands are detected, there are two handedness values, so 1 + 2 + 42 + 42 = 87 values.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

handjoints_osc-0.0.1.tar.gz (5.8 MB view hashes)

Uploaded Source

Built Distribution

handjoints_osc-0.0.1-py3-none-any.whl (5.9 MB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page