Skip to content

Melaonn/AirControl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

5 Commits
Β 
Β 
Β 
Β 

Repository files navigation

βœ‹ Virtual Gesture-Based Drawing App

A real-time virtual drawing application that uses hand gestures detected through the webcam to draw on a digital canvas. Built using PyQt5, OpenCV, and MediaPipe, this project enables touchless interaction for artistic expression, presentations, or accessibility-focused UIs.


πŸ“Έ Preview

melson (1)


πŸš€ Features

  • πŸ–οΈ Gesture Recognition with MediaPipe

    • Track hand landmarks in real-time
    • Recognize gestures like "index-thumb pinch" to draw
    • with cursor as well as drawing mode (unique no one has done it)
    • Detect "pinky finger" gesture to clear the canvas.
  • 🎨 Virtual Drawing Canvas

    • Draw using hand gestures without a physical stylus
    • Custom brush colors using color picker
    • Adjustable brush size with slider
  • πŸ”„ Undo / Redo Functionality

    • Implemented using Python's deque for efficient drawing history
  • 🧠 Smooth UI with PyQt5

    • Responsive GUI with buttons, sliders, toolbars, and dialogs
    • Multithreaded video processing for performance
  • πŸ’Ύ Image Handling

    • Save your drawings as images
    • Import background images for annotation.

🧰 Tech Stack

Component Technology
Programming Language Python 3.x
GUI Framework PyQt5
Video Processing OpenCV
Gesture Detection MediaPipe (Google)
Math/Arrays NumPy
Data Structure collections.deque
Multithreading QThread, QTimer

πŸ§‘β€πŸ’» How It Works

  1. Start the script – webcam feed is displayed.
  2. MediaPipe tracks your hand in real-time.
  3. Perform the "pinch" gesture (index + thumb) to draw on the canvas.
  4. Use UI controls to:
    • Change color and brush size
    • Save or clear the canvas
    • Undo/redo your strokes

πŸ“¦ Installation

Prerequisites

Make sure Python 3.7+ is installed. install all the packages and requires a gpu for better performance

pip install pyqt5 opencv-python mediapipe numpy

About

Developed a real-time gesture-controlled desktop application using webcam input, Enabled virtual drawing and interaction using hand gestures without physical contact, Ideal for touchless user interfaces in art tools, presentations, or accessibility systems.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages