Document 8 - Donee
Document 8 - Donee
INTRODUCTION
Sign language is a key tool in order to survive in society
for hearing and handicapped persons. Linguistic
communication minimises discomfort through visual
speech instead of hearing in their day-to-day lives.
Communication is extremely important for men, as it
allows the US to determine itself. Speech is one of the
most unknottable things used among them, which is
communicating through speech, gesture, visual
communication, reading, writing or visual support.
Unfortunately, however, there is a communication gap for
the speech and hard-to-hear minority. Area unit used for
human activity with the visual aids, or interpreters of AN.
These ways, however, unit area rather cumbersome and
expensive, and cannot be used in an emergency.
Linguistic communications mainly transmit what means
by manual communication. This combines the hand
forms, directions and the movement of the hands with the
thoughts of the speaker. They are much less varied than
spoken languages. India has its own language
communication under the Indian language
communications name (ISL). Only a few colleges for deaf
students can be found in developing countries. d
1
equivalent Languages that have been signed Government
rates for adults with surface areas in developing countries
are terribly high. Ethnologue's information says that the
overall population, performance rate and variety of
teaching children among the deaf people in India are
incredibly smaller. It continues to state that official
recognition of sign languages increases significantly the
availability of interpreters and transcripts in sign
languages. Signs in the area of sign languages unit wor
appear favourable. The area of sign languages has mainly
been developed to assist deaf and dumb people. They use
a combination of hand movements, hand forms, and
orientation to provide explicit information in a chronical
and specific way. One of the languages used in Southeast
Asia is the Indian linguistic communication (ISL) system.
The boundary between ISL and alternative sign languages
is that ISL empties any temporal inflections in the
fingerprint system chart, as well as the use of each hand.
With the presence of unnaturally smart algorithms, not to
mention the provision of massive information and
enormous procedural resources, LEDs have increased
considerably in tending, robotics, automotive, HLI, etc.
The detection of hand gestures could be a hard task,
significantly because of its use of each hand the ISL
2
recognition is difficult. During this respect, however,
several studies are conducted with the victimisation
sensors (such as a glove sensor) and alternative imaging
methods (such as edge Sign Language Recognition Using
Machine Learning Algorithm Dept of CSE 10 2020-21
detection technique, etc.). But the performances in this
field have increased considerably with the new deep
learning techniques like CNN which led to many new
perspectives for the future. Many people in India have
discomfort in speech and/or hearing and use hand gestures
to talk to others. But, apart from a few, most are not
attentive to this linguistic communication and may need a
non-convenient and expensive an interpreter. This project
seeks to narrow this communication gap by developing a
package that can predict the alphanumeric gestures of the
ISL hand in real time.
1.4. Objectives
Our project aims to bridge the gap between people with
speech impairment and ordinary individuals. The main
idea for this project is to create a system that stupid
people can use their ordinary gestures to communicate
significantly with all others. SLR aims at developing
5
algorithms and methods for properly identifying and
understanding a sequence of the signs produced. Many
methods of SLR treat the problem correctly as gesture
recognition. The goal is to develop an easy-to-use
interface to understand the language of human signs. The
interface uses different classifiers to convert the sign
language into text The results are shown in the highest
precision
➢ The main purpose of this project is to thoroughly
identify hand gestures, images in order to achieve a
communication gap between an individual with a normal
hearing impairment
➢ The main aim of this project was to establish the
usability of the system for gesture recognition
➢ Pre-processing the extracted data to eliminate
unnecessary information (like removing any unnecessary
information and keeping the required database
➢ The algorithm with different features will be trained to
produce the correct output
➢ And spell correction of a word will be generated
➢ And we also add additional feature like text to speech
conversion
6
2. SYSTEM ANALYSIS
8
teaching and learning of sign language, both for
deaf individuals and hearing individuals
interested in learning sign language.
Emergency Situations:
In emergency situations, such as medical emergencies or
natural disasters, communication barriers can have life-
threatening consequences for deaf and hard of hearing
individuals.
9
It promotes a more inclusive society where all
individuals, regardless of their
communication preferences or abilities, can
participate fully and contribute meaningfully.
1.
PERT Chart:
10
A PERT (Program Evaluation and Review
Technique) Chart is another project management tool
in which the stages of a project are graphically
represented on a chart.
Fig: Pert Chart
Python:
Python is an interpreted object-oriented, complicated
semantic high-level programming language. It is
ideal in screening and rapid application development
with high-level built-in data structures coupled with
11
dynamic timing and dynamic binding. Python's easy
to learn syntax puts readability premium on it,
reducing maintenance costs for software. Python
supports modules and bundles, enabling modularity
of software and reuse of code. The Python parser is
open source, as is a wide standard library. Python is
widely considered to be the best language for
teaching and learning. The word ML (Machine
Learning) refers to the process of learning something
new. Python is a major eason why machine learning
is so widely known. It is easy to read and is loved by
experienced developers and experimental students
both. It is easy to read. Python's simplicity allows
developers to focus rather than spend their entire time
on solving the machine learning problem. Python is a
major reason why machine learning is so popular. It
is easy to read and is loved by experienced
developers and innovative students both. It is easy to
read. Python's simplicity means that developers can
concentrate on fixing the situation of machine
learning rather than spending time. Due to its
portable and extendable character, many cross-
language operations can easily be carried out on
Python. Python learners can easily improve their
12
knowledge of machine learning, which only makes
them more popular.
Features:
• Interpreted Language
• Large Standard Library
• High-Level Language
• Dynamically Typed Language
• Easy to code
• Free and Open Source
• Object-Oriented Language
• Extensible feature
• Python is Portable language
• Python is Integrated language
Python IDLE:
An integrated development environment (IDE) is a
software development programme that integrates a
number of tools designed specifically for software
development. These methods can be used in a variety
of ways.
o A code editor is a piece of software that lets you
edit code.
o Source control software o Creation, execution, and
debugging tools When you install Python, IDLE is
13
already installed.
o Its core capabilities include the Python shell
window, self finishing, syntax emphasis, smart
indentation and a simple built-in Debugger.
o Python 3.6.8 was used in this project.
16
Fig: data flow diagram
System Architecture:
17
Fig: System Architecture
Sequence Diagram:
18
Fig: Sequence Diagram
3. SYSTEM DESIGN
21
This module collects user feedback and adapts the system
over time. It might involve techniques such as online
learning or retraining the model with new data to improve
performance.
10. Deployment and Maintenance Module:
Finally, this module handles the deployment of the system
in real-world environments and ongoing maintenance
tasks such as software updates, bug fixes, and
performance monitoring.
Modularization allows for easier development, testing,
and maintenance of the sign language recognition system,
as each module can be developed and optimized
independently before integration into the larger system. It
also promotes reusability, as individual modules can be
repurposed for other projects or integrated into different
applications.
23
Computational Resources: Machine learning algorithms,
especially deep learning models, can be computationally
intensive. Constraints related to computational resources
such as memory, processing power, and latency need to
be considered when designing the system.
Real-time Processing: If the sign language recognition
system needs to operate in real-time, there are constraints
on the processing time and latency. Algorithms and
architectures optimized for real-time performance may
need to be prioritized.
Accuracy Requirements: Depending on the application,
there may be constraints on the accuracy and reliability of
the recognition system. Balancing accuracy with other
factors such as computational complexity and real-time
performance is important.
Hardware Constraints: The hardware platform on which
the system will run may impose constraints. For example,
if the system is intended for deployment on mobile
devices, there may be limitations on memory, battery life,
and processing power.
User Interface Constraints: Constraints related to the
user interface, such as the resolution and field of view of
the camera capturing sign language gestures, may impact
24
the design and performance of the system.
By addressing data integrity issues and considering
constraints during the design and development of the sign
language recognition system, you can ensure that it
delivers accurate, reliable, and efficient performance in
real-world applications.
• Responsibilities:
1. Main entry point for the system.
2. Coordinates different components of the system.
3. Manages the lifecycle of the system (initialization,
training, prediction, evaluation).
• Attributes:
25
1. DataManager dataManager
2. Preprocessor preprocessor
3. FeatureExtractor featureExtractor
4. Model model
5. Evaluator evaluator
• Methods:
1. initialize()
2. train(data: Data)
3. predict(input: InputData): Prediction
4. evaluate(testData: Data): EvaluationResult
B. DataManager
• Responsibilities:
1.Handles data loading, storage, and augmentation.
• Attributes:
1. dataSource
2. dataFormat
• Methods:
1. loadData(source: String): Data
2. saveData(data: Data, destination: String)
3. augmentData(data: Data): Data
C. Preprocessor
• Responsibilities:
26
• Preprocesses raw data (e.g., image resizing,
normalization).
• Attributes:
• preprocessingSteps
• Methods:
• applyPreprocessing(rawData: Data):
PreprocessedData
D. FeatureExtractor
• Responsibilities:
• Extracts relevant features from preprocessed
data.
• Attributes:
• featureExtractionMethod
• Methods:
• extractFeatures(data: PreprocessedData):
FeatureSet
E. Model
• Responsibilities:
• Represents the machine learning model.
• Handles training and prediction tasks.
• Attributes:
27
• modelType
• hyperparameters
• trainedModel
• Methods:
• train(features: FeatureSet, labels: Labels)
• predict(features: FeatureSet): Prediction
F. Evaluator
• Responsibilities:
• Evaluates the performance of the trained model.
• Attributes:
• evaluation Metrics
• Methods:
• evaluate(predictions: Predictions, groundTruth:
Labels): EvaluationResult
2. Class Interactions
• Initialization: The SignLanguageRecognitionSystem
initializes by creating instances of DataManager,
Preprocessor, FeatureExtractor, Model, and
Evaluator.
• Training:
• The system calls DataManager to load the
training data.
28
• The raw data is then passed to Preprocessor to apply
necessary preprocessing steps.
• The Preprocessor output is fed into FeatureExtractor
to derive a set of features.
• These features, along with corresponding labels, are
used by Model to train the machine learning model.
• Prediction:
• For a given input, the system repeats
preprocessing and feature extraction steps.
• The extracted features are passed to Model to
predict the corresponding sign language gesture.
• Evaluation:
• The system uses Evaluator to compare model
predictions against ground truth labels and assess
performance.
+-------------------------------+
| 5. Implementation Considerations
• Extensibility: Ensure that each class can be extended
or modified without affecting others. For example,
different preprocessing techniques can be added by
extending the Preprocessor class.
29
• Modularity: Each component should handle a
specific aspect of the process. This makes the system
easier to maintain and debug.
• Reusability: Components like FeatureExtractor and
Model should be reusable across different projects or
datasets with minimal modifications.
• Scalability: The design should accommodate scaling
up the data processing and model training, possibly
incorporating distributed computing techniques if
necessary.
By following this object-oriented design, the system
becomes robust, modular, and easy to maintain or extend,
facilitating efficient sign language recognition using
machine learning algorithms.
31
• Real-time camera view for capturing sign
language gestures.
• Start/Stop button for the live translation.
• Option to upload a pre-recorded video.
• Translation Output:
• Text display area showing the recognized sign
language translation.
• Voice output toggle for converting text to
speech.
• Feedback Mechanism:
• Thumbs up/down or rating system to provide
feedback on translation accuracy.
• Option to report errors or provide suggestions.
C. Training Mode Screen
• Upload Section:
• Interface to upload training videos.
• Instructions on how to create high-quality
training data.
• Training Progress:
• Visualization of training progress and model
accuracy.
32
• Logs and statistics showing the performance of
the model.
• Manual Correction:
• Interface for manually correcting misidentified
signs to improve the model.
D. Learn Sign Language Screen
• Learning Modules:
• Categorized lessons on different sign language
gestures.
• Video demonstrations with text descriptions.
• Practice Area:
• Interactive practice section where users can sign
and receive feedback.
• Quizzes and exercises to reinforce learning.
E. Settings Screen
• Profile Management:
• User profile with personal information and
preferences.
• Customization Options:
• Language preferences.
• Video quality settings.
• Notification settings.
33
• Privacy Settings:
• Options to manage data privacy and sharing
permissions.
F. Help and Support Screen
• FAQs:
• Frequently Asked Questions to help users
troubleshoot common issues.
• User Guide:
• Detailed user guide explaining how to use each
feature.
• Contact Support:
• Form to contact technical support or provide
feedback.
3. User Flow
Launch Application: User opens the application and
lands on the Home Screen.
Start Translation:
• User selects "Start Live Translation" from the
Home Screen.
• System accesses the camera and displays the
Live Translation Screen.
34
• User signs in front of the camera, and the system
translates the signs in real-time.
Feedback and Correction:
• User provides feedback on the translation
accuracy.
• If necessary, user can switch to Training Mode to
upload videos and improve the model.
Learning:
• User navigates to the Learn Sign Language
Screen to access lessons and practice.
Settings and Help:
• User configures preferences in the Settings
Screen.
• User accesses Help and Support for any issues or
additional information.
+5. Implementation Considerations
• Accessibility: Ensure the UI is accessible to all users,
including those with disabilities. Use appropriate
color contrasts, text sizes, and provide alternative text
for images.
• Localization: Support multiple languages to cater
to a diverse user base.
35
• Responsiveness: Design the UI to be responsive and
work seamlessly across different devices (desktop,
tablet, mobile).
• User Feedback: Continuously gather and incorporate
user feedback to improve the UI and overall user
experience
36
Educators and Researchers: Users
who might use the system for
educational purposes or research.
General Public: Users interested
in learning sign language or
curious about the technology.
2. Key UI Components
A. Home Screen
Welcome Message: Brief
introduction to the system and its
purpose.
Navigation Menu: Links to
different sections such as Live
Translation, Training Mode,
Settings, Help, and About.
Quick Access Buttons:
Start Live Translation
Learn Sign Language
Upload Video for Translation
B. Live Translation Screen
Video Feed:
37
Real-time camera view for
capturing sign language gestures.
Start/Stop button for the live
translation.
Option to upload a pre-recorded
video.
Translation Output:
Text display area showing the
recognized sign language
translation.
Voice output toggle for
converting text to speech.
Feedback Mechanism:
Thumbs up/down or rating system
to provide feedback on translation
accuracy.
Option to report errors or provide
suggestio
C. Training Mode Screen
Upload Section:
Interface to upload training
videos.
38
Instructions on how to create
high-quality training data.
Training Progress:
Visualization of training progress
and model accuracy.
Logs and statistics showing the
performance of the model.
Manual Correction:
Interface for manually correcting
misidentified signs to improve the
model.
D. Learn Sign Language Screen
Learning Modules:
Categorized lessons on different
sign language gestures.
Video demonstrations with text
descriptions.
Practice Area:
Interactive practice section where
users can sign and receive
feedback.
39
Quizzes and exercises to reinforce
learning.
E. Settings Screen
Profile Management:
User profile with personal
information and preferences.
Customization Options:
Language preferences.
Video quality settings.
Notification settings.
Privacy Settings:
Options to manage data privacy
and sharing permission
F. Help and Support Screen
FAQs:
Frequently Asked Questions to
help users troubleshoot common
issues.
User Guide:
Detailed user guide explaining
how to use each feature.
40
Contact Support:
Form to contact technical support
or provide feedback.
3. User Flow
Launch Application: User opens
the application and lands on the
Home Screen.
Start Translation:
User selects "Start Live
Translation" from the Home
Screen.
System accesses the camera and
displays the Live Translation
Screen.
User signs in front of the camera,
and the system translates the signs
in real-time.
Feedback and Correction:
User provides feedback on the
translation accuracy.
41
If necessary, user can switch to
Training Mode to upload videos
and improve the model.
.
Settings and Help:
User configures preferences in the
Settings Screen.
User accesses Help and Support
for any issues or additional
information.
4. Wireframes and Mockups
Creating wireframes and mockups
helps visualize the UI design.
5. Implementation Considerations
42
Localization: Support multiple
languages to cater to a diverse
user base.
Responsiveness: Design the UI to
be responsive and work
seamlessly across different
devices (desktop, tablet, mobile).
User Feedback: Continuously
gather and incorporate user
feedback to improve the UI and
overall user experience.
45
1.Collect videos from multiple signers performing the
same set of gestures.
2.Run the system on these videos.
3.Compare the text output with the expected
translations.
Expected Result: The system provides accurate
translations for all signers.
B. Model Performance
test_model_performance_with_large_dataset:
Description: Verify that the system can handle a
large dataset efficiently.
Steps:
1.Load a large dataset for training.
2.Train the model using this dataset.
3.Measure the training time and evaluate the model
performance.
Expected Result: The system completes training
within a reasonable time and maintains high
accuracy.
3. User Experience Tests
A. Usability
test_usability_of_live_translation_interface:
46
Description: Ensure the live translation interface is
user-friendly.
Steps:
1.Navigate to the Live Translation Screen.
2.Test all available features (e.g., start/stop
translation, upload video, feedback mechanism).
3.Collect feedback from users on ease of use.
Expected Result: Users find the interface intuitive
and easy to use.
test_feedback_mechanism:
Description: Verify that the feedback mechanism
works correctly.
Steps:
1.Perform a sign language gesture.
2.Provide feedback on the translation accuracy using
the thumbs up/down system.
3.Check that the feedback is recorded and processed.
Expected Result: Feedback is correctly recorded and
used for improving the system.
B. Accessibility
test_accessibility_features:
Description: Ensure the system is accessible to users
with different needs.
47
Steps:
1.Test the application with screen readers.
2.Check color contrast and font sizes for readability.
3.Verify the presence of alternative text for images
and videos.
Expected Result: The system is fully accessible and
complies with accessibility standards.
4. Robustness and Error Handling
A. Handling Invalid Inputs
test_invalid_video_format_upload:
Description: Verify that the system handles invalid
video formats gracefully.
Steps:
1.Attempt to upload a video in an unsupported
format.
2.Observe the system’s response.
Expected Result: The system displays an
appropriate error message without crashing.
test_unexpected_gesture_handling:
Description: Ensure the system handles unexpected
gestures or noise gracefully.
Steps:
48
1.Perform random, non-sign language movements in
front of the camera.
2.Observe the system’s response.
Expected Result: The system does not produce
incorrect translations and may prompt the user to
perform recognizable gestures.
5. Integration with Other Systems
A. Voice Output Integration
test_voice_output_toggle:
Description: Verify that the text-to-speech feature
works correctly.
Steps:
1.Perform a gesture and receive the text translation.
2.Enable the voice output toggle.
3.Check that the translated text is correctly converted
to speech.
Expected Result: The spoken output matches the
text translation.
49
4. CODING
50
Fig: Dataset
The dataset consists of Sign Language Hand Gestures
containing 26 signs with different variations Each sample
consists of a person signing the corresponding letter while
facing directly at the camera
52
• Participants: Include a diverse group of
participants of different ages, genders, and
ethnicities.
• Environment: Use a controlled environment
with good lighting and a plain background.
• Equipment: Use high-resolution cameras to
capture the gestures clearly from multiple angles
if possible.
B. Secondary Data Collection
• Public Datasets: Utilize existing sign language
datasets if available.
• Examples include:
• RWTH-PHOENIX-Weather 2014
• ASLLVD (American Sign Language
Lexicon Video Dataset)
• CSL (Chinese Sign Language) Dataset
• Online Videos: Collect data from educational videos,
sign language dictionaries, or YouTube channels with
proper licensing and permissions.
53
3. Data Collection Methodology
A. Recording Protocol
• Standardized Phrases: Prepare a list of gestures and
phrases to be recorded.
• Multiple Takes: Record each gesture multiple times
to capture variability.
• Annotation: Ensure each video is annotated with the
correct sign label.
B. Ethical Considerations
• Informed Consent: Obtain consent from all
participants, explaining the purpose and use of the
data.
• Privacy: Ensure participants' privacy is protected,
and data is anonymized if necessary.
4. Data Preprocessing
A. Annotation
• Label each video with the corresponding gesture.
• Use tools like VIA (VGG Image Annotator) or
custom annotation tools to mark the start and end of
gestures.
54
B. Cleaning
• Remove any corrupted or low-quality videos.
• Standardize video formats and resolutions.
C. Augmentation
• Geometric Transformations: Apply rotations,
translations, and flips to augment the dataset.
• Temporal Augmentation: Vary the speed of gesture
playback to simulate different signing speeds.
5. Data Storage and Management
A. Organization
• Store videos in a structured format (e.g., folder per
gesture).
• Maintain a metadata file containing details of each
video (e.g., signer, date, gesture label).
B. Backup
• Regularly backup the collected data to prevent loss.
• Use cloud storage solutions for scalability and
accessibility.
55
6. Quality Assurance
A. Validation
• Manually review a subset of the data for accuracy.
• Use automated scripts to check for inconsistencies in
annotations.
B. Consistency Checks
• Ensure that gestures are uniformly captured across
different sessions.
• Verify that the lighting and background remain
consistent within a session.
7. Example Workflow
Here’s a simplified example of the workflow for data
collection:
A. Preparation
Define the list of gestures to collect.
Recruit participants and schedule recording
sessions.
Set up recording equipment in a controlled
environment.
56
B. Recording Session
Explain the process to participants and obtain consent.
Record each gesture multiple times with breaks in
between.
Annotate the videos in real-time or immediately after
recording.
C. Post-Processing
Clean and preprocess the videos.
Apply data augmentation techniques.
Store the data in an organized structure with metadata.
D. Verification
Review a random sample of videos for quality assurance.
Run consistency checks on the annotations.
8. Tools and Technologies
A. Hardware
• High-resolution cameras (e.g., DSLRs, webcams).
• Tripods and lighting equipment.
B. Software
• Annotation tools: VIA, Labelbox, RectLabel.
57
• Video processing libraries: OpenCV, FFmpeg.
• Cloud storage: AWS S3, Google Cloud Storage.
9. Challenges and Considerations
A. Diversity
• Ensure the dataset includes diverse signers to make
the model robust.
B. Quality Control
• Continuously monitor the quality of data being
collected.
C. Data Volume
• Collect enough data to cover all variations and
contexts of the gestures.
10. Future Enhancements
• Crowdsourcing: Consider using platforms like
Amazon Mechanical Turk for annotating larger
datasets.
• Collaboration: Partner with institutions and
organizations specializing in sign language for
broader data collection.
58
• Real-time Data Collection: Implement mechanisms
for users to contribute data via mobile applications or
online platforms.
import keras
engine = pyttsx3.init()
59
engine.setProperty('rate', 125) #Speed percent (can go
over 100)
def nothing(x):
pass
"""
"""
if value == val:
return key
60
model = load_model('model.h5')
spell = SpellChecker ()
alphabet ['del'] = 27
alphabet ['nothing'] = 28
alphabet ['space'] = 29
cv2.namedWindow("Model Image',
cv2.WINDOW_NORMAL)
61
video_capture.set (cv2.CAP_PROP_FRAME_WIDTH,
640)
video_capture.set (cv2.CAP_PROP_FRAME_HEIGHT,
480)
#https://opencv-python-
tutroals.readthedocs.io/en/latest/py_tutorials/py_imgproc/
py_canny/py_canny.html
62
# VARIABLES INITIALIZATION
THRESHOLD = 0.85
N_FRAMES= 10
#supportive text
63
description_text_1 = "Press 's' for 'CHAR' / 'W' for
'WORD' (START/PAUSE)"
engine.runAndWait()
while True:
#noise reduction
65
upper = cv2.getTrackbar Pos ('upper_threshold', 'Model
Image')
model_image = cv2.resize(
model_image,
dsize=(IMG_SIZE, IMG_SIZE),
interpolation-cv2.INTER_CUBIC
try:
else:
#print (letter)
except:
pass
if START == True:
67
# append the final output with the letter
if letter = 'space':
pass
else:
engine.say (corrected_word)
engine.runAndWait()
if letter == 'A':
70
elif letter == 'H':
71
speak_out ("Congratulations")
speak_out ("Excellent")
72
elif letter == 'W':
fontFace=cv2.FONT_HERSHEY_PLAIN,
speak out
("Wrong") )
pass
fontFace=cv2.FONT_HERSHEY_PLAIN,
73
color=(0,0,225),
fontscale=1
fontFace=cv2.FONT_HERSHEY_COMPLEX_SMALL,
color=(255,255,255),
74
#TEXT INITIALIZATION
fontscale=1
#paaused text )
cv2.putText(
img=frame,
# current letter
text=paused_text,
cv2.putText(
org=(x_0+110,y_0+195),
img=frame,
color=(0,0,255),
org=(x_0-30,y_0-10),
fontScale=1
fontFace=cv2.FONT_HERSHEY_COMPLEX_SMALL,
)
color=(255,255,255),
75
fontscale=1
#helper texts
cv2.putText( #cu
rrent letter
img=frame,
cv2.putText(
text=description_text_1,
img=frame,
org=(10,440),
text=letter,
fontScale=1
fontFace=cv2.FONT_HERSHEY_PLAIN,
)
color=(0,0,255),
76
fontscale=1
cv2.putText( )
img=frame,
text-description_text_2,
# final output
cv2.putText(
img=blank_image,
text='Result:+SENTENCE,
fontFace=cv2.FONT HERSHEY
COMPLEX_SMALL,
thickness=1,
77
color=(0,0,255),
fontScale=1
#print (SENTENCE)
cv2.imshow('Output', blank_image)
78
if cv2.waitKey(30) & 0xFF == ord('d'):
SENTENCE = ''
break
video_capture.release()
cv2.destroyAllWindows ()
79
text_file.close()
80
81
82
83
84
85
86
87
88
89
90
5. STANDARDIZATION OF THE CODE
PACKAGES:
➢ NumPy:
What is NumPy, exactly?
• NumPy is a Python package containing a strong n-
dimensional array object. NumPy is a Python package. •
It's used for array computing on the market.
• NumPy strives to be 50 times faster than regular Python
lists when it comes to array objects.
▪ The following are some of NumPy’s features:
▪ Advanced (broadcasting) capabilities
▪ C/C++ and Fortran code integration tools
▪ An effective N-dimensional array object
▪ Linear algebra, Fourier transform, and random numbers
awareness
▪ NumPy's Applications o NumPy includes a high-
91
performance multidimensional array as well as basic
computation and manipulation methods.
o It's a Python replacement for lists and arrays that
consumes very little memory.
o We are capable of performing a wide range of
mathematical operations.
o Shape Manipulation o It's compatible with Pandas,
SciPy, Tkinter, and other Python libraries.
➢ Open CV:
o What is Open CV?
OpenCV is a cross-platform library for building computer
vision applications in real time. It focuses on image
processing, video grabing and analytics, including the
detection of faces and objects. OpenCV was developed to
provide common infrastructure for computer vision
applications and accelerate the use of machine perception
in commercial products. OpenCV, a BSD-licensed
product, makes it easier for companies to use and modify
the code. The library has more than 2500 optimised
algorithms, including a full range of both classic and
advanced computer vision and master learning
algorithms. These Sign Language Recognition Using
92
Machine Learning Algorithm Dept of CSE 35 2020-21
algorithms can be used for identification of faces, objects
identification, classification of human activities into
videos, camera tracking, moving objects and 3D object
models deleted. Their images can be stitched to produce
highly-intensive 3D point clouds. Color segmentation or
colour filtration is commonly used for identifying certain
objects/regions of a certain colour in OpenCV. The most
common colour area is RGB. It is called an additive
colour space since the three colour shades add to the
image.
➢ Keras
• What is keras?
94
▪ Keras is a lightweight python library that makes
building deep learning models based on Tensorflow
simple. Keras was created with the aim of rapidly define
deep learning models.
▪ Keras contains numerous implements on common
neural network compilation layers, targets, activation
features, optimizers and a host of tools to simplify the
coding needed to create deep neural network code,
making working with image and text data easier. A great
approach for deep learning is to create a convolutions
neural network to classify images (CNN). The Python
Keras library makes the construction of a CNN quite
simple.
Features of keras:
▪ Minimal Structure
▪ Consistent, simple
▪ High Scalability and computation
▪ User Friendly
▪ It supports on multiple platforms
6. TESTING
OVERVIEW OF TECHNOLOGY:
CONVULATIONAL NEURAL NETWORK (CNN):
A CNN is a deep-learn algorithmic programme that can
absorb the input image, allocate weights and biases in
different aspects/objects in the image, and distinguish
between them. The CNN is an algorithmic programme of
deep learning. The pre-processing requirement of a
ConvNet is significantly less than other classification
algorithms. While filters are traditionally manufactured
by hand, ConvNets can learn these features with sufficient
training. The visual field design impressed the ConvNet
design, which is similar to the pattern of Neurons in the
Human Brain. Only a small area of the visual field called
the receptive field is used to respond to stimuli by
individual neurons. A group of such fields overlap the
whole cortical region. By using relevant filters, an image
of abstraction and temporal dependencies can be captured
successfully in a ConvNet. The design is more robustly
aligned with the image data set because of the reduction
in the number of parameters involved and the reusability
97
of the weights. In other words, the Network can be
equipped for a higher level of image advancement.
Standard neural networks have an architecture different
from the Convolutionary neural networks. Regular
Networks (RNNs) restructure data through a hidden layer
sequence. Every layer consists of a range of neurons and
every layer is linked to one or all neurons in the preceding
layer. Finally, a fully connect layer and an output layer
represent the forecasts. CNNs are a bit different from
others. CNNs are a little different. The layers are arranged
in three dimensions first and foremost: width, height and
depth. In addition, the neurons in a single layer are not
connected in the next layer to all of the neurons, but only
a few of them. Finally, a single vector of shift values
along the axis will reduce the final output. Square
Convolutionary Neural Networks measure an entirely
different small amount. 1st of all, the three-dimensional
square layers: width, height and depth. In addition,
neurons in one layer do not hook up to only a small low
area with all neurons within the next layer. Finally, the
final output is reduced to an organised, depth-dimensional
vector of changing scores.
98
7.SYSTEM SECURITY MEASURES
99
result, assessing the system's viability as soon as
possible is both appropriate and wise. If the
early definition of an impermeable system,
months or years of work are identified,
thousands of rupees and unspeakable
professional humiliations can be avoided. In
several cases, feasibility and risk analysis are
related. When project risk is high, the likelihood
of delivering high-quality applications is
lowered. There are three main fields of concern
in this situation.
1.Performance Analysis The project is run with
the help of a safe networking setup for the entire
practicality of the project work. The operating
system is typically Windows. The main goal of
this initiative is to help deaf and dumb people
communicate with others. The aim of
performance analysis is to retrieve information
in a safe and reliable manner. It is important that
the performance measurement and definition
100
methods be carried out in parallel.
2. Technical Analysis The technical
requirements of the company Simply stated, this
check of practicability determines whether the
scheme will succeed until designed and
implemented, as well as whether there are any
significant obstacles to implementation. There
are some things to consider in relation to these
issues in technical analysis:
• Changes to the method to be implemented: All
improvements should be in a constructive
direction, resulting in a higher degree of quality
and customer support.
• Required abilities: This project's platforms and
technologies are commonly used. As a result,
the professional workforce is immediately
available inside the business.
• Acceptability: The system's configuration is
unbroken enough that there shouldn't be any
problems.
101
3. Economical Analysis Economical analysis is
used to assess the importance of growth in
comparison to the ultimate financial gain or
benefits resulting from the developed
environment. We don't want to use
highperformance servers to operate this
technique. Package modules are used to enforce
all of the features. We don't seem to be using
any physical equipment for affiliation during
this system. That the scheme is viable from a
financial standpoint.
DEVELOPMENT METHODS :
The development of software is usually a
process step by step. It involves the software
design process before the implementation
process. A software design is a description of
the component structure, the data that is part of
the system, the interfaces between the
components and the algorithms used sometimes.
102
Designers do not immediately achieve a finished
design but iteratively develop the design in a
number of different versions. The design
process involves adding formalities and details
in the development of the design with constant
retrofitting to correct previous designs. Software
design is an ad hoc process in many software
development projects. An informal design is
prepared based on the set of requirements,
usually in natural language. The coding starts
and when the system is implemented the design
stage will be modified. When the stage of
implementation is complete, the design usually
has changed from the initial specification to an
incorrect and incomplete description of the
system by the original design document. The
design phase offers various advantages. Some of
the following are listed:
• The design stage helps user needs understand
and helps user demands to be mapped into the
103
implementation stage.
• Design iterations help to incorporate in the
final software as many user requirements as
possible. Different design options need to be
considered at each stage during the design
process. Design phase aims at producing the
software's overall design.
8.REPORTS
104
Fig: output(i) In this hand gesture showing a sign ‘A’ so
its displaying letter ‘B’ in the box as it is in char mode
106
Fig: In this, sign is showing letter ‘B’ as it is in word
mode the speech output will be ‘I need help’
107
system. The ISL recognizer system cannot be regarded as
a complete system since we need to include ISL
alphabets, words, and sentences to fully understand sign
language. These signals may be used in the future.
Additional extraction algorithms, such as transform
Wavelet, invariant moments, Shape lets descriptors and
other existing methods, can also be used to enhance the
results of the experiments. Other classifications can be
used in experiments for increasing recognition rates, such
as Multi-class Support Vector Machine (SVM), Principal
Component Analysis (PCA) or Linear Discriminant
Analysis (LDA), or a combination of them.
✓ Use Dynamic Loading for the Dataset: Our original
dataset was very big and would require a server with a lot
of RAM and disc space to run. Splitting the file names
into preparation, Sign Language Recognition Using
Machine Learning Algorithm Dept of CSE 42 2020-21
validation, and test sets and dynamically loading images
in the Dataset class might be one solution.
✓ We might train the model on more samples in the
dataset if we used such a loading technique.
✓ Sign language recognition is a diverse field of study.
✓ More methods for shading detection, image separation,
108
and grouping can also be used. We plan to focus on more
approaches in the future, as well as build a framework for
continuous sign language recognition for more terms and
sentences.
✓ We used tools learned in computer vision and machine
learning to implement an automated sign language gesture
recognition system in real-time in this project.
✓ We discovered that often simple solutions are better
than complicated solutions. Despite using a sophisticated
segmentation algorithm, the most effective skin masks
were extracted using a simple skin segmentation model.
We also recognised the time constraints and challenges of
building a dataset from the ground up.
✓ Other symptoms, such as the Indian Sign Language, as
currently available for American Sign Language, should
be added to our model.
✓ Further training of the neuro-network to recognise
symbols that effectively involve two hands in the model's
recognition of common terms and expressions. Using
linear classifiers to improve the performance.
109
10. BIBLIOGRAPHY
1. Hand Gesture Recognition for Indian Sign Language
using Skin Color Detection and Correlation-Coefficient
algorithm with Neuro-Fuzzy Approach.
110
2. Jeegar Trivedi.
3. Real-time Sign Language Recognition based on Neural
Network Architecture.
4. Kusumika Krori Dutta, Sunny Arokia Swamy Bellary
5. Sign Language Learning System with Image Sampling
and Convolutional Neural.
6. Network, Yangho Ji, Sunmok Kim, and Ki-Baek Le.
7. Sign Language Recognition Using Deep Learning on
Custom Processed Static Gesture
8. Aditya Das, Shantanu Gawde, Khyati Suratwala and
Dr. Dhananjay Kalbande.
9. Hand Gesture Detection based Real-time American
Sign Language Letters Recognition.
10. Support Vector Machine, Xinyun Jiang, Wasim
Ahmad.
11. End to end Residual Neural Network with Data
Augmentation for sign Language.
12. Recognition, Mengyi Xie, Xin Ma
13. Ian Lim, Joshua Lu, Claudine Ng, Thomas Ong and
Clement Ong.
14. “Sign language Recognition through Gesture &
Movement Analysis” .
15. Two hand Indian Sign language dataset for
benchmarking classification models of machine Learning,
111
Leela surya teja manga muri, Lakshay jain, Abhishek.
112
113