FINALYEAR PROJECT - Docsx
FINALYEAR PROJECT - Docsx
A project Report submitted in partial fulfilment of the requirements for the award of the
In
P. VENKATA CHANDANA(20A41A0541)
CH. GOPICHAND(20A41A0516)
S. SAMBASIVARAO(20A41A0550)
CERTIFICATE
This is certify that this project report is a entitled as an AUDIO TO SIGN LANGUAGE
TRANSLATOR USING PYTHON the bonafide record work of N.NAGA GOWRI PRASANNA
(20A41A0536), P.VENKATA CHANDANA (20A41A0541), A.HARI NADH REDDY(20A41A0504),
CH.GOPICHAND(20A41A0516), S.SAMBASIVARAO(20A41A0550) under the Guidance and
supervision of ANTHONY.JOJAPPA submitted to the Department of Computer Science and
Engineering, Loyola Institute of Technology and Management, in partial fulfilment of the
requirements for the award of the Degree in Bachelor of Technology in Computer Science and
Engineering.
External Examiner
DECLERATION
S. Sambasivarao (20A41A0550)
ACKNOWLEDGEMENT
It is great pleasure for us to express our gratitude to our honorable chairman Mr. E. Vamsi Krishna
Reddy, and secretary Sri K V J Kumar for kindly providing facilities in accomplishing our project
and their consistent work in growth of management.
We express our great pleasure to our honorable principal Dr. S. Siva Reddy, who had inspired a
lot through his valuable message. He is only personality who had given the meaning to the
technological studies.
We express our sincere and heart full thanks to our beloved Head of the Department of Computer
Science & Engineering, Mrs. B. Prasanna Jyothi for his motivation and encouragement at the
stage of this endeavor and his constant help and support throughout our project.
We express our whole hearted thanks to our beloved guide Anthony. Jojappa for his splendid
effort and guidance throughout the course of project work without whom the assignment would not
have beensuccessfully completed. We express our whole hearted thanks to our Senior faculty for
their help during the period of project.
We deeply cherish the splendid efforts and unstinted support of all our friends without which this
assignment would not have been successfully completed. We also owe a special thanks to all our
family members and the management and administration of LITAM.
Project Associates
S. Sambasivarao (20A41A0537)
INDEX
2 INTRODUCTION 2
LITERATURE SURVEY
3 5
7
4 SYSTEM REQUIREMENTS
8
5 SYSTEM STUDY
SYSTEM DESIGN 10
6
SOFTWARE ENVIRONMENT 14
7
SYSTEM TEST 38
8
SCREENSHOTS 42
9
CONCLUSION 48
10
REFERENCES: 49
11
BASEPAPER
12
Audio to Sign Language Translator Using Python
1.ABSTRACT:
This project is based on converting the audio signals receiver to text using speech to text API. Speech
to text conversion comprises of small, medium and large vocabulary conversions. Such systems
process or accept the voice which then gets converted to their respective text. This paper gives a
comparative analysis of the technologies used in small, medium, and large vocabulary Speech
Recognition System. The comparative study determines the benefits and liabilities of all the
approaches so far. The experiment shows the role of language model in improving the accuracy of
speech to text conversion system. We experiment the speech data with noisy sentences andincomplete
words. The results show a prominent result for randomly chosen sentences compared to sequential
set of sentences.
2. INTRODUCTION:
This project is based on converting the audio signals receiver to text using speech to text API.
Speech to text conversion comprises of small, medium and large vocabulary conversions. Such
systems process or accept the voice which then gets converted to their respective text. This paper
gives a comparative analysis of the technologies used in small, medium, and large vocabulary
Speech Recognition System. The comparative study determines the benefits and liabilities of all
the approaches so far. The experiment shows the role of language model in improving the accuracy
of speech to text conversion system. We experiments the speech data with noisy sentences and
incomplete words. The results show a prominent result for randomly chosen sentences compared
to sequential set of sentences.
Text to sign language conversion is mainly focused on communication between ordinary people
and ordinary people and deaf-mute people. Sign language paves the way for deaf-mute people to
communicate .Sign language is a visual language that is used by deaf and dumb as their mother
tongue. It is figure out about 240 sign language have exist for spoken language in the world. Sign
language is a type of language that uses hand movements, facial expressions and body language
to communicate. It is used by the people who are deaf and people who can hear but cannot speak.
The Conversion system consists of following steps:-
DATA PREPARATION
The corpus used for the system is the publicly available corpus. It contains a total of 1000
sentences about general information. The system is trained with 1000 sentences and tested 150
sentences.
LANGUAGE MODE
A Language model comprises of a large set of words together with its chances of occurrence. The
model extracts the number of unigram bigram and trigrams of the corpus and calculates the
probability of each unigram bigram and trigram. These statistical results are used by the decoder
to predict the possible combination of words and phrases. It helps to achieve faster execution and
higher accuracy by constraining the search in a decoder by limiting the number of possible words
that need to be considered during the search.
DICTIONARY PREPARATION
Dictionary provides the data to map vocabulary words to sequence of phonemes to the system.
Uses Letter-only phone names without special symbols which simplifies the system. Dictionary
should contain all the words needed to be recognized by the recognizer.
ACOUSTIC MODEL Acoustic model is a file which contains statistical representation of each
of individual sounds that make up a word. An acoustic model is created from a speech corpus using
training algorithms. In Sphinx it is done using Sphinx train module. This part gives the output in
the form of a configuration file. The parameters written in configuration file are used by the
decoder to generate the acoustic model for a given language.
Training is performed when there is need to create an Acoustic model for a new language.
Knowledge on the phonetic structure of the language should be there to perform the training. Once
the training is done it creates the database and by running the sphinx train the speech recognition
files can be created.
TRAINING ALGORITHM
Acoustic model is a file which contains statistical representation of each of individual sounds that
make up a word. An acoustic model is created from a speech corpus using training algorithms. In
Sphinx it is done using Sphinx train module. This part gives the output in the form of a
configuration file. The parameters written in configuration file are used by the decoder to generate
the acoustic model for a given language.
EXISTING SYSTEM
This approach should be capable to recognize the speech and convert the input audio into text.
Likewise, this problem related to several problems. Speech recognition is an interesting
application of digital signal processing which has real world applications. This method is also used
in automation of many tasks which previously needed the human interaction, like identifying
spoken commands to perform things like closing a door or switching on lights.
DE-METRIC
Complex speech patterns can be recognized as well. For instance, there are quite a few appropriate
speech recognitions which can actually take up speech at decent speed and later convert it to the
text format and hence no typing would be required to generate a document. Even after such
successful software landing in the market however, current efforts are not yet meeting the 100%
human speech recognition
PROPOSED METHODOLOGY
Tensor layer was replaced with single sigmoid hidden layer by Hutchinson, Deng and Yu in the stacking
networks. The performance was worst when the configuration in which only the bottom (first) layer was
replaced with the DP layer. The performance was best and achieved more than 1% absolute reduction over
the DNN when the configurations replaced the top hidden layer with the DP layer performs. This concludes
the DP layers are suited to perform on binary features, consistent in findings from.
METRICS
On a voice search task and the Switchboard (SWB) phone-call transcription task it is found that
CD-DNN-HMMs have achieved 16% and 33% relative recognition error reduction over strong,
discriminatively trained CD- GMM-HMMs.
1. 3.LITERATURE SURVEY:
1. sign language to text and vice versa recogonization using computer vision in Marathi
Sign language recognition is one of the most growing fields of research today and it is the most
natural way of communication for the people with hearing problems. A hand gesture recognition
system can provide an opportunity for deaf persons to communicate with vocal people without the
need of an interpreter or intermediate. The system is built for the automatic recognition of Marathi
sign language. Providing teaching classes for the purpose of training the deaf sign userin Marathi.
The system can train new user who is unaware of the sign language and the training will be
provided through offline mode. In which user can learn sign language with the help of database
containing predefined sign language alphabets as well as words. A large set of samples has been
used in proposed system to recognize isolated words from the standard Marathi sign language
which are taken using camera. The system contains forty-six Marathi sign language alphabets and
around 500 words of sign language are taken. Considering all the sign language alphabets and
words, the database contains 1000 different gesture images. The proposed system intend to
recognize some very basic elements of sign language and to translate them to text and vice versa
The prevalence of deafness in India is fairly significant. It is the second most common cause of
disability. Approximately 63 million people (6.3%) in India suffer from significant auditory loss.1
Rehabilitation of hearing impaired children in India remains a challenging task. Early detection
and intervention are the mainstay of this initiative. This article does not purport to detail the
clinical aspects and surgical management of hearing handicapped children. We discuss here the
resources and options available in India for the education of deaf children and the role of the
Government bodies in rehabilitation. Awareness about education and rehabilitation of hearing
handicapped is low among the general public and even among the medical fraternity
Communication is an integral part of human life. But for people who are mute & hearing impaired,
communication is a challenge. To understand them, one has to either learn their
language i.e. sign language or finger language. The system proposed in this project aims at tackling
this problem to some extent. In this paper, the motivation was to create an object tracking
application to interact with the computer, and develop a virtual human computer interaction
device. The motivation behind this system is two-fold. It has two modes of operation:Teach and
Learn. The project uses a webcam to recognize the hand positions and sign made using contour
recognition [3] and outputs the Sign Language in PC onto the gesture made. This will convert the
gesture captured via webcam into audio output which will make normal people understand what
exactly is being conveyed. Thus our project Sign Language to Speech Converteraims to convert
the Sign Language into text and audio.
4. "The pedagogical struggle of mathematics education for the deaf during the late nineteen
century: Mental Arithmetic and conceptual understanding
4. SYSTEM REQUIREMENTS
HARDWARE REQUIREMENTS:
SOFTWARE REQUIREMENTS:
4. 5.SYSTEM STUDY
FEASIBILITY STUDY
The feasibility of the project is analyzed in this phase and business proposal is put forth
with a very general plan for the project and some cost estimates. During system analysis the
feasibility study of the proposed system is to be carried out. This is to ensure that the proposed
system is not a burden to the company. For feasibility analysis, some understanding of the major
requirements for the system is essential.
Ø ECONOMICAL FEASIBILITY
Ø TECHNICAL FEASIBILITY
Ø SOCIAL FEASIBILITY
ECONOMICAL FEASIBILITY
This study is carried out to check the economic impact that the system will have
on the organization. The amount of fund that the company can pour into the research and
development of the system is limited. The expenditures must be justified. Thus the developed
system as well within the budget and this was achieved because most of the technologies used are
freely available. Only the customized products had to be purchased.
TECHNICAL FEASIBILITY
This study is carried out to check the technical feasibility, that is, the technical requirements
of the system. Any system developed must not have a high demand on the available technical
resources. This will lead to high demands on the available technical resources. This will lead to
high demands being placed on the client. The developed system must have a modest requirement,
as only minimal or null changes are required for implementing this system.
SOCIAL FEASIBILITY
The aspect of study is to check the level of acceptance of the system by the user. This
includes the process of training the user to use the system efficiently. The user must not feel
threatened by the system, instead must accept it as a necessity. The level of acceptance by the users
solely depends on the methods that are employed to educate the user about the system and to make
him familiar with it. His level of confidence must be raised so that he is also able to make some
constructive criticism, which is welcomed, as he is the final user of the system.
6.SYSTEM DESIGN
UML DIAGRAMS
A use case diagram in the Unified Modeling Language (UML) is a type of behavioral
diagram defined by and created from a Use-case analysis. Its purpose is to present a graphical
overview of the functionality provided by a system in terms of actors, their goals (represented as
use cases), and any dependencies between those use cases. The main purpose of a use case diagram
is to show what system functions are performed for which actor. Roles of the actors in the system
can be depicted.
UploadHandGestureDataset
TrainCNNwithGestureImage
user
SignLanguageRecognitionFromWe
bCam
CLASS DIAGRAM:
In software engineering, a class diagram in the Unified Modeling Language (UML) is a type of
static structure diagram that describes the structure of a system by showing the system's classes,
their attributes, operations (or methods), and the relationships among the classes. It explains which
class contains information.
SEQUENCE DIAGRAM:
A sequence diagram in Unified Modeling Language (UML) is a kind of interaction diagram that
shows how processes operate with one another and in what order. It is a construct of a Message
Sequence Chart. Sequence diagrams are sometimes called event diagrams, event scenarios, and
timing diagrams.
user application
uploadHandGestureDataset
signLanguageRecognitionFromWebam
COLLABORATION DIAGRAM:
4: logout 1: uploadHandGestureDataset
2: trainCNNwithGestureImage applicati
3: signLanguageRecognitionFromWebam on
user
IMPLEMENTATION:
MODULES:
1. Upload Dataset’
3. Login
4. Give Input
5. OutPut
In this module we will get output sign for the given input.
7. SOFTWARE ENVIRONMENT
What is Python :-
Below are some facts about Python.
Python is currently the most widely used multi-purpose, high-level programming language.
Programmers have to type relatively less and indentation requirement of the language,
makes them readable all the time.
Python language is being used by almost all tech-giant companies like – Google, Amazon,
Facebook, Instagram, Dropbox, Uber… etc.
The biggest strength of Python is huge collection of standard library which can be used for
the following –
Machine Learning
Ø GUI Applications (like Kivy, Tkinter, PyQt etc. )
Ø Web frameworks like Django (used by YouTube, Instagram, Dropbox)
Ø Image processing (like Opencv, Pillow)
Ø Web scraping (like Scrapy, BeautifulSoup, Selenium)
Ø Test frameworks
Ø Multimedia
Advantages of Python :-
1. Extensive Libraries
Python downloads with an extensive library and it contain code for various purposes like regular
expressions, documentation-generation, unit-testing, web browsers, threading, databases, CGI,
email, image manipulation, and more. So, we don’t have to write the complete code for that
manually.
2. Extensible
As we have seen earlier, Python can be extended to other languages. You can write some of
your code in languages like C++ or C. This comes in handy, especially in projects.
3. Embeddable
Complimentary to extensibility, Python is embeddable as well. You can put your Python code
in your source code of a different language, like C++. This lets us add scripting capabilities to
our code in the other language.
4. Improved Productivity
The language’s simplicity and extensive libraries render programmers more productive than
languages like Java and C++ do. Also, the fact that you need to write less and get more things
done.
5. IOT Opportunities
Since Python forms the basis of new platforms like Raspberry Pi, it finds the future bright for
the Internet Of Things. This is a way to connect the language with the real world.
When working with Java, you may have to create a class to print ‘Hello World’. But in Python,
just a print statement will do. It is also quite easy to learn, understand, and code. This is why
when people pick up Python, they have a hard time adjusting to other more verbose languages
like Java.
7. Readable
Because it is not such a verbose language, reading Python is much like reading English. This is
the reason why it is so easy to learn, understand, and code. It also does not need curly braces
to define blocks, and indentation is mandatory. This further aids the readability ofthe code.
8. Object-Oriented
This language supports both the procedural and object-oriented programming paradigms.
While functions help us with code reusability, classes and objects let us model the real world.
A class allows the encapsulation of data and functions into one.
Like we said earlier, Python is freely available. But not only can you download Python for
free, but you can also download its source code, make changes to it, and even distribute it. It
downloads with an extensive collection of libraries to help you with your tasks.
10. Portable
When you code your project in a language like C++, you may need to make some changes to
it if you want to run it on another platform. But it isn’t the same with Python. Here, you need
to code only once, and you can run it anywhere. This is called Write Once Run Anywhere
(WORA). However, you need to be careful enough not to include any system-dependent
features.
11. Interpreted
Lastly, we will say that it is an interpreted language. Since statements are executed one by one,
debugging is easier than in compiled languages.
Any doubts till now in the advantages of Python? Mention in the comment section.
1. Less Coding
Almost all of the tasks done in Python requires less coding when the same task is done in other
languages. Python also has an awesome standard library support, so you don’t have to search
for any third-party libraries to get your job done. This is the reason that many people suggest
learning Python to beginners.
2. Affordable
Python is free therefore individuals, small companies or big organizations can leverage the free
available resources to build applications. Python is popular and widely used so it gives you
better community support.
The 2019 Github annual survey showed us that Python has overtaken Java in the most
popular programming language category.
Python code can run on any machine whether it is Linux, Mac or Windows. Programmers need
to learn different languages for different jobs but with Python, you can professionally build web
apps, perform data analysis and machine learning, automate things, do web scraping and also
build games and powerful visualizations. It is an all-rounder programming language.
Disadvantages of Python
So far, we’ve seen why Python is a great choice for your project. But if you choose it, you should
be aware of its consequences as well. Let’s now see the downsides of choosing Python over
another language.
1. Speed Limitations
We have seen that Python code is executed line by line. But since Python is interpreted, it often
results in slow execution. This, however, isn’t a problem unless speed is a focal point forthe
project. In other words, unless high speed is a requirement, the benefits offered by Python are
enough to distract us from its speed limitations.
While it serves as an excellent server-side language, Python is much rarely seen on the client-
side. Besides that, it is rarely ever used to implement smartphone-based applications. One such
application is called Carbonnelle.
The reason it is not so famous despite the existence of Brython is that it isn’t that secure.
3. Design Restrictions
As you know, Python is dynamically-typed. This means that you don’t need to declare the type
of variable while writing the code. It uses duck-typing. But wait, what’s that? Well, it just
means that if it looks like a duck, it must be a duck. While this is easy on the programmersduring
coding, it can raise run-time errors.
Compared to more widely used technologies like JDBC (Java DataBase Connectivity)
and ODBC (Open DataBase Connectivity), Python’s database access layers are a bit
underdeveloped. Consequently, it is less often applied in huge enterprises.
5. Simple
No, we’re not kidding. Python’s simplicity can indeed be a problem. Take my example. I don’t
do Java, I’m more of a Python person. To me, its syntax is so simple that the verbosity of Java
code seems unnecessary.
This was all about the Advantages and Disadvantages of Python Programming Language.
History of Python : -
What do the alphabet and the programming language Python have in common? Right, both start
with ABC. If we are talking about ABC in the Python context, it's clear that the programming
language ABC is meant. ABC is a general-purpose programming language and programming
environment, which had been developed in the Netherlands, Amsterdam, at the CWI (Centrum
Wiskunde &Informatica). The greatest achievement of ABC was to influence the design of
Python.Python was conceptualized in the late 1980s. Guido van Rossum worked that time in a
project at the CWI, called Amoeba, a distributed operating system. In an interview with Bill
Venners1, Guido van Rossum said: "In the early 1980s, I worked as an implementer on a team
building a language called ABC at Centrum voor Wiskunde en Informatica (CWI). I don't know
how well people know ABC's influence on Python. I try to mention ABC's influence because
I'm indebted to everything I learned during that project and to the people who worked on it."Later
on in the same Interview, Guido van Rossum continued:
"I remembered all my experience and some of my frustration with ABC. I decided to try to
design a simple scripting language that possessed some of ABC's better properties, but without
its problems. So I started typing. I created a simple virtual machine, a simple parser, and a simple
runtime. I made my own version of the various ABC parts that I liked. I created a basic syntax,
used indentation for statement grouping instead of curly braces or begin-end blocks, and
developed a small number of powerful data types: a hash table (or dictionary, as we callit), a
list, strings, and numbers."
Before we take a look at the details of various machine learning methods, let's start by looking
at what machine learning is, and what it isn't. Machine learning is often categorized as a subfield
of artificial intelligence, but I find that categorization can often be misleading at first brush. The
study of machine learning certainly arose from research in this context, but in the data science
application of machine learning methods, it's more helpful to think of machine learning as a
means of building models of data.
At the most fundamental level, machine learning can be categorized into two main types:
supervised learning and unsupervised learning.
Supervised learning involves somehow modeling the relationship between measured features
of data and some label associated with the data; once this model is determined, it can be used
to apply labels to new, unknown data. This is further subdivided into classification tasks and
regression tasks: in classification, the labels are discrete categories, while in regression, the
labels are continuous quantities. We will see examples of both types of supervised learningin
the following section.
Unsupervised learning involves modeling the features of a dataset without reference to any label,
and is often described as "letting the dataset speak for itself." These models include taskssuch
as clustering and dimensionality reduction. Clustering algorithms identify distinct groups of
data, while dimensionality reduction algorithms search for more succinct representations of the
data. We will see examples of both types of unsupervised learning in the following section.
Human beings, at this moment, are the most intelligent and advanced species on earth because
they can think, evaluate and solve complex problems. On the other side, AI is still in its initial
stage and haven’t surpassed human intelligence in many aspects. Then the question is that what
is the need to make machine learn? The most suitable reason for doing this is, “to make decisions,
based on data, with efficiency and scale”.
Lately, organizations are investing heavily in newer technologies like Artificial Intelligence,
Machine Learning and Deep Learning to get the key information from data to perform several
real-world tasks and solve problems. We can call it data-driven decisions taken by machines,
particularly to automate the process. These data-driven decisions can be used, instead of using
programing logic, in the problems that cannot be programmed inherently. The fact is that we
can’t do without human intelligence, but other aspect is that we all need to solve real-world
problems with efficiency at a huge scale. That is why the need for machine learning arises.
While Machine Learning is rapidly evolving, making significant strides with cybersecurity and
autonomous cars, this segment of AI as whole still has a long way to go. The reason behind is
that ML has not been able to overcome number of challenges. The challenges that ML is facing
currently are −
Quality of data − Having good-quality data for ML algorithms is one of the biggest challenges.
Use of low-quality data leads to the problems related to data preprocessing and feature
extraction.
Lack of specialist persons − As ML technology is still in its infancy stage, availability of expert
resources is a tough job.
No clear objective for formulating business problems − Having no clear objective and well-
defined goal for business problems is another key challenge for ML because this technology is
not that mature yet.
Curse of dimensionality − Another challenge ML model faces is too many features of data
points. This can be a real hindrance.
Machine Learning is the most rapidly growing technology and according to researchers we are
in the golden year of AI and ML. It is used to solve many real-world complex problems which
cannot be solved with traditional approach. Following are some real-world applications of ML
Ø Emotion analysis
Ø Sentiment analysis
Ø Error detection and prevention
Ø Weather forecasting and prediction
Ø Stock market analysis and forecasting
Ø Speech synthesis
Ø Speech recognition
Ø Customer segmentation
Ø Object recognition
Ø Fraud detection
Ø Fraud prevention
Ø Recommendation of products to customer in online shopping
Arthur Samuel coined the term “Machine Learning” in 1959 and defined it as a “Field of study
that gives computers the capability to learn without being explicitly programmed”. And
that was the beginning of Machine Learning! In modern times, Machine Learning is oneof the
most popular (if not the most!) career choices. According to Indeed, Machine Learning Engineer
Is The Best Job of 2019 with a 344% growth and an average base salary of $146,085
per year.
But there is still a lot of doubt about what exactly is Machine Learning and how to start learning
it? So this article deals with the Basics of Machine Learning and also the path you canfollow to
eventually become a full-fledged Machine Learning Engineer. Now let’s get started!!!
This is a rough roadmap you can follow on your way to becoming an insanely talented Machine
Learning Engineer. Of course, you can always modify the steps according to your needs to reach
your desired end-goal!
In case you are a genius, you could start ML directly but normally, there are some prerequisites
that you need to know which include Linear Algebra, Multivariate Calculus, Statistics, and
Python. And if you don’t know these, never fear! You don’t need a Ph.D. degreein these topics
to get started but you do need a basic understanding.
Both Linear Algebra and Multivariate Calculus are important in Machine Learning. However,
the extent to which you need them depends on your role as a data scientist. If you are more
focused on application heavy machine learning, then you will not be that heavily focused on
maths as there are many common libraries available. But if you want to focus on R&D in
Machine Learning, then mastery of Linear Algebra and Multivariate Calculus is very important
as you will have to implement many ML algorithms from scratch.
Data plays a huge role in Machine Learning. In fact, around 80% of your time as an ML expert
will be spent collecting and cleaning data. And statistics is a field that handles the collection,
analysis, and presentation of data. So it is no surprise that you need to learn it!!! Some
of the key concepts in statistics that are important are Statistical Significance, Probability
Distributions, Hypothesis Testing, Regression, etc. Also, Bayesian Thinking is also a very
important part of ML which deals with various concepts like Conditional Probability, Priors,
and Posteriors, Maximum Likelihood, etc.
Some people prefer to skip Linear Algebra, Multivariate Calculus and Statistics and learn them
as they go along with trial and error. But the one thing that you absolutely cannot skip
is Python! While there are other languages you can use for Machine Learning like R, Scala,
etc. Python is currently the most popular language for ML. In fact, there are many Python
libraries that are specifically useful for Artificial Intelligence and Machine Learning such
as Keras, TensorFlow, Scikit-learn, etc.
So if you want to learn ML, it’s best if you learn Python! You can do that using various online
resources and courses such as Fork Python available Free on GeeksforGeeks.
Now that you are done with the prerequisites, you can move on to actually learning ML (Which
is the fun part!!!) It’s best to start with the basics and then move on to the more complicated
stuff. Some of the basic concepts in ML are:
Ø Supervised Learning – This involves learning from a training dataset with labeled data
using classification and regression models. This learning process continues until the
required level of performance is achieved.
Ø Unsupervised Learning – This involves using unlabelled data and then finding the
underlying structure in the data in order to learn more and more about the data itself using
factor and cluster analysis models.
Machine Learning can review large volumes of data and discover specific trends and patterns that
would not be apparent to humans. For instance, for an e-commerce website like Amazon, itserves
to understand the browsing behaviors and purchase histories of its users to help cater to the right
products, deals, and reminders relevant to them. It uses the results to reveal relevant
advertisements to them.
With ML, you don’t need to babysit your project every step of the way. Since it means giving
machines the ability to learn, it lets them make predictions and also improve the algorithms on
their own. A common example of this is anti-virus softwares; they learn to filter new threats as
they are recognized. ML is also good at recognizing spam.
3. Continuous Improvement
As ML algorithms gain experience, they keep improving in accuracy and efficiency. This lets
them make better decisions. Say you need to make a weather forecast model. As the amount of
data you have keeps growing, your algorithms learn to make more accurate predictions faster.
Machine Learning algorithms are good at handling data that are multi-dimensional and multi-
variety, and they can do this in dynamic or uncertain environments.
5. Wide Applications
You could be an e-tailer or a healthcare provider and make ML work for you. Where it does
apply, it holds the capability to help deliver a much more personal experience to customers while
also targeting the right customers.
1. Data Acquisition
Machine Learning requires massive data sets to train on, and these should be inclusive/unbiased,
and of good quality. There can also be times where they must wait for new data to be generated.
ML needs enough time to let the algorithms learn and develop enough to fulfill their purpose with
a considerable amount of accuracy and relevancy. It also needs massive resources to function.
This can mean additional requirements of computer power for you.
3. Interpretation of Results
Another major challenge is the ability to accurately interpret results generated by the algorithms.
You must also carefully choose the algorithms for your purpose.
4. High error-susceptibility
Machine Learning is autonomous but highly susceptible to errors. Suppose you train an
algorithm with data sets small enough to not be inclusive. You end up with biased predictions
coming from a biased training set. This leads to irrelevant advertisements being displayed to
customers. In the case of ML, such blunders can set off a chain of errors that can go undetected
for long periods of time. And when they do get noticed, it takes quite some time to recognize the
source of the issue, and even longer to correct it.
Guido Van Rossum published the first version of Python code (version 0.9.0) at alt.sources in
February 1991. This release included already exception handling, functions, and the core data
types of list, dict, str and others. It was also object oriented and had a module system. Python
version 1.0 was released in January 1994. The major new features included in this release were
the functional programming tools lambda, map, filter and reduce, which Guido Van Rossum
never liked.Six and a half years later in October 2000, Python 2.0 was introduced. This release
included list comprehensions, a full garbage collector and it was supporting unicode.Python
flourished for another 8 years in the versions 2.x before the next major release as Python 3.0 (also
known as "Python 3000" and "Py3K") was released. Python 3 is not backwards compatible with
Python 2.x. The emphasis in Python 3 had been on the removal of duplicate programming
constructs and modules, thus fulfilling or coming close to fulfilling the 13th law of the Zen of
Python: "There should be one -- and preferably only one -- obvious way to do it."Some changes
in Python 7.3:
Purpose :-
Python
Python features a dynamic type system and automatic memory management. It supportsmultiple
programming paradigms, including object-oriented, imperative, functional and procedural, and
has a large and comprehensive standard library.
Tensorflow
TensorFlow is a free and open-source software library for dataflow and differentiable
programming across a range of tasks. It is a symbolic math library, and is also used for
machine learning applications such as neural networks. It is used for both research and
production at Google.
TensorFlow was developed by the Google Brain team for internal Google use. It was released
under the Apache 2.0 open-source license on November 9, 2015.
Numpy
It is the fundamental package for scientific computing with Python. It contains various features
including these important ones:
Pandas
Matplotlib
Matplotlib is a Python 2D plotting library which produces publication quality figures in a variety
of hardcopy formats and interactive environments across platforms. Matplotlib can be used in
Python scripts, the Python and IPython shells, the Jupyter Notebook, web application servers,
and four graphical user interface toolkits. Matplotlib tries to make easy things easy and hard
things possible. You can generate plots, histograms, power spectra, bar charts, error charts,
scatter plots, etc., with just a few lines of code. For examples, see the sample plots and
thumbnail gallery.
For simple plotting the pyplot module provides a MATLAB-like interface, particularly when
combined with IPython. For the power user, you have full control of line styles, font properties,
axes properties, etc, via an object oriented interface or via a set of functions familiar to
MATLAB users.
Scikit – learn
Python features a dynamic type system and automatic memory management. It supportsmultiple
programming paradigms, including object-oriented, imperative, functional and procedural, and
has a large and comprehensive standard library.
Before you start with the installation process of Python. First, you need to know about your
System Requirements. Based on your system type i.e. operating system and based processor,
you must download the python version. My system type is a Windows 64-bit operating system.
So the steps below are to install python version 3.7.4 on Windows 7 device orto install Python 3.
Download the Python Cheat sheet here.The steps on how to install Python onWindows 10, 8 and
7 are divided into 4 parts to help understand better.
Now, check for the latest and the correct version for your operating system.
Step 3: You can either select the Download Python for windows 3.7.4 button in Yellow Color or
you can scroll further down and click on download with respective to their version. Here, we are
downloading the most recent python version for windows 3.7.4
Step 4: Scroll down the page until you find the Files option.
Step 5: Here you see a different version of python along with the operating system.
• To download Windows 32-bit python, you can select any one from the three options: Windows
x86 embeddable zip file, Windows x86 executable installer or Windows x86 web-based installer.
•To download Windows 64-bit python, you can select any one from the three options: Windows
x86-64 embeddable zip file, Windows x86-64 executable installer or Windows x86-64 web-based
installer.
Here we will install Windows x86-64 web-based installer. Here your first part regarding which
version of python is to be downloaded is completed. Now we move ahead with the second part in
installing python i.e. Installation
Note: To know the changes or updates that are made in the version you can click on the Release
Note Option.
Installation of Python
Step 1: Go to Download and Open the downloaded python version to carry out the installation
process.
Step 2: Before you click on Install Now, Make sure to put a tick on Add Python 3.7 to PATH.
Step 3: Click on Install NOW After the installation is successful. Click on Close.
With these above three steps on python installation, you have successfully and correctly installed
Python. Now is the time to verify the installation.
Note: If you have any of the earlier versions of Python already installed. You must first uninstall
the earlier version and then install the new one.
Step 3: Click on IDLE (Python 3.7 64-bit) and launch the program
Step 4: To go ahead with working in IDLE you must first save the file. Click on File > Click on
Save
Step 5: Name the file and save as type should be Python files. Click on SAVE. Here I have
named the files as Hey World.
Step 6: Now for e.g. enter print
8.SYSTEM TEST
The purpose of testing is to discover errors. Testing is the process of trying to discover every
conceivable fault or weakness in a work product. It provides a way to check the functionality of
components, sub assemblies, assemblies and/or a finished product It is the process of exercising
software with the intent of ensuring that the Software system meets its requirements and user
expectations and does not fail in an unacceptable manner. There are various types of test. Each test
type addresses a specific testing requirement.
TYPES OF TESTS
Unit testing
Unit testing involves the design of test cases that validate that the internal program
logic is functioning properly, and that program inputs produce valid outputs. Alldecision branches
and internal code flow should be validated. It is the testing of individual software units of the
application .it is done after the completion of an individual unit before integration. This is a
structural testing, that relies on knowledge of its construction and is invasive. Unit tests perform
basic tests at component level and test a specific business process, application, and/or system
configuration. Unit tests ensure that each unique path of a business process performs accurately to
the documented specifications and contains clearly defined inputsand expected results.
Integration testing
Integration tests are designed to test integrated software components to
determine if they actually run as one program. Testing is event driven and is more concerned with
the basic outcome of screens or fields. Integration tests demonstrate that although the components
were individually satisfaction, as shown by successfully unit testing, the combination of
components is correct and consistent. Integration testing is specifically aimed at exposing the
problems that arise from the combination of components.
Functional test
Functional tests provide systematic demonstrations that functions tested are
available as specified by the business and technical requirements, system documentation, and user
manuals.
Functional testing is centered on the following items:
System Test
System testing ensures that the entire integrated software system meets
requirements. It tests a configuration to ensure known and predictable results. An example of
system testing is the configuration oriented system integration test. System testing is based on
process descriptions and flows, emphasizing pre-driven process links and integration points.
Unit testing is usually conducted as part of a combined code and unit test phase
of the software lifecycle, although it is not uncommon for coding and unit testing to be conducted
as two distinct phases.
Field testing will be performed manually and functional tests will be written in detail.
Test objectives
Ø All field entries must work properly.
Ø Pages must be activated from the identified link.
Ø The entry screen, messages and responses must not be delayed.
Features to be tested
Ø Verify that the entries are of the correct format
Ø No duplicate entries should be allowed
Ø All links should take the user to the correct page.
Integration Testing
Software integration testing is the incremental integration testing of two or more
integrated software components on a single platform to produce failures caused by interface
defects.
The task of the integration test is to check that components or software applications, e.g.
components in a software system or – one step up – software applications at the company level –
interact without error.
Test Results: All the test cases mentioned above passed successfully. No defects encountered.
Acceptance Testing
User Acceptance Testing is a critical phase of any project and requires significant participation
by the end user. It also ensures that the system meets the functional requirements.
Test Results: All the test cases mentioned above passed successfully. No defects encountered.
9.SCREENSHOTS
Home page
User registration
7. 10.CONCLUSION
Ø Sign language is one of the useful tools to ease the communication between the deaf and
mute communities and normal society.
Ø Though sign language can be implemented to communicate, the target person must have
an idea of the sign language which is not possible always.
Ø This was meant to be a prototype to check the feasibility of recognizing sign language.
Ø The normal people can communities with deaf or dumb using sign language and the text
will be converted to sign images.
11.REFERENCES:
1. Amit kumar shinde and Ramesh Khagalkar “sign language to text and vice versa recoganization using
computer vision in Marathi” International journal of computer Application (0975-8887) National
conference on advanced on computing (NCAC 2015).
2. Sulabha M Naik Mahendra S Naik Akriti Sharma " Rehabilitation of hearing impaired children in
India"International Journal of Advanced Research in Computer and Communication Engineering.
3. Neha Poddar, Shrushti Rao, Shruti Sawant, Vrushali Somavanshi, Prof. Sumita Chandak "Study of Sign
Language Translation using Gesture Recognition" International Journal of Advanced Research in Computer
and Communication Engineering Vol. 4, Issue 2, February 2015.
4. Christopher A.N. Kurz "The pedagogical struggle of mathematics education for the deaf during the late
nineteen century: Mental Arithmetic and conceptual understanding" Rochester Institute of Technology,
Rochester, NY USA. Interactive Educational Multimedia, Number 10 (April 2005), pp. 54-65.
5. Foez M. Rahim, Tamnun E Mursalin, Nasrin Sultana “Intelligent Sign Language Verification System
Using Image Processing, clustering and Neural Network Concepts” American International University of
Liberal Arts-Bangladesh.
6. Shweta Doura, Dr . M.M.Sharmab "the Recognition of Alphabets of Indian Sign Language by Sugeno
type Fuzzy Neural Network"International Journal of Scientific International Journal of Scientific
Engineering and Applied Science (IJSEAS) – Volume-6, Issue-6, June 2020 ISSN: 2395-3470
www.ijseas.com 6 Engineering and Technology (ISSN : 2277-1581) Volume 2 Issue 5, pp : 336-341 1 May
2013.
7. Neha V. Tavari A. V. Deorankar Dr. P. N. Chatur" A Review of Literature on Hand Gesture Recognition
for Indian Sign Language"International Journal of Advance Research in Computer Science and
Management Studies Volume 1, Issue 7, December 2013.
8. Vajjarapu Lavanya, Akulapravin, M.S., Madhan Mohan" Hand Gesture Recognition And Voice
Conversion System Using Sign Language Transcription System" ISSN : 2230-7109 (Online) | ISSN : 2230-
9543 (Print) IJECT Vol. 5, Issue 4, Oct - Dec 2014.
9. Sanna K., Juha K., Jani M. and Johan M (2006), Visualization of Hand Gestures for Pervasive
Computing Environments, in the Proceedings of the working conference on advanced visual interfaces,
ACM, Italy, p. 480-483.
10. Jani M., Juha K., Panu K., and Sanna K. (2004). Enabling fast and effortless customization in
accelerometer based gesture interaction, in the Proceedings of the 3rd international conference on Mobile
and ubiquitous multimedia. ACM, Finland. P. 25-31.
11. Divyanshee Mertiya, Ayush Dadhich, Bhaskar Verma, DipeshPatidar “A Speaking module for Deaf
and Dumb”, student, assistant professor Department of Electronics & comm. Poornima Institute of
Engineering and Technology, Jaipur, Rajasthan, India.
12. T. Kapuscinski and M. Wysocki, “Hand Gesture Recognition for Man-Machine interaction”, Second
Workshop on Robot Motion and Control, October 18-20, 2001, pp. 91-96.
13. D. Y. Huang, W. C. Hu, and S. H. Chang, “Vision-based Hand Gesture Recognition Using PCA+Gabor
Filters and SVM”, IEEE Fifth International Conference on Intelligent Information Hiding and Multimedia
Signal Processing, 2009, pp. 1-4.
14. C. Yu, X. Wang, H. Huang, J. Shen, and K. Wu, “Vision-Based Hand Gesture Recognition Using
Combinational Features”, IEEE Sixth International Conference on Intelligent Information Hiding and
Multimedia Signal Processing, 2010, pp. 543-546.
https://doi.org/10.22214/ijraset.2022.47271