voice recognition service (vrs)

43
The Islamic University of Gaza Faculty of Engineering Computer Engineering Department Voice Recognition Service (VRS) Ahmed K. Eldaly Mohammed S. AbdullAll Shady A. Alefrangy Waleed E. Azam Supervisor Prof. Ibrahim S. I. Abuhaiba Final Graduation Project Report Submitted in Partial Fulfillment of the Requirements For The Bachelor of Science Degree 5341 (December, 2013)

Upload: shady-a-alefrangy

Post on 03-Jul-2015

795 views

Category:

Mobile


2 download

DESCRIPTION

Speech Recognition Service (SPRS) is a mobile application capable of recognition some of voices. And due to the system compatibility, users can running this application from any mobile devices supported by android system and SPRS is designed especially for deaf people. Voice recognition service (VRS) recognize voices in our real life especially in our home such that sound of the bell, telephone and door. VRS allows the user to many of the notifications options when you hear a specific sound previously identified where the user can choose one of the available options such as sending a message to mobile number or vibration. VRS requires minimum knowledge of how to use the mobile in order to be able to run it. VRS has Arabic, simple and user-friendly interface. This document includes a detailed description of system requirements both functional and non-functional, design models and description, functionalities of all system objects, and system testing so it could be used as a user manual for system users.

TRANSCRIPT

Page 1: Voice Recognition Service (VRS)

The Islamic University of Gaza

Faculty of Engineering

Computer Engineering Department

Voice Recognition Service (VRS)

Ahmed K. Eldaly

Mohammed S. AbdullAll

Shady A. Alefrangy

Waleed E. Azam

Supervisor

Prof. Ibrahim S. I. Abuhaiba

Final Graduation Project Report

Submitted in Partial Fulfillment of the Requirements

For

The Bachelor of Science Degree

5341

(December, 2013)

Page 2: Voice Recognition Service (VRS)

ii

Dedication

We dedicate this work

To our Parents…

To our supervisor Prof. Ibrahim Abuhaiba…

To our Dr. musbah shaat ..

To our University…

To our country, PALESTINE, …

Page 3: Voice Recognition Service (VRS)

iii

Acknowledgment

Really we are honored to be supervised by Prof. Ibrahim S. I. Abuhaiba and we

would like to thank him for his direction, assistance, and guidance.

In particular, Prof. Abuhaiba recommendations and suggestions have been invaluable

for choosing the idea and for the completion of our project.

It also must thank the Dr. Musbah Shaat, for all the help and guidance he provided,

he spent his time to sit with us and exchanged ideas and help us in dealing with the

MATLAB software and processing and analysis of digital sound.

We would like to thank our families, especially our parents, for their encouragement,

patience and assistance over the years. We are forever indebted to our parents, who

have always kept us in their prayers.

Page 4: Voice Recognition Service (VRS)

iv

VOICE RECOGNITION SERVICE

Ahmed K. Eldaly

Mohammed S. AbdullAll

Shady A. Alefrangy

Waleed E. Azam

ABSTRACT

Speech Recognition Service (SPRS) is a mobile application capable of recognition some of

voices. And due to the system compatibility, users can running this application from any

mobile devices supported by android system and SPRS is designed especially for deaf

people.

Voice recognition service (VRS) recognize voices in our real life especially in our home such

that sound of the bell, telephone and door. VRS allows the user to many of the notifications

options when you hear a specific sound previously identified where the user can choose one

of the available options such as sending a message to mobile number or vibration. VRS

requires minimum knowledge of how to use the mobile in order to be able to run it. VRS has

Arabic, simple and user-friendly interface.

This document includes a detailed description of system requirements both functional and

non-functional, design models and description, functionalities of all system objects, and

system testing so it could be used as a user manual for system users.

Keywords: Voice Recognition Service (VRS); Mobile; Voice;

Android; Nnotifications; Deaf;

Page 5: Voice Recognition Service (VRS)

v

TABLE OF CONTENTSDEDICATION ..................................................................................................................... II

ACKNOWLEDGMENTS ................................................................................................ III

ABSTRACT ........................................................................................................................ IV

LIST OF FIGURES .......................................................................................................... VII

LIST OF ABBREVIATIONS ....................................................................................... VIII

CHAPTER 1: INTRODUCTION ....................................................................................... 1

1.1 WHY VOICE RECOGNITION SERVICE (VRS)? .................................................... 1

1.2 PROJECT DESCRIPTION ........................................................................................... 1

1.3 SİMİLAR PREVIOUS SYSTEMS .............................................................................. 2

