Skip to content

vaibhavgupta0403/Virtual_Mouse_With_Chatbot

Repository files navigation

Virtual_Mouse_With_Chatbot

Gesture Controlled Virtual Mouse makes human computer interaction simple by making use of Hand Gestures and Voice Commands. The computer requires almost no direct contact. All i/o operations can be virtually controlled by using static and dynamic hand gestures along with a voice assistant. This project makes use of the state-of-art Machine Learning and Computer Vision algorithms to recognize hand gestures and voice commands, which works smoothly without any additional hardware requirements. It leverages models such as CNN implemented by MediaPipe running on top of pybind11. It consists of two modules: One which works direct on hands by making use of MediaPipe Hand detection, and other which makes use of Gloves of any uniform color. Currently it works on Windows platform.

Gesture Recognition:

Neutral Gesture Palm
Neutral Gesture. Used to halt/stop execution of current gesture.
Move Cursor Move Cursor
Cursor is assigned to the midpoint of index and middle fingertips. This gesture moves the cursor to the desired location. Speed of the cursor movement is proportional to the speed of hand.
Left Click Left Click
Gesture for single left click
Right Click Right Click
Gesture for single right click
Double Click Double Click
Gesture for double click
Scrolling Scrolling
Dynamic Gestures for horizontal and vertical scroll. The speed of scroll is proportional to the distance moved by pinch gesture from start point. Vertical and Horizontal scrolls are controlled by vertical and horizontal pinch movements respectively.
Drag and Drop Drag and Drop
Gesture for drag and drop functionality. Can be used to move/tranfer files from one directory to other.
Multiple Item Selection Multiple Item Selection
Gesture to select multiple items
Volume Control Volume Control
Dynamic Gestures for Volume control. The rate of increase/decrease of volume is proportional to the distance moved by pinch gesture from start point.
Brightness Control Brightness Control
Dynamic Gestures for Brightness control. The rate of increase/decrease of brightness is proportional to the distance moved by pinch gesture from start point.

Voice Assistant ( Proton ):

Launch / Stop Gesture Recognition launch stop gesture recognition
  • Proton Launch Gesture Recognition
    Turns on webcam for hand gesture recognition.
  • Proton Stop Gesture Recognition
    Turns off webcam and stops gesture recognition. (Termination of Gesture controller can also be done via pressing Enter key in webcam window)

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages