Seminar_Template (3)
Seminar_Template (3)
SEMINAR REPORT
ON
BACHELOR OF ENGINEERING
INFORMATION TECHNOLOGY
BY
P:F-SMR-UG/08/R0
SCTR’s PUNE INSTITUTE OF COMPUTER TECHNOLOGY
DEPARTMENT OF INFORMATION TECHNOLOGY
CERTIFICATE
Submitted by
Dr. S. T. Gandhe
Principal
Date:
Place:
P:F-SMR-UG/08/R0 i
Acknowledgement
I extend my deepest thanks to Dr. Emmanuel Mark, my seminar guide, for his invaluable guid-
ance, insightful critiques, and steadfast support throughout this seminar. His expertise played a
crucial role in shaping the course of my research, and his encouragement motivated me to ex-
amine the topic of bias and bias mitigation in healthcare AI from a critical and comprehensive
perspective.
I am also sincerely thankful to Mr. Ravindra B. Murumkar, the seminar reviewer, for his de-
tailed feedback and helpful suggestions, which significantly improved the quality of this work.
His thoughtful observations offered a clear path during the revision process. Additionally, I
would like to express my gratitude to Dr. Archana Ghotkar, Head of the Department, for her
administrative support and for providing the academic resources needed during the seminar.
Her leadership and guidance ensured an environment conducive to academic growth.
Finally, I want to acknowledge the academic and technical staff of the department for their
assistance in various ways throughout the research process, and I am deeply thankful to my
family and friends for their unwavering support and encouragement during this seminar.
ii
Abstract
The AI Virtual Mouse uses computer vision to track hand movements and translate them into
cursor movements on a screen. It is designed to be easy to use, allowing users to control
their computer without a physical mouse. This system has been developed using Python and
the OpenCV library, and it applies techniques such as hand detection, feature extraction, and
classification. The system is known to work well in various lighting conditions, different back-
grounds, and with different hand sizes.In this seminar, I explore the AI Virtual Mouse as a new
way to interact with computers, which can be especially useful for people with disabilities or
those who prefer using gestures. The virtual mouse processes live images continuously, apply-
ing filters and conversions. After processing, it identifies the hand’s position based on specific
colors in the frames, allowing for gesture-based control.The purpose of this seminar is to exam-
ine a technological innovation that enables users to work without a traditional mouse, offering
benefits like saving time and money. The system’s performance has been tested for accuracy,
speed, and reliability and is compared to other virtual mouse systems.Additionally, the seminar
discusses how the system matches current colors in the frames to a set of predefined patterns,
where each pattern corresponds to a specific mouse action. When a match is detected, the sys-
tem executes the command on the user’s computer.
iii
Contents
Certificate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . i
Acknowledgement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ii
Abstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iii
Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iv
List of Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vi
List of Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii
Abbreviations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . viii
1 Introduction 1
1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.3 Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.4 Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2 Literature Survey 3
3 Methodologies 5
3.1 Framework/Basic Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.1.1 Input Device (Camera/Webcam) . . . . . . . . . . . . . . . . . . . . . 5
3.1.2 Hand Detection Module . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.1.3 Gesture Recognition Module . . . . . . . . . . . . . . . . . . . . . . . 6
3.1.4 Cursor Movement and Control . . . . . . . . . . . . . . . . . . . . . . 6
3.2 Different Approaches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.2.1 Color Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.2.2 Machine Learning Algorithms . . . . . . . . . . . . . . . . . . . . . . 7
3.3 State-of-the-art Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.3.1 Convolutional Neural Networks (CNNs) . . . . . . . . . . . . . . . . . 8
3.3.2 Support Vector Machines (SVMs) . . . . . . . . . . . . . . . . . . . . 8
3.3.3 K-Nearest Neighbors (KNN) . . . . . . . . . . . . . . . . . . . . . . . 9
3.4 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.4.1 Comparison of Algorithms . . . . . . . . . . . . . . . . . . . . . . . . 9
iv
4 Implementation 11
4.1 Algorithm/Methodologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4.1.1 Hand Detection Algorithm . . . . . . . . . . . . . . . . . . . . . . . . 11
4.1.2 Gesture Recognition Algorithm . . . . . . . . . . . . . . . . . . . . . 11
4.1.3 Feature Extraction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
4.2 Proposed Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
4.2.1 Verification Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4.3 Result . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4.3.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4.3.2 System Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
5 Applications 15
5.1 State-of-the-art Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
5.1.1 Touchless Computing Interfaces . . . . . . . . . . . . . . . . . . . . . 15
5.1.2 Gaming and Virtual Reality (VR) . . . . . . . . . . . . . . . . . . . . 15
5.1.3 Assistive Technology . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
5.1.4 Smart Home Control . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
5.1.5 Presentation Control . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
5.1.6 Interactive Art Installations . . . . . . . . . . . . . . . . . . . . . . . . 16
5.1.7 Augmented Reality (AR) . . . . . . . . . . . . . . . . . . . . . . . . . 16
5.1.8 Retail and Marketing . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
5.2 Challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
5.2.1 Accuracy of Gesture Recognition . . . . . . . . . . . . . . . . . . . . 16
5.2.2 Real-time Processing and Latency . . . . . . . . . . . . . . . . . . . . 16
5.2.3 Environmental Factors . . . . . . . . . . . . . . . . . . . . . . . . . . 16
5.2.4 User Variability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
5.2.5 Fatigue and Usability . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
5.2.6 Integration with Operating Systems . . . . . . . . . . . . . . . . . . . 17
5.2.7 Data Privacy and Security . . . . . . . . . . . . . . . . . . . . . . . . 17
5.2.8 Hardware Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . 17
References 19
v
List of Figures
vi
List of Tables
vii
Abbreviations
viii
Seminar Report AI Based Virtual Mouse
1. Introduction
1.1 Introduction
In computer terminology, a mouse is a device that detects two-dimensional movement relative
to a surface. This motion is converted into cursor movement on a display, allowing users to
interact with the Graphical User Interface (GUI) of a computer. It is hard to imagine life today
without computers, as they have become essential in almost every aspect of our daily routines.
People of all ages rely on computers for various tasks. Consequently, Human-Computer Inter-
action (HCI) has emerged as a significant field of study. The introduction of the laser mouse
in 2004 addressed the limitations of the optical mouse, improving movement accuracy even on
reflective surfaces. However, physical and technical limitations still exist. With the arrival of
touch screen technology on mobile devices, there is a growing demand for similar technology
on desktop computers. While touch screens are available for desktops, their cost can be pro-
hibitive.This seminar focuses on developing a finger tracking-based virtual mouse application
using a standard webcam. By employing object tracking techniques from Artificial Intelligence
and the OpenCV library in Python, this project aims to provide an alternative to touch screens.
The virtual mouse will utilize a webcam to track user gestures, process them, and translate
them into pointer movement, mimicking the function of a physical mouse.
1.2 Motivation
The Virtual Mouse is likely to replace traditional physical mice in the near future as people seek
to interact with technology without needing physical peripherals, like keyboards or remote con-
trols. This approach not only enhances convenience but also reduces costs. Moreover, in light
of the ongoing global health concerns due to the COVID-19 pandemic, a touchless computing
solution offers a safer alternative by minimizing the risk of germ transmission associated with
shared devices
1.3 Objectives
The objective of this seminar is to create a Virtual Mouse application that highlights several
important programming concepts. The key goals of this project are:
1. To learn how a virtual mouse uses finger tracking.
4. To understand the user experience of using a virtual mouse compared to a regular mouse.
1.4 Scope
The scope of this seminar is to discuss the concept of a virtual mouse that operates without
physical interaction with devices or screens. This discussion is particularly relevant in today’s
context, where minimizing touch on shared surfaces is important to reduce the risk of spreading
infections during the COVID-19 pandemic. The seminar will cover the potential of a virtual
mouse to enhance user convenience while allowing accurate interaction with computer systems.
Additionally, this seminar will explore how the virtual mouse could be used to improve Human-
Computer Interaction (HCI) and its implications for future technology.[8]
2. Literature Survey
In the field of hand gesture recognition, numerous research studies have significantly advanced
the development of virtual mouse technology and other human-computer interaction systems.
Dudhapachare and Vaidya’s paper, titled Gesture-Controlled Virtual Mouse (2023) [1],
presented a novel approach to controlling a computer’s cursor using only hand gestures. Their
system leveraged computer vision techniques to recognize various hand movements, translating
them into mouse actions like clicking and scrolling. The paper demonstrated the potential for
gesture recognition to replace traditional hardware devices, focusing on creating a low-cost,
real-time system that can function efficiently in varied lighting conditions. Their work paved
the way for gesture-based input in everyday computing tasks, showing promise for users who
want a touchless interaction method.
Reddy et al., in their paper Gesture-Controlled Virtual Mouse with the Support of Voice
Assistant (2022) [2], developed an innovative system that combined both gesture recognition
and voice commands to provide a more comprehensive control interface. The integration of
a voice assistant allowed for hands-free interaction, while gestures were used for basic mouse
functionalities such as dragging, dropping, and selection. This research explored the benefits
of multimodal interaction, enhancing the user experience by enabling both auditory and visual
inputs, making it a valuable solution for people with disabilities or in hands-busy environments.
Huu and Ngoc, in their work Hand Gesture Recognition Algorithm Using SVM and HOG
Model for Control of Robotic System (2021) [3], proposed a gesture recognition algorithm
based on Support Vector Machines (SVM) and Histogram of Oriented Gradients (HOG). The
paper focused on developing an accurate and robust method for recognizing gestures, specifi-
cally for controlling robotic systems. Their approach demonstrated high accuracy in detecting
hand movements, even in complex environments with varying lighting and background condi-
tions. The study provided insights into how SVMs and HOG features can improve the reliability
of gesture recognition in both robotic applications and virtual mouse systems.
Tran et al., in their study Real-time Virtual Mouse System Using RGB-D Images and
Fingertip Detection (2021) [4], introduced a system that utilized RGB-D imaging technology
to detect and track fingertips in real-time. This method allowed for more precise interaction
with digital interfaces by identifying the exact position of the user’s fingertips, enabling fine
control of a virtual mouse. The use of depth information helped overcome challenges associated
with traditional 2D image processing, such as occlusion and background noise. This paper
highlighted how combining RGB and depth data could improve gesture recognition accuracy
in real-world applications, particularly in virtual environments and gaming.
Finally, Rajee et al. contributed to the field with their research on Artificial Intelligence Vir-
tual Mouse (2023) [5]. This paper explored how AI algorithms can enhance the performance of
virtual mouse systems by enabling the system to learn from user interactions. Their approach
used machine learning models to improve gesture detection accuracy over time, adapting to
individual user behaviors and preferences. By incorporating AI, the system could predict user
actions and offer more seamless control, making it highly adaptable and personalized. This
research highlighted the importance of AI in making virtual mouse systems more efficient,
reliable, and user-friendly.
This collection of studies underscores the diverse methodologies and challenges in gesture
recognition systems, such as accuracy limitations and complexity of gestures. These findings
provide a foundational understanding as we explore the potential of virtual mouse technology
in this seminar.
3. Methodologies
The AI virtual mouse system is based on the frames that have been captured by the webcam in
a laptop or PC. By using the Python computer vision library OpenCV, the video capture object
is created and the web camera will start capturing video. The web camera captures and passes
the frames to the AI virtual system. Capturing the Video and Processing. The AI virtual mouse
system uses the webcam where each frame is captured till the termination of the program. The
video frames are processed from BGR to RGB color space to find the hands in the video frame
by frame.
• Techniques include:
This simplified architecture highlights the essential components of the AI Virtual Mouse,
focusing on its functionality and interactions with the user and the operating system.
• HSV Color Space: Transforming the RGB color model to HSV to better segment skin
tones.[4]
• Thresholding: Setting thresholds for hue, saturation, and value to filter out background
noise.
• Advantages:
– Simple to implement.
– Fast processing times.
• Limitations:
• Support Vector Machines (SVM): Effective for classification tasks, particularly in high-
dimensional spaces.[3]
• Advantages:
• Limitations:
• Description: CNNs use convolutional layers to automatically extract features from im-
ages, followed by fully connected layers to classify the gestures.
• Complexity Analysis:
– Space Complexity: The space complexity primarily depends on the number of pa-
rameters, typically O(K · D), where K is the number of filters and D is the dimen-
sions of the input.
• Description: SVMs find a hyperplane that best separates different classes in the feature
space, maximizing the margin between classes.[3]
• Complexity Analysis:
– Time Complexity: The time complexity is generally O(N 2 · D) for training, where
N is the number of training samples and D is the number of features. In practice, it
may be O(N 3 ) due to the use of quadratic programming.
– Space Complexity: The space complexity is O(N ), as it requires storing the support
vectors.
• Description: KNN classifies a sample based on the majority class among its k nearest
neighbors.
• Complexity Analysis:
– Time Complexity: The time complexity for prediction is O(N · D), where N is the
number of training samples and D is the dimensionality of the data. The training
time is negligible as there is no explicit training phase.
– Space Complexity: The space complexity is O(N ) for storing the training dataset.
In summary, the choice of algorithm significantly affects the performance and efficiency of
the AI virtual mouse system. Understanding these algorithms and their complexities is crucial
for selecting the appropriate method for hand gesture recognition and ensuring optimal system
performance.
3.4 Discussion
This section examines the different approaches and algorithms used in the development of AI
virtual mouse systems. By assessing the strengths and limitations of these methodologies, we
can gain insights into their relevance and effectiveness in practical applications.
In conclusion, the choice of algorithm for an AI virtual mouse system should be dictated by
the specific requirements of the application, including factors such as data availability, required
accuracy, and system constraints. Balancing these elements will lead to more effective and
efficient gesture recognition systems that enhance user interaction with technology.
4. Implementation
4.1 Algorithm/Methodologies
In this section, the fundamental methodologies and algorithms are outlined which can be used
for development of the AI Virtual Mouse system. The aim is to establish an efficient and
user-friendly interface that could translate hand gestures into mouse commands using basic
computer vision techniques.
[4]The first step in our methodology is hand detection. We will utilize basic color detection and
contour detection methods:
• Color Detection: We will implement simple color thresholding to detect skin-toned re-
gions in the video feed. This method involves converting the image to the HSV color
space and setting a range for skin colors. This approach is computationally light and can
operate in real-time.
• Contour Detection: Once we have identified potential skin regions, we will use contour
detection to outline the shape of the hand. This helps in distinguishing the hand from the
background and allows for better tracking of movements.
[5]For recognizing gestures, we will use basic techniques that do not require complex models:
• Simple Rule-Based Approach: Gestures will be recognized based on simple rules, such
as the angle of fingers or the number of fingers extended. For example, a single finger
pointing could be recognized as a ”move” command, while a fist could indicate a ”click.”
• Fingertip Location: The coordinates of the fingertips will be extracted from the detected
contours, providing information about cursor movement.
• Hand Position: The overall position of the hand will be tracked to help determine the
screen area being controlled.
In summary, this approach emphasizes the use of simple algorithms and methodologies to
create an effective AI Virtual Mouse system. By leveraging straightforward techniques, we can
ensure a user-friendly experience while maintaining responsiveness and accuracy in gesture
recognition.
• Limited Accuracy: Many hand detection systems struggle with accuracy, especially
under varying lighting conditions, complex backgrounds, or differences in skin tone.
This often leads to incorrect or missed gesture recognition.
• Lack of Intuitive Gestures: Some systems rely on complex gestures that are difficult
for users to remember or perform naturally, reducing ease of use and accessibility.
• Latency Issues: There can be noticeable delays between gesture input and the system’s
response, which can make the interaction feel unresponsive and frustrating for users.
In response to these challenges, this report proposes a simpler, more accessible AI Virtual
Mouse system using computer vision techniques. The focus is on employing lightweight, real-
time algorithms that prioritize ease of use and accessibility.
The system could utilize a webcam to capture video input, with basic skin color detection
used to identify hand regions. By converting the video frames from RGB to HSV color space,
skin-colored pixels could be isolated through color thresholding, creating a binary mask that
highlights the hand. Contour detection would then help track the position and shape of the
hand, reducing the impact of background complexity.
For gesture recognition, instead of relying on complex models, simple template matching
could be used to recognize basic gestures like pointing and clicking. This approach avoids the
high computational cost of more advanced techniques while still allowing for reliable interac-
tion.
To map these gestures to actions, critical features like fingertip positions would be extracted.
The index finger could control the cursor, while gestures like a closed fist or two fingers could
trigger mouse clicks. This solution also includes basic scrolling actions, driven by vertical hand
movements.
While the system is theoretical, future improvements could involve machine learning for
more adaptive gesture recognition and the addition of more intuitive gestures based on user
feedback. User testing would help refine the solution further, ensuring it meets user needs in
terms of ease of use, responsiveness, and accuracy.
Software Requirement
The following software is required for the development of the Virtual Mouse application:
• Python Language: The Virtual Mouse application will be coded using Python in Mi-
crosoft Visual Studio, an integrated development environment (IDE). Python provides
numerous operators, including comparisons, logical operations, bit manipulation, and
basic arithmetic.
Software Specifications:
• Language: Python
• c) Users can interact with the software from varying distances (near or far).
4.3 Result
4.3.1 Overview
The concept of an AI Virtual Mouse system is designed to control a computer cursor using hand
gestures, offering an alternative to traditional input devices. This can be applied in various real-
time applications such as controlling a computer cursor or interacting with smart televisions.
The simplicity of the system reduces the need for external hardware, relying solely on a webcam
to track finger movements and perform the necessary operations on the screen.
Table 4.1: Hypothetical Performance Metrics for the AI Virtual Mouse System
These values are speculative and would require actual implementation and testing for verifica-
tion.
5. Applications
5.1 State-of-the-art Applications
Artificial Intelligence (AI) and computer vision have enabled numerous applications for vir-
tual mouse systems. These applications allow users to interact with technology through hand
gestures. Here are some key applications of virtual mouse systems:
5.2 Challenges
Despite advancements in AI-driven virtual mouse systems, several challenges must be ad-
dressed for effective functioning:
Bibliography
[1] Rajat Dudhapachare and Nihal Vaidya, ”Gesture-Controlled Virtual Mouse”, vol. 11, Issue
I, 2023.
[2] Cherukupally Karunakar Reddy, Suraj Janjirala, Kevulothu Bhanu Prakash, ”Gesture Con-
trolled Virtual Mouse with the Support of Voice Assistant”, vol. 10, Issue VI, 2022.
[3] Phat Ngyyen Huu, Tan Phung Ngoc, ”Hand Gesture Recognition Algorithm Using SVM
and HOG Model for Control of Robotic System”, vol. 2021, Issue I, 2021.
[4] Dinh-Son Tran, Ngoc-Huynh Ho, Hyung-Jeong Yang, Soo-Hyung Kim, Guee Sang Lee,
”Real-time Virtual Mouse System Using RGB-D Images and Fingertip Detection”, vol. 80,
pp. 10473-10490, 2021.
[5] Alimul Rajee, Mohammad Likhan, Nurul Ahad Farhan, Israth Jahan, ”Artificial Intelli-
gence Virtual Mouse”, DOI: 10.13140/RG.2.2.35877.06884/1, 2023.
[6] Arun Karthik. V, Barath. S, Guru Harrish. N, Prageesh. S, ”Virtual Mouse”, Vol 4, no 10,
pp 1215-1219, 2023.