1.4 REPORT OUTLINES ................................................................................................... 5

CHAPTER 2: VOICE RECOGNITION BACKGROUND ............................................... 6

2.1 WHAT IS VOICE RECOGNITION, AND WHY IS IT USEFUL IN A VIRTUAL

ENVIRONMENT? ........................................................................................................... 6

2.2 HOW IS VOICE RECOGNITION PERFORMED?.................................................... 7

2.3 HOW IT WORKS?........................................................................................................ 8

2.4 STRENGTHS AND WEAKNESSES........................................................................... 9

2.5 WHAT DISCIPLINES ARE INVOLVED IN VOICE RECOGNITION?................. 10

2.6 ENROLMENT.............................................................................................................. 10

2.7 VOICE RECOGNITION APPLICATIONS................................................................ 11

2.8 PATTERN MATCHING...............................................................................................11

CHAPTER 3: SYSTEM REQUIREMENTS ................................................................... 12

3.1 FUNCTIONAL REQUIREMENTS ........................................................................... 12

3.1.1 Admin Functionalities ................................................................................................ 12

3.2 NON-FUNCTIONAL REQUIREMENTS ................................................................. 13

CHAPTER 4: SYSTEM DESIGN .................................................................................... 16

4.1 USE CASE MODEL ..................................................................................................... 16

4.1.1 Actors. ......................................................................................................................... 16

4.1.2 Use Cases .................................................................................................................... 16

4.1.3 Sequence diagram ....................................................................................................... 18

4.1.4 Class diagram .............................................................................................................. 19

CHAPTER 5: USED SOFTWARE TOOLS .................................................................... 20

Page 6: Voice Recognition Service (VRS)

vi

5.1 MATLAB ..................................................................................................................... 20

5.2 ECLIPSE ...................................................................................................................... 21

5.3 ADT PLUGIN ............................................................................................................. 21

5.4 EDRAW MAX ............................................................................................................ 22

CHAPTER 6: SYSTEM TESTING ................................................................................. 24

6.1 IMPLEMENTATION ISSUES .................................................................................... 24

6.1.1 Distinguish sounds from each other ........................................................................... 24

6.1.2 SMS Massage Algorithm ........................................................................................... 24

6.1.3 Send Email Algorithm ................................................................................................ 25

6.2 TESTING ..................................................................................................................... 25

6.2.1 Main View. ................................................................................................................. 25

6.2.2 Email message .......................................................................................................... 26

6.2.3 Vibration time ........................................................................................................... 28

6.2.4 Send SMS ................................................................................................................. 29

6.2.5 Choose song automatically as output ....................................................................... 31

CHAPTER 7: CONCLUSION .......................................................................................... 33

7.1 SUMMARY ................................................................................................................. 33

7.2 FUTURE WORK ......................................................................................................... 33

7.3 RECOMMENDATIONS ............................................................................................ 34

REFERENCES ................................................................................................................. 35

Page 7: Voice Recognition Service (VRS)

vii

LIST OF FIGURES Figure 1.1: Whistle Android Finder FREE ……………………………………………… 3

Figure 1.2: Clap to Find ……………………………………………….…………………4

Figure 4.1: Use cases diagram ………………………………….……….………………17

Figure 4.2: Sequence Diagram ………………………………………………………….18

Figure 4.3: Class diagram ……………………………………………….………………19

Figure 5.1: EDRAW MAX ……………………………………………….…………….23

Figure 6.1: Main View ……………………………………………….…………………25

Figure 6.2: Choose Main Features ……………………………………………….……...27

Figure 6.3: Start Listening ……………………………………………….……………...27

Figure 6.4: Message does not sent …………………………………………….………...27

Figure 6.5: Message was sent …………………………………………….…………….27

Figure 6.6: Time Vibration ………………………………..…………….………………28

Figure 6.7: Choose Time Vibration …………………………………………….…….…28

Figure 6.8: Time Vibration was chosen …...…………………………….………………28

Figure 6.9: Send SMS option ……………………………………………………..……..29

Figure 6.10: Start Listening …………………………………………….…….………....29

Figure 6.11: SMS Send Successfully …………………………………………...………30

Figure 6.12: Change Song ………………………………………………………………31

Figure 6.13: Click Song Feature …………………………………………………….…..31

Figure 6.14: Choose Song From List View …………………………………………….32

Figure 6.15: Message Appear with Choose song name .…………………………...……32

Page 8: Voice Recognition Service (VRS)

viii

LIST OF ABBREVIATIONS

Term Definition

VRS Voice Recognition Service

SPRS Speech Recognition Service

