What it does
This application tracks 21 key-points on a human hand. It can also tell the angles between joints in the fingers to give a rough estimate of how straight it is, along with classifying what "type" of hand it is. This can be used for various application such as tracking flexibility, rigidness, and more!
How I built it
The wonderful people at google have a product/API called "mediapipe". Although this encompasses a large variety of offerings in computer vision and beyond, I was particularly intrigued by detecting hands in a frame using opencv. I used libraries to calculate angles between "keypoint classifiers" and vectors in python.
Challenges I ran into
Implementing the complex three-dimensional vectors in mediapipe was tough. Calculating three different axes added a layer of complexity I was not prepared for. The documentation for mediapipe is extremely comprehensive, making it tough to extract information. I was also surprised while managing the python environment, and I struggled to integrate libraries. Overcoming these challenges helped me understand the language further and improve my skills as a developer
Accomplishments I'm proud of
Successfully making a useful program! In the short time I had, I am proud to have a program that is functional and serves a purpose. I am proud to have overcome the challenges of working in a short time period, and I am super proud to have improved as a programmer.
What I learned
I learned a LOT! I learned to use open-cv in a manner that integrated various libraries such as matplotlib, numpy, uuid and many more. I also learned the fundamentals of machine learning and deep learning in a practical setting. These experiences helped me learn much more than I ever thought I could!
What's next for Hand Tracking for pre-diagnosis aid
Using the angles to make a model that can detect potential ailments!!
Log in or sign up for Devpost to join the conversation.