Yoha: Empowering Applications through Hand Tracking
Introduction
In the world of technology, the ability to interact with devices through touchless gestures offers a fascinating glimpse into the future of human-computer interaction. Yoha is a practical hand tracking engine designed to push the boundaries in this field. Although the project is currently unmaintained, it offers impressive capabilities that aim to support applications in creating meaningful user interactions.
What is Yoha?
Yoha stands for "Your Hand Tracking." It is a hand tracking engine specifically developed to operate effectively in real-world scenarios where hand tracking can enhance application functionalities. The essence of Yoha lies in recognizing specific hand poses that are valuable to users and developers alike. Although Yoha aspires to be a general-purpose hand tracking solution, it currently focuses on recognizing specific recognizable hand poses.
Key Features
Yoha is packed with several technical features that enhance its capabilities:
- 21 2D-Landmark Coordinates: Yoha can detect 21 different points on a hand, an essential feature for precise interaction.
- Hand Presence Detection: It can identify the presence of a hand in its frame of reference.
- Hand Orientation Recognition: Yoha can determine whether a detected hand is left or right.
- Inbuilt Pose Detection: This feature enables the engine to recognize specific hand poses.
Supported Hand Poses
Yoha currently supports the detection of two primary hand poses:
- Pinch: Recognizing a gesture where the index finger and thumb touch.
- Fist: Detecting a closed hand gesture.
Technical Details
Yoha's technology stack includes a custom neural network trained on a bespoke dataset. This provides the backbone for inference tasks carried out via JavaScript in web environments, using TensorFlow.js as the inference engine.
It is worth noting that Yoha is designed to perform efficiently on a variety of desktop and laptop devices, though performance on mobile devices may not yet match this standard.
Installation and Usage
Yoha can be easily installed using npm with the following command:
npm install @handtracking.io/yoha
- For full functionality, files must be served from the
node_modules/@handtracking.io/yoha
directory. - Web pages utilizing Yoha should be served over HTTPS to access webcam capabilities.
- Employing cross-origin isolation can boost performance in certain scenarios.
Demonstrations and Resources
Though Yoha is currently in beta and not actively maintained, several resources and demos are available for users and developers:
- Drawing Demo: A live demonstration is available showing Yoha's capabilities in action. View Live Demo
- Minimal Example: You can try a minimal example of Yoha by following the provided instructions for cloning and running the codebase locally.
Conclusion
While Yoha may not currently be undergoing development, it stands as a testament to the potential of hand tracking technology. Developers interested in porting Yoha to new languages or building upon its capabilities are encouraged to reach out to its community. Whether for educational purposes, experimentation, or future development, Yoha provides a solid foundation for anyone interested in touchless interaction systems.