value of anger and excitement are very close but far
from the values of other emotions.
4 EXPERIMENTAL RESULTS
In our experiment, first we record some speeches
from different emotions of people. In this case we
have taken records of cartoon characters from Internet
where Bambi was in sad mood, Shaggy and the Beast
were anger, Mickey was in happy mood, and Poca-
hontas was normal (in plane mood). According to
these speeches, we calculate the crisp value of speech
intensity, time differences between each word, time
interval between voiced and unvoiced speech. De-
pending on these values, we converted the crisp values
to fuzzy values to recognize different emotions.
We store the calculated crisp value of speech in-
tensity of each person which we get from recorded
voice.According to this record we see that the speech
intensity of Bambi is 14db, Shaggy’s is 12db, Beast’s
is 2db, Pocahontas’ is 8db and Mickey’s is 6db.
After more synthesis from the recorded speeches
we store the crisp values of time differences be-
tween each word and the time interval between voiced
and unvoiced speech which is measured in millisec-
onds(ms) according to each person. Here we see that
the time difference between each word of Bambi is
250ms, Shaggy’s is 43ms, Beast’s is 70ms, Pocahon-
tas’s is 40ms, and Mickey’s time difference between
each word is 50ms.
In the same way we store the time interval be-
tween voiced and unvoiced speech of Bambi is
250ms,interval of Shaggy’s speeches is 90ms, Beast
is 80ms,Pocahontas is 150ms,and Mickey’s time in-
terval of voiced and unvoiced speech is 90ms.
Our prototype let us to ask any kind of query. As
for example we are able to ask who is in a particular
emotion, how much intense in someone’s emotion, if
a person has a specific emotion or not at all, etc. Sup-
pose if we want to know about who is sad, we can
write that query as:
?- sad(X,1).
Here X represent the person’s name and 1 is the truth
value of sadness of X. So, it is asking for the possibles
values of X that provide a truth value of sadness of
100%. We get the result according to our database as:
X = bambi
If we want to know who is not sad, then we need to
write our query as:
?- sad(X,0).
where the truth value 0 represents the equivalent of
’not at all’. So, we are asking for the people that is
not sad at all. We get three results in this case:
X = beast ;
X = pocahontas ;
X = mickey
Beside these an interesting advantage of our approach
is that we can qualify the query. We can constraint the
truth value. For example, asking for the people that is
“very” sad, with a sadness over the 70% for example.
The query for this consult is:
?- sad(X,Y), Y > 0.7.
where the truth value Y represents how sad a person
and X represent the name of the person. We will get
the answer:
X = bambi,
Y = 1
On the same way if we interest to make a negative
query to know who is a little sad but not with absence
of sadness we can constraint the truth value as:
sad(X,Y), Y > 0.4, Y < 0.0 .
Then our answer will be:
X = shaggy,
Y = 0.2
We can check direct statements. For example, we can
check that Mickey is not sad at all.In this case answer
is affirmative because it is true.
?- sad(mickey,0).
Yes
We can query the database to consult the state of sad-
ness of the people of the database:
?- sad(X,Y).
We obtain truth value of sadness emotion for all peo-
ple included in the database:
X = bambi, Y = 1 ;
X = shaggy, Y = 0.3 ;
X = beast, Y = 0 ;
X = pocahontas, Y = 0 ;
X = mickey, Y = 0
We can say that our approach let us to model speech
characteristics in an easy and crisp way and also let
as represent fuzzy functions related to the perception
of this characteristics for different emotions. So, we
do not only provide emotion recognition but also we
let the user to make any kind of expressive queries
receiving constructive answers.
EASY FUZZY TOOL FOR EMOTION RECOGNITION - Prototype from Voice Speech Analysis
87