Skip to main content

computer vision and machine learning library

Project description

metaidigitcv

🚀 Hand Tracking & Gesture Recognition with metaidigitcv

metaidigitcv is an advanced computer vision and machine learning library designed to detect, track, and analyze hand keypoints using MediaPipe and OpenCV. Whether you're building interactive applications, gesture-based controls, or AI-powered hand recognition systems, metaidigitcv simplifies the process with efficient hand tracking and keypoint extraction.


🔥 Features

Hand Detection – Accurately detects multiple hands in real-time.
Landmark Tracking – Tracks 21 keypoints per hand.
Finger Recognition – Identifies raised fingers for gesture recognition.
Distance Measurement – Computes distance between two keypoints.
Optimized Performance – Uses MediaPipe for fast processing.


📦 Installation

pip install metaidigitcv

Ensure you have OpenCV and MediaPipe installed:

pip install opencv-python mediapipe numpy

🎯 Quick Start

import cv2
from metaidigitcv.main import Handtracker

# Initialize the tracker
detector = Handtracker()

# Capture video
cap = cv2.VideoCapture(0)

while True:
    success, img = cap.read()
    if not success:
        break
    
    hands, img = detector.identifyHands(img)
    if hands:
        lmList = hands[0]["lmList"]  # List of hand landmarks
        print("Thumb Tip Position:", lmList[4])
    
    cv2.imshow("Hand Tracking", img)
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

cap.release()
cv2.destroyAllWindows()

✨ Key Functions

🖐 Hand Detection

hands, img = detector.identifyHands(img, draw=True)
  • Detects hands in an image/video frame.
  • Draws hand landmarks if draw=True.

🏷️ Landmark Extraction

lmList, bbox = detector.trackPosition(img)
  • Returns a list of hand landmark positions.
  • Provides the bounding box of the detected hand.

✋ Finger State Detection

fingers = detector.trackRaisedFingers(hands[0])
  • Returns a list [1, 0, 1, 1, 0] where 1 means the finger is up.

📏 Distance Calculation

length, img, points = detector.trackDistance(4, 8, img)
  • Measures the Euclidean distance between two keypoints (e.g., thumb and index finger).

📏 Angle Calculation

angle = detector.calculate_angle(point_a_coords, point_b_coords, point_c_coords)
  • Calculates the angle (in degrees) between three 3D points, with point_b_coords as the vertex.
  • point_a_coords, point_b_coords, point_c_coords should be lists or tuples of [x, y] coordinates from lmList.

📏 Text Overlay with Background

img_with_text = detector.putTextRect(img, "Hand Detected!", (50, 100), scale=1, thickness=1, 
                                     colorT=(255, 255, 255), colorR=(255, 0, 255), offset=10)
  • Draws text on the image with a customizable background rectangle.
  • Enhances text readability, especially on busy backgrounds.

🎯 Applications

🔹 Gesture-based UI controls 🎮
🔹 Sign language recognition 🤟
🔹 Virtual painting & drawing 🎨
🔹 Touchless interaction systems 🤖
🔹 AI-powered hand gesture games 🎭


📜 License

This project is licensed under the MIT License – see the LICENSE file for details.


🤝 Contributing

We welcome contributions! Feel free to fork the repository and submit a pull request.


📧 Contact

👤 Author: Suhal Samad
✉️ Email: samadsuhal@gmail.com

If you like metaidigitcvcv, don't forget to ⭐ the repository!


🚀 Let's build amazing hand-tracking applications together! 🚀

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

metaidigitcv-0.1.15.tar.gz (5.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

metaidigitcv-0.1.15-py3-none-any.whl (5.8 kB view details)

Uploaded Python 3

File details

Details for the file metaidigitcv-0.1.15.tar.gz.

File metadata

  • Download URL: metaidigitcv-0.1.15.tar.gz
  • Upload date:
  • Size: 5.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.0

File hashes

Hashes for metaidigitcv-0.1.15.tar.gz
Algorithm Hash digest
SHA256 d5e072b65cd361d8a6021c91e29ef67bb0c8b02c7afa491521f68d579e9cb3c5
MD5 4145e0c4d8b58125cf6411b9cd10a5bc
BLAKE2b-256 9d08151f4e15ceb1377c3c611d56857744ede510a0617a8159dd9de583f14395

See more details on using hashes here.

File details

Details for the file metaidigitcv-0.1.15-py3-none-any.whl.

File metadata

  • Download URL: metaidigitcv-0.1.15-py3-none-any.whl
  • Upload date:
  • Size: 5.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.0

File hashes

Hashes for metaidigitcv-0.1.15-py3-none-any.whl
Algorithm Hash digest
SHA256 f261ccc42157b04cb5cc2110f2d2c7f9291302f7c1880d6f5768c96576bd120b
MD5 f0cab859f3f8134319e7c5e535a8b6ea
BLAKE2b-256 24d833a2248bd3f5fb038f60182e874d901023ff5b169eaac94897a1ee0a85ff

See more details on using hashes here.

Supported by

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