Matlab Mathematics Laboratory

IDE Integrated Development Tools

PC Personal Computer

ADT Android Development Tool

Page 9: Voice Recognition Service (VRS)

1

Chapter 1

INTRODUCTION

1.1 WHY VOICE RECOGNITION SERVICE (VRS)?

There is a slice of people in our society are neglected and unable to communicate with

ordinary people because of their disability, they are deaf.

A deaf person cannot live in the house alone, without another person guide him on the

strange events to get inside the house for example (ring a bell house or ring phone home or

fire alarms).

We decided to employ the best of our knowledge at the service of this slide neglected

programming application can run on smart handheld devices and thus feel the deaf that

disability does not prevent him from communicating with the outside world.

This program is not limited to use only on deaf person, but the ordinary person can use it

for other purposes for example, when a fire was deaf person is attentive will be sent an

SMS to Mobile someone else inform him of the existence of a fire inside the house.

1.2 PROJECT DESCRIPTION

VRS is an application that runs on all devices that use Android system.

The project consists of 3 interfaces, one major and two subcommittees the main, interface

contain several options the user can control it, and interface appear to start listening to the

voices and the interface showing the result.

Interfaces convenient and easy to use.

Page 10: Voice Recognition Service (VRS)

2

In the main interface the user can choose that the alarm is received through email or by

sending a text message to a phone number to be determined in advance and can choose a

vibration when a voice

The application supports 3 main voices beep sound and the sound of the bell and the sound

of applause

Once the issue one of the three votes, the application to identify the sound and show a

picture on the screen demonstrates the kind of sound in addition the device and send a text

message or email as the user's choice guarantee the scalability of the project.

1.3 SIMILAR PREVIOUS SYSTEMS

i. Whistle Android Finder FREE

The Whistle Android Finder FREE Figure 1.1 is amazing Android finder (phone locator)

application which has helped many people locate their Android device with just a simple

WHISTLE after losing it, forgetting it somewhere or being hidden somewhere in a room

on a desk behind papers, in a briefcase or in a coat pocket etc.

Page 11: Voice Recognition Service (VRS)

3

Page 12: Voice Recognition Service (VRS)

4

Main Features

Whistle Android Finder FREE can be enabled or disabled under the settings tab.

Simply run the application and the settings tab will appear.

Whistle detection is working ONLY when the device is sleeping.

Once enabled, Whistle Android Finder FREE will truly work "forever" even if you

reboot your Android device! Of course, you can disable it under the settings tab at

any time.

Whistle Android Finder FREE integrates the ability to release the microphone of

your Android device during incoming or outgoing calls or when the screen of your

device is ON! After a call ends, the normal background operation of whistle

detection will resume automatically.

It is possible to choose among 5 different whistle detection sensitivity levels

Whistle Android Finder FREE is just ready to adapt to any Android device

regardless of the specifics of integrated acoustic components.

ii. Clap to Find

Clap to find app Figure 1.2 provides you with the ease of finding your android device

with just a couple of claps. This app also works if the device is in other room or in a

bag .

Clap to Find requires minimum system resources to work.

Page 13: Voice Recognition Service (VRS)

5

The application enables the user:

To enable and disable the application by a widget.

To adjust the sensitivity of detection.

To select a custom ringtone.

To adjust the volume of the ringtone

To adjust the time for which the ringtone plays.

1.4 REPORT OUTLINES

Voice recognition background in chapter 2.

The description of all system functionalities and requirements is explained in chapter 3.

Functional requirements is in section 3.1, nonfunctional requirement of the system in

section 3.2.

System design in chapter 4.

Used software tools in chapter 5.

Matlab in section 5.1, Eclipse in section 5.2, ADT Plugin in section 5.3, Edraw Max in

section 5.4.

System test in chapter 6.

Implementation issues in section 6.1, Testing in section 6.2.

Conclusion, future work, and recommendation are provided in chapter 3.

Page 14: Voice Recognition Service (VRS)

6

Chapter 2 Voice recognition background

Voice recognition is the process of taking the spoken word as an input to a computer

program. This process is important to virtual reality because it provides a fairly natural and

intuitive way of controlling the simulation while allowing the user's hands to remain free.

This article will delve into the uses of voice recognition in the field of virtual reality,

examine how voice recognition is accomplished, and list the academic disciplines that are

central to the understanding and advancement of voice recognition technology.

2.1 WHAT IS VOICE RECOGNITION, AND WHY IS IT

USEFUL IN A VIRTUAL ENVIRONMENT?

Voice recognition is "the technology by which sounds, words or phrases spoken by humans

