A practical hand tracking engine.
Note: Yoha is currently unmaintained.
Quick Links:
Installation
To get started with Yoha, you need to install the library via npm:
npm install @handtracking.io/yoha
Please note the following:
- You need to serve the files from
node_modules/@handtracking.io/yoha
since the library needs to download the model files from here. Webpack Example - You need to serve your page with https for webcam access. Webpack Example
- You should use cross-origin isolation as it improves the engine’s performance in certain scenarios. Webpack Example
Description
Yoha is a hand tracking engine built to provide practical solutions for applications that require hand tracking. It aims to be a versatile tool by focusing on specific hand poses that users and developers find beneficial. By detecting these poses, the engine allows for meaningful interactions in applications. To see Yoha in action, check out the demo.
Yoha is currently in beta.
About the Name
Yoha is short for Yobur Hand Tracking.
Language Support
Currently, Yoha is available for the web via JavaScript. More languages can be added in the future. If you’re interested in porting Yoha to another language and need assistance, feel free to reach out!
Technical Details
Yoha is built from scratch using a custom neural network trained with a unique dataset. The inference in the browser is powered by TensorFlow.js.
Features:
- Detection of 21 2D-landmark coordinates (single hand).
- Hand presence detection.
- Hand orientation (left/right hand) detection.
- Inbuilt pose detection.
Supported Hand Poses:
- Pinch (index finger and thumb touch)
- Fist
If your desired pose isn’t listed, feel free to create a new issue here.
Performance
Yoha prioritizes performance, providing a real-time user experience across a broad range of laptops and desktop devices. However, performance on mobile devices may be less optimal, which hopefully will improve with further development of inference frameworks like TensorFlow.js.
Keep in mind that native inference speed can’t be compared with the web inference speed. If you were to run Yoha natively, it would be significantly faster than running it through a web browser.
Minimal Example
- Source
- Running locally:
git clone https://github.com/handtracking-io/yoha cd yoha/example yarn yarn start
Drawing Demo
- Live Version
- Source
- Running locally:
git clone https://github.com/handtracking-io/yoha cd yoha ./download_models.sh yarn yarn start
Troubleshooting Tips
If you encounter any issues while setting up or using Yoha, consider the following troubleshooting tips:
- Ensure that you’re serving your application over HTTPS to allow webcam access.
- Check that you have installed all required dependencies from the node_modules directory.
- Verify your cross-origin isolation settings to enhance performance.
For more insights, updates, or to collaborate on AI development projects, stay connected with fxis.ai.
At fxis.ai, we believe that such advancements are crucial for the future of AI, as they enable more comprehensive and effective solutions. Our team is continually exploring new methodologies to push the envelope in artificial intelligence, ensuring that our clients benefit from the latest technological innovations.