Skip to main content

A Gestures based Hand Controlled Virtual Mouse

Project description

WaveMote🖱️👆

Version - 1.3.0.1

The mouse is the one of the wonderfull inventions of the Human Computer Interaction(HCI) Technology.

Currently we are using wired or may be wireless mouses,In real time cases some computers may not support for a physical mouse or may some users may be dealth with some hand problems or handicap and cannot use physical mouse, so this Hand controlled AI Virtual Mouse can be used to overcome this problem. Making a user to control the mouse by reducing the computer human interaction.

FUNCTIONALITIES:

-> This was built using the openCV-python and mediapipe for Detecting and processing the image and mediapipe an open source cross-platform developed by google for media processing and ready-to-use ML solutions for computer vision tasks.

-> Our Hand Controlled Virtual mouse can able to move the mouse anywhere on the screen and can able to perform the click operation.

-> Our Index finger can be used to move the mouse over the screen.

-> When Our Index finger and Thumb come close to each other or touch each other then it performs the click operation.

-> And the PyautoGUI for programmatically control the mouse and keyboard.

  • Installation and Functions
pip install WaveMote
import WaveMote as wm # pip install WaveMote
wm.mouse()
import WaveMote as wm # pip install WaveMote
wm.DetectFace()

Now coming to the code part

The Libraries that need to be installed are written in the requirements.txt file
opencv-python - 4.6.0.66
numpy - 1.23.1
matplotlib - 3.5.2
mediapipe - 0.8.10.1
pyautogui - 0.9.53
pillow - 9.2.0

Install the following necessary pip

pip install opencv-python
pip install numpy
pip install matplotlib
pip install mediapipe
pip install PyautoGUI
pip install PIL

The actual working of the mouse is based on the Hand Landmarks which can be viewed and controlled by opencv and mediapipe.

Our hand contains a total of 21 landmarks.

hand_landmarks

At First The mouse pointer movement is very bad and horrible to see so, I have added a **smoothening** factor that makes the mouse pointer move like a feather.

smoothening = 9
clocx = plocx + (index_x - plocx) /smoothening
clocy = plocy + (index_y - plocy) /smoothening
# you can multiply or divide with the smotthening

If any necessary commits are required to increase the elegance of this repo! i'm always open for a PR.

With this signing off..!!,BHARATH GUNTREDDI ..🤞

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

WaveMote-1.3.0.1.tar.gz (5.5 kB view details)

Uploaded Source

Built Distribution

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

WaveMote-1.3.0.1-py3-none-any.whl (5.4 kB view details)

Uploaded Python 3

File details

Details for the file WaveMote-1.3.0.1.tar.gz.

File metadata

  • Download URL: WaveMote-1.3.0.1.tar.gz
  • Upload date:
  • Size: 5.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.5

File hashes

Hashes for WaveMote-1.3.0.1.tar.gz
Algorithm Hash digest
SHA256 f7a337249b0ff3481c607b9a34db45cfdd37b1afdd1c540a2f4b9fbcda348aa8
MD5 d02204ecd0948758a4d8a41a066176fe
BLAKE2b-256 7a7bb8591a3a9167524d42132ab50b61aab22d1c31032ab78d3489ba1cafed85

See more details on using hashes here.

File details

Details for the file WaveMote-1.3.0.1-py3-none-any.whl.

File metadata

  • Download URL: WaveMote-1.3.0.1-py3-none-any.whl
  • Upload date:
  • Size: 5.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.5

File hashes

Hashes for WaveMote-1.3.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9c389491c47ed60f139e97499d5e5401c68bccfbd8bb9f1c186990ea04e7479d
MD5 d8f69afcd013e1c857fb12c8c6ea105d
BLAKE2b-256 c041c2ef73fcd269b091ef2f159372283ea2ed7a6c73ab616884cd317a2604ba

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