are converted into electrical signals, and these signals are transformed into coding patterns

to which meaning has been assigned" . While the concept could more generally be called

"sound recognition", we focus here on the human voice because we most often and most

naturally use our voices to communicate our ideas to others in our immediate surroundings.

In the context of a virtual environment, the user would presumably gain the greatest feeling

of immersion, or being part of the simulation, if they could use their most common form

of communication, the voice. The difficulty in using voice as an input to a computer

simulation lies in the fundamental differences between human speech and the more

traditional forms of computer input. While computer programs are commonly designed to

produce a precise and well-defined response upon receiving the proper (and equally

precise) input, the human voice and spoken words are anything but precise. Each human

voice is different, and identical words can have different meanings if spoken with different

inflections or in different contexts. Several approaches have been tried, with varying

degrees of success, to overcome these difficulties.

Page 15: Voice Recognition Service (VRS)

7

2.2 HOW IS VOICE RECOGNITION PERFORMED?

The most common approaches to voice recognition can be divided into two classes:

"template matching" and "feature analysis". Template matching is the simplest technique

and has the highest accuracy when used properly, but it also suffers from the most

limitations. As with any approach to voice recognition, the first step is for the user to speak

a word or phrase into a microphone. The electrical signal from the microphone is digitized

by an "analog-to-digital (A/D) converter", and is stored in memory. To determine the

"meaning" of this voice input, the computer attempts to match the input with a digitized

voice sample, or template, that has a known meaning. This technique is a close analogy to

the traditional command inputs from a keyboard. The program contains the input template,

and attempts to match this template with the actual input using a simple conditional

statement.

Since each person's voice is different, the program cannot possibly contain a template for

each potential user, so the program must first be "trained" with a new user's voice input

before that user's voice can be recognized by the program. During a training session, the

program displays a printed word or phrase, and the user speaks that word or phrase several

times into a microphone. The program computes a statistical average of the multiple

samples of the same word and stores the averaged sample as a template in a program data

structure. With this approach to voice recognition, the program has a "vocabulary" that is

limited to the words or phrases used in the training session, and its user base is also limited

to those users who have trained the program. This type of system is known as "speaker

dependent." It can have vocabularies on the order of a few hundred words and short

phrases, and recognition accuracy can be about 98 percent.

A more general form of voice recognition is available through feature analysis and this

technique usually leads to "speaker-independent" voice recognition. Instead of trying to

find an exact or near-exact match between the actual voice input and a previously stored

voice template, this method first processes the voice input using "Fourier transforms" or

"linear predictive coding (LPC)", then attempts to find characteristic similarities between

the expected inputs and the actual digitized voice input. These similarities will be present

Page 16: Voice Recognition Service (VRS)

8

for a wide range of speakers, and so the system need not be trained by each new user. The

types of speech differences that the speaker-independent method can deal with, but which

pattern matching would fail to handle, include accents, and varying speed of delivery, pitch,

volume, and inflection. Speaker-independent speech recognition has proven to be very

difficult, with some of the greatest hurdles being the variety of accents and inflections used

by speakers of different nationalities. Recognition accuracy for speaker-independent

systems is somewhat less than for speaker-dependent systems, usually between 90 and 95

percent.

Another way to differentiate between voice recognition systems is by determining if they

can handle only discrete words, connected words, or continuous speech. Most voice

recognition systems are discrete word systems, and these are easiest to implement. For this

type of system, the speaker must pause between words. This is fine for situations where

the user is required to give only one word responses or commands, but is very unnatural

for multiple word inputs. In a connected word voice recognition system, the user is allowed

to speak in multiple word phrases, but he or she must still be careful to articulate each word

and not slur the end of one word into the beginning of the next word. Totally natural,

continuous speech includes a great deal of "coarticulation", where adjacent words run

together without pauses or any other apparent division between words. A speech

recognition system that handles continuous speech is the most difficult to implement.

2.3 HOW IT WORKS?

Voice recognition technology utilizes the distinctive aspects of the voice to verify the

identity of individuals. Voice recognition is occasionally confused with speech recognition,

a technology which translates what a user is saying (a process unrelated to authentication).

Voice recognition technology, by contrast, verifies the identity of the individual who is

speaking. The two technologies are often bundled – speech recognition is used to translate

the spoken word into an account number, and voice recognition verifies the vocal

characteristics against those associated with this account.

Voice recognition can utilize any audio capture device, including mobile and land

Page 17: Voice Recognition Service (VRS)

9

telephones and PC microphones. The performance of voice recognition systems can vary

according to the quality of the audio signal as well as variation between enrollment and

verification devices, so acquisition normally takes place on a device likely to be used for

future verification.

During enrollment an individual is prompted to select a passphrase or to repeat a sequence

of numbers. The passphrases selected should be approximately 1-1.5 seconds in length –

very short passphrases lack enough identifying data, and long passwords have too much,

both resulting in reduced accuracy. The individual is generally prompted to repeat the

passphrase or number set a handful of times, making the enrollment process somewhat

longer than most other biometrics.

2.4 STRENGTHS AND WEAKNESSES:

One of the challenges facing large-scale implementations of biometrics is the need to

deploy new hardware to employees, customers and users. One strength of telephony-based

voice recognition implementations is that they are able to circumvent this problem,

especially when they are implemented in call center and account access applications.

Without additional hardware at the user end, voice recognition systems can be installed as

a subroutine through which calls are routed before access to sensitive information is

granted. The ability to use existing telephones means that voice recognition vendors have

hundreds of millions of authentication devices available for transactional usage today.

Similarly, voice recognition is able to leverage existing account access and authentication

processes, eliminating the need to introduce unwieldy or confusing authentication

scenarios. Automated telephone systems utilizing speech recognition are currently

ubiquitous due to the savings possible by reducing the amount of employees necessary to

operate call centers. Voice recognition and speech recognition can function simultaneously

using the same utterance, allowing the technologies to blend seamlessly. Voice recognition

can function as a reliable authentication mechanism for automated telephone systems,

Page 18: Voice Recognition Service (VRS)

11

adding security to automated telephone-based transactions in areas such as financial

services and health care.

Though inconsistent with many users’ perceptions, certain voice recognition technologies

are highly resistant to imposter attacks, even more so than some fingerprint systems. While

false non-matching can be a common problem, this resistance to false matching means that

voice recognition can be used to protect reasonably high-value transactions.

Since the technology has not been traditionally used in law enforcement or tracking

applications where it could be viewed as a Big Brother technology, there is less public fear

that voice recognition data can be tracked across databases or used to monitor individual

behavior. Thus, voice recognition largely avoids one of the largest hurdles facing other

biometric technologies, that of perceived invasiveness.

2.5 WHAT DISCIPLINES ARE INVOLVED IN VOICE

RECOGNITION?

The template matching method of voice recognition is founded in the general principles of

digital electronics and basic computer programming. To fully understand the challenges of

efficient speaker- independent voice recognition, the fields of phonetics, linguistics, and

digital signal processing should also be explored.

2.6 ENROLMENT

Everybody’s voice sounds slightly different, so the first step in using a voice-recognition

system involves reading an article displayed on the screen. This process, called enrolment,

takes less than 10 minutes and results in a set of files being created which tell the software

how you speak. Many of the newer voice-recognition programs say this is not required,

however it is still worth doing to get the best results. The enrolment only has to be done

once, after which the software can be started as needed.

Page 19: Voice Recognition Service (VRS)

11

2.7 VOICE RECOGNITION APPLICATIONS:

Voice recognition is a strong solution for implementations in which vocal interaction is

already present. It is not a strong solution when speech is introduced as a new process.

Telephony is the primary growth area for voice recognition, and will likely be by far the

most common area of implementation for the technology. Telephony-based applications

for voice recognition include account access for financial services, customer authentication

for service calls, and challenge-response implementations for house arrest and probation-

related authentication. These solutions route callers through enrollment and verification

subroutines, using vendor-specific hardware and software integrated with an institution's

existing infrastructure.

Voice recognition has also been implemented in physical access solutions for border

crossing, although this is not the technology's ideal deployment environment.

2.8 PATTERN MATCHING:

The pattern matching process involves the comparison of a given set of input feature

vectors against the speaker model for the claimed identity and computing a matching score.

For the Hidden Markov models discussed above, the matching score is the probability that

a given set of feature vectors was generated by the model.

Page 20: Voice Recognition Service (VRS)

12

Chapter 3

REQUIREMETS AND SPECIFICATIONS

3.1 FUNCTIONAL REQUIREMENTS

3.1.1 Admin Functionalities

Admin is considered the person with ultimate authorities in the system with many

functionalities. First, admin can change the program's main settings including program

name, select voice type, select the shape of result and choose the tone with result.

Furthermore, admin can modify the message content which contain the result and

determine if he want to send the result on another destination as another telephone or email.

The admin can specify the type of the resulting tone and length, for example can be to

choose a bell tone if the result sound is the sound of the bell. Also can select the type of

output (just tone, just vibration or tone and vibration).

Can also select some or all of the voices from the list to be recognized by the program. This

helps to increase the speed of the program if a few selected voices.

Managing program is another critical issue for an admin to handle. Admin is responsible

for adding, deleting, and editing Voice information. On the other hand any user cannot

manipulate neither admin nor each other information.

Page 21: Voice Recognition Service (VRS)

13

3.2 NON-FUNCTIONAL REQUIREMENTS

Performance Requirements

System should recognize to any Voices in his list without any fault.

With Ideal conditions, system response should be fast and error-free.

System performance shall not decrease with time or by usage.

Performance and speed should not depend on newer or older mobile, but that

depends on mobile phone capable of running Android programs or not.

Security Requirements

Change the data is only allowed to admins and forbidden to any user.

Program run without web, that is mean Protected from hackers.

Software Quality Attributes

Availability

This System will be up to date and offer all the facilities to the users. Also

view the right detection.

Flexibility

This System will be easy to learn and easy to use, also will be provide help

page for all new users.

Meaningful notification messages are displayed when some error happens.

Robustness

No wrong information will be entered.

Page 22: Voice Recognition Service (VRS)

14

Accuracy

The system will not permit to the users enter any invalid data.

Every admin must have a unique identification.

Adaptability

VRS supports adding new voices without changing old voices.

The software is flexible and scalable so it can fit any Voice.

Aesthetics

The finished software has a nice view and appropriate to the nature of its work

as a management program.

All text will be clear and well readable.

Compatibility

All users using this program will interact with any voice without any changes

to the original code.

The system will be compatible with all mobile capable to run android

program.

Frequency/Severity of Failure

There will not be any unhandled exceptions from incorrect user input.

Human Factors

GUI is user-friendly and attractive.

Menus have a consistent format.

There will be a lot of expressive images.

Page 23: Voice Recognition Service (VRS)

15

Maintainability

Software development team will be the maintenance team for any error or

defect.

Predictability

The system can never crash.

The system must produce predictable results.

Reliability

The system will be available 100% of the time.

Response Time

Query response time must be fast.

All queries must return a response in < 2 seconds.

Understandability

All users can learn to operate major use cases without outside assistance.

Testability

All major use cases must be tested.

100% of the quality requirements must be measurable.

Page 24: Voice Recognition Service (VRS)

16

Chapter 4

SYSTEM DESIGN

This chapter describes the main aspects of the system design and architecture. The first

section describes the design represented in terms of use case diagrams. The second section

provides class diagrams that were designed for VRS system. And finally the third section

provides brief information about modules of the system.

4.1 USE CASE MODEL 4.1.1 Actors :

There are one type of actors in the system namely administrator. The actors have access of

the system without authorization.

4.1.2 Use Cases :

The Use Case diagram for the system is shown in Figure 4.1. As can be seen from the

diagram the actor has access to different Use Cases.

The administrator is able to manage all resources; it is only the administrator who can add

modify and general settings and manage librarians.

The Use Case diagram for the system is shown in Figure 4.1. As can be seen from the

diagram administrator has access to different Use Cases.

Page 25: Voice Recognition Service (VRS)

17

The administrator is able to manage all resources (change time vibration, change output

state (only vibrate, only song, vibrate and song), send the output to email or mobile SMS

or together both email and SMS mobile).

Page 26: Voice Recognition Service (VRS)

18

4.1.3 Sequence diagram :

Page 27: Voice Recognition Service (VRS)

19

4.1.4 Class diagram :

Page 28: Voice Recognition Service (VRS)

21

Chapter 5

USED SOFTWARE TOOLS

5.1 MATLAB

MATLAB is a high-level language and interactive environment for numerical

computation, visualization, and programming. Using MATLAB, you can analyze data,

develop algorithms, and create models and applications. The language, tools, and built-in

math functions enable you to explore multiple approaches and reach a solution faster than

with spreadsheets or traditional programming languages, such as C/C++ or Java.

Advantages of Using Matlab

High-level language for numerical computation, visualization, and application

development.

Interactive environment for iterative exploration, design, and problem solving.

Mathematical functions for linear algebra, statistics, Fourier analysis, filtering,

optimization, numerical integration, and solving ordinary differential equations.

Built-in graphics for visualizing data and tools for creating custom plots.

Development tools for improving code quality and maintainability and maximizing

performance.

Tools for building applications with custom graphical interfaces.

Functions for integrating MATLAB based algorithms with external applications

and languages such as C, Java, .NET, and Microsoft Excel.

Interfacing with other languages: MATLAB can call functions and subroutines

written in the C programming language or Fortran.

