Skip to content

amolvyas-6/GestureX

Repository files navigation

GESTUREX:- Problem Statement: The project aims to design and implement a hand detection system that enables gesture-based interaction for various applications such as brightness control, volume adjustment, and mouse control. The system leverages computer vision and machine learning to provide an intuitive interface for human-computer interaction.

Background Information: Hand detection and gesture recognition systems have gained significant attention due to their applications in touchless interfaces. This project builds upon advancements in MediaPipe’s hand tracking technology and integrates gesture recognition to enable seamless interaction with devices.

  1. Objectives

Primary Objectives:

Develop a system to accurately detect and track hand landmarks using computer vision.

Implement functionalities like brightness control, volume adjustment, and mouse control based on hand gestures.

Secondary Objectives:

Enhance user experience by making the system responsive and user-friendly.

Explore the scalability of the system for other gesture-based applications.

  1. Methodology

3.1 Approach: The system is implemented using Python with OpenCV and MediaPipe. The following steps summarize the approach:

Hand detection and tracking using MediaPipe’s pre-trained models.

Gesture recognition by identifying specific hand landmarks.

Mapping gestures to control functionalities such as brightness or volume adjustment.

Flowchart:

Input Image Capture: The system captures real-time images using a webcam or similar device.

Preprocessing: The input images are preprocessed to enhance quality and prepare for analysis, including converting to RGB format.

Hand Landmark Detection: MediaPipe’s hand tracking model identifies 21 key landmarks on the hand.

Gesture Recognition: The system analyzes the spatial relationships of these landmarks to identify predefined gestures.

Action Mapping: Recognized gestures are mapped to specific actions, such as adjusting brightness or controlling mouse movement.

Output Execution: The mapped action is performed, providing immediate feedback to the user.

3.2 Procedures:

Data Collection: To build a robust gesture recognition system, diverse datasets were collected under various conditions. Images of hands in different lighting, orientations, and positions were captured. The dataset included multiple users to ensure the system could generalize across different hand sizes and shapes. Both static images and videos were used to capture dynamic gestures.

Model Training: A machine learning model was trained on the collected data to recognize predefined gestures. The training process involved:

Preprocessing: Images were normalized and resized to match the input requirements of the model. Data augmentation techniques, such as rotation and scaling, were applied to improve model robustness.

Feature Extraction: The system focused on the spatial relationships between hand landmarks to distinguish gestures. This included calculating distances and angles between specific points, such as fingertips and joints.

Training Algorithm: Supervised learning techniques were applied using a classifier like Random Forests or Support Vector Machines. The model was evaluated on a separate validation set to ensure it could accurately generalize.

System Integration: Once the model was trained, it was integrated with the application for real-time gesture recognition and control. This involved:

Connecting the trained model with the MediaPipe pipeline for continuous landmark detection.

Developing application-specific modules, such as brightnessControl.py and volumeControl.py, to map recognized gestures to actions.

Implementing a feedback loop to optimize gesture-action mapping based on user interaction.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •