Вы находитесь на странице: 1из 7

Course Code: EEE309 (sec:2)

Group No: 2

Presentation on Open Ended Lab Demonstration of Simple


Voice Recognition System for ‘GO’ & ‘STOP’

Names & ID’s of the Group Members


Md. Tanvir Kabir 2014-2-80-048
Masum Rana 2014-3-80-030
Md. Iliash Ahmed 2015-1-80-018
Md. Siddikur Rahman 2015-1-80-048
Nur-A-Alam 2013-2-80-099
Process of Implementation
We were provided 128 ‘GO’ sample & 145 ‘STOP’ sample as training data And
some test (go and stop) data.
Generalized the samples ‘GO’ & ‘STOP’ for developing a MATLAB code.

Go PSD curve
1

0.8

0.6

0.4

0.2

0
0 5 10 15 20 25 30 35

STOP PSD curve


1

0.8

0.6

0.4

0.2

0
0 5 10 15 20 25 30 35

Figure-1: PSD Stem for general observation of ‘GO’ & ‘STOP’.


Process of Implementation (Cont….)
•  We took normalized average PSD of ‘GO’ data and ‘STOP’ data using pyulear function of

MATLAB for reference standard data.
audio_data = audioread(file);
[x] = pyulear(audio_data, order, nfft, fs);
audio_dataNr = audio_data/max(audio_data);
where, audio_data = audio which we read using ‘audioread’ function
fs = sample frequency we used
order = our used order
nfft = resolution we want to take Furrier transform
x = output PSD magnitude
average data (reference) =

 Pyulear is a MATLAB built-in function where we put data in time domain and it converts it to frequency domain
and gives us power spectrum density (PSD).
Process of Implementation (Cont….)
•  We stored the data of each samples as reference.

The test data was also converted to PSD using pyulear and then normalized.

Then we took the difference of the normalized test data from both reference, ‘GO’ and ‘STOP’.
Difference = Normalized average data (reference) – Normalized test data
diffg = g_avg - test_dataNr;
(For both ‘GO’ and ‘STOP’)
 Then we take the average of both difference for ‘GO’ and ‘STOP’
average data =
gad = 0 ;
for j = 1: length(diffg)
gad = gad + diffg(j);
end
gad= gad / length(diffg);
Process of Implementation (Cont….)
 If the difference is minimum for test data and trained ‘GO’ data then it
will display ‘GO’. Otherwise it will show ‘STOP’.

if (sad<=gad) disp('STOP');
else disp('GO');
end
Where,
sad = averaged stop difference
gad = averaged go difference
Accuracy
 Taking normalized average PSD of 128 ‘GO’ samples and 145 ‘STOP’
samples-
‘GO’ detection accuracy = 90%
‘STOP’ detection accuracy = 40%

Taking normalized average PSD from 35 to 65 ‘GO’ samples and from


45 to 75 ‘STOP’ samples-
‘GO’ detection accuracy = 80%
‘STOP’ detection accuracy = 70%

Вам также может понравиться