Page 29: Voice Recognition Service (VRS)

21

A wrapper function is created allowing MATLAB data types to be passed and returned.

The dynamically loadable object files created by compiling such functions are termed

"MEX-files" (for MATLAB executable). Libraries written in Perl, Java, ActiveX or .NET

can be directly called from MATLAB,[23][24] and many MATLAB libraries (for example

XML or SQL support) are implemented as wrappers around Java or ActiveX libraries.

Calling MATLAB from Java is more complicated, but can be done with a MATLAB

toolbox which is sold separately by MathWorks, or using an undocumented mechanism

called JMI (Java-to-MATLAB Interface),(which should not be confused with the nrelated

Java Metadata Interface that is also called JMI).

5.2 ECLIPSE

In computer programming, Eclipse is an Integrated development environment (IDE)

comprising a base workspace and an extensible plug-in system for customizing the

environment. It is written mostly in Java. It can be used to develop applications in Java

and, by means of various plug-ins, other programming languages including Ada, C, C++,

COBOL, Fortran, Haskell, JavaScript, Lasso, Perl, PHP, Python, R, Ruby (including Ruby

on Rails framework), Scala, Clojure, Groovy, Scheme, and Erlang. It can also be used to

develop packages for the software Mathematics. Development environments include the

Eclipse Java development tools (JDT) for Java and Scala, Eclipse CDT for C/C++ and

Eclipse PDT for PHP, among others.

5.3 ADT PLUGIN

Android Development Tools (ADT) is a plugin for the Eclipse IDE that is designed to give

you a powerful, integrated environment in which to build Android applications.

ADT extends the capabilities of Eclipse to let you quickly set up new Android projects,

create an application UI, add packages based on the Android Framework API, debug your

applications using the Android SDK tools, and even export signed (or unsigned) .apk files

in order to distribute your application.

Page 30: Voice Recognition Service (VRS)

22

Developing in Eclipse with ADT is highly recommended and is the fastest way to get

started. With the guided project setup it provides, as well as tools integration, custom XML

editors, and debug output pane, ADT gives you an incredible boost in developing Android

applications.

Because ADT is a plugin for Eclipse, you get the functionality of a well-established IDE,

along with Android-specific features that are bundled with ADT.

Advantages of Using Eclipse and ADT

Integrated Android project creation, building, packaging, installation, and debugging:

ADT integrates many development workflow tasks into Eclipse, making it easy for

you to rapidly develop and test your Android applications.

SDK Tools integration: many of the SDK tools are integrated into Eclipse's menus,

perspectives, or as a part of background processes ran by ADT.

Java programming language and XML editors: the Java programming language

editor contains common IDE features such as compile time syntax checking, auto-

completion, and integrated documentation for the Android framework APIs. ADT

also provides custom XML editors that let you edit Android-specific XML files in

a form-based UI. A graphical layout editor lets you design user interfaces with a

drag and drop interface.

Integrated documentation for Android framework APIs: you can access

documentation by hovering over classes, methods, or variables.

5.4 EDRAW MAX

Edraw Max is versatile graphics software, with features that make it easy to draw

professional-looking flowcharts, UML diagrams, database model diagrams.

This tool has more than 5000 built-in vector symbols, which can be used to make a wide

variety of business charts and presentations while working in an intuitive and familiar

office-style environment.

Page 31: Voice Recognition Service (VRS)

23

We use this tool to create our class diagram, use-case diagram, and sequence diagram both

at the SRS and the final report. Figure 5.1 shows a snapshot of this tool while working at

the use-case diagram.

Page 32: Voice Recognition Service (VRS)

24

Chapter 6 SYSTEM TESTING

6.1. IMPLEMENTATION ISSUES

6.1.1. Distinguish sounds from each other :

This is the main problem in my project, we tried more time to solve this problem and we can

success, at the beginning of the project, the program recognize only one voice (Whistle) but

when we want to add new voice to recognize it, we face many problems like overlap between

two signals and two voice appeared and the recognition was bad and when we added another

voice (Third voice) the process became more complicated but we solved this problem we depend

on features of signal to distinguish signals so distinguish feature from signal to another, we

chose ranges different from other ranges to prevent overlapping signals.

6.1.2. SMS Massage Algorithm :

This algorithm sent massage to another mobile system to advertise massage to another person so

this algorithm is very useful in my program.

On the grounds that the person meant no mobile phone with him (possibly losing or forgetting)

so that if the massage sent into his father or his friends that's good.

Page 33: Voice Recognition Service (VRS)

25

6.1.3. Send Email Algorithm :

When we think to make algorithm to send massage through email we faced big problem if the

email correct or not so we make an algorithm below to solve this problem using matcher class.

6.2. Testing

6.2.1. Main view

The main interface for my program it includes many features to facilitate for users.

Features like:

Email massage it sent to email by program automatically when user add email he want to

send massage through it.

SMS message it sent to another mobile by program automatically when user add mobile

number he want to send massage through it.

Vibration time, when the program during the execution it takes this time to vibration.

Changing song, user can change song by keep his hand in front of screen.

Page 34: Voice Recognition Service (VRS)

26

6.2.2. Email message :

1. User check to email and after that he add an email he want to send massage through it. Figure

6.2.

2. When user click to start program.

3. After user click to start program figure 6.3 appear to listen voices.

4. After the program listen to whistle voice like figure 6.4 the program can recognize whistle

voice but the massage doesn't send because in figure 6.2 an internet disconnect.

5. But when an internet was connecting, the massage was sent as in figure 6.5.

Page 35: Voice Recognition Service (VRS)

27

Page 36: Voice Recognition Service (VRS)

28

6.2.3. Vibration time :

1. User choose time vibration like figure 6.6 to see mobile vibrate in time chose in output result.

2. In figure 6.7, user choose time from list view.

3. In figure 6.8, time was chosen.

Page 37: Voice Recognition Service (VRS)

29

6.2.4. Send SMS :

1. By check “ ارسال رسالة قصيرة“the mobile field set enable and user can enter mobile NO.

to send alarm message to it in figure 6.9.

2. To start application user will click start button.

3. The second view “جاري االستماع” Figure 6.10 will appear.

Page 38: Voice Recognition Service (VRS)

31

4. The third view “SMS sent successfully as in Figure 6.12

5. The result is “the message send successfully “ and toast message with the output as

example “ شخص يصفر لك“ will appear in figure 6.11.

Page 39: Voice Recognition Service (VRS)

31

6.2.5. Choose song automatically as output :

1. By check “ تغير النغمة تلقائي“ the system will be able to choose song automatically from

the song list by keep hand of user in front of mobile screen in figure 6.12.

2. When the user chick “ نغمة “ the system will choose the song to run it as additional

result when voice detected if automatically choose “اختيار نغمة تلقائي” is on see that in

figure 6.13.

Page 40: Voice Recognition Service (VRS)

32

3. If choose automatically “ اختيار النغمة تلقائي” is disable and check “نغمة ” button the

song list in figure 6.14 will appear to choose song manually from it .

4. The toast message appear with choose song name see that in figure 6.15.

Page 41: Voice Recognition Service (VRS)

33

Chapter 7

CONCLUSION 7.1 SUMMARY

VRS which capable of detect voice and recognize it to know if its sound of clap or ringing

sound or Whistle sound.

VRS enables user some option to get alarm when voice detect ,it can send email with alarm

type or by SMS to mobile number

VRS enables user to choose song and run it when voice is detect and system can choose

song automatically.

VRS enables user to choose how much second mobile will vibrate when sound detected.

Finally, VRS is flexible, effective, and attractive system. This system can be easily

extended by introducing new modules and implementing new interfaces.

7.2 FUTURE WORK

There is no limit for development, improving and evaluating. Our future vision is to

implement and extend this system to support multiple languages rather than Arabic.

We also hope to add some services not included in this version of the system such as Prayer

Time service which can be used to send notifications to user on their mobiles or email or

run some voice when Prayer Time is coming

Page 42: Voice Recognition Service (VRS)

34

7.3 RECOMMENDATION

With a system like VRS depth users can easily and attractively deal with deferent sound .

If all depth people in our country started to use VRS they will Interacts with real sound and

feel different and good .

Every person can help with this improvement according to his work field. Our minds

should not stop on some fields for development.

Our field for development is the electronic management using the newest technologies.

We should do the best every time for better life and future.

Page 43: Voice Recognition Service (VRS)

35

REFERENCES

References

[1] Adams, Russ, Sourcebook of Automatic Identification and Data Collection, Van

Nostrand Reinhold, New York, 1990.

[2] Cater, John P., Electronically Hearing: Computer Speech Recognition, Howard W.

Sams & Co., Indianapolis, IN, 1984.

[3] Fourcin, A., G. Harland, W. Barry, and V. Hazan, editors, Speech Input and Output

Assessment, Ellis Horwood Limited, Chichester, UK, 1989.

[4] Yannakoudakis, E. J., and P. J. Hutton, Speech Synthesis and Recognition Systems,

Ellis Horwood Limited, Chichester, UK, 1987.