How to compare two MFCC feature vector or similarity between the MFCC feature vector of two speech utterances
Asked Answered
T

2

5

I have extracted 13 MFCC features of two utterances. Feature set for first utterance is of size 11*13 and other is 18*13. So, how to compare two feature sets to find the similarity between these two words?

I am not using any classifier, if someone know, which algorithm the standard tools follow for the comparison of MFCC feature vector. Please suggest me so that I can implement it.

Thorr answered 20/9, 2014 at 14:16 Comment(1)
did you achieve it?Chaplin
C
5

You can try this following code in matlab. after taking mfcc for 2 waves ,lets assume that for the first wave the mfcc1 and for the second is mfcc2. the code is :

mfcc1=mfcc1';
mfcc2=mfcc2';
M=simmx(mfcc1,mfcc2);
[p,q,c]=dp(1-M);
v=c(size(c,1),size(c,2))

copy past the code and run having the mfcc values as mfcc1 and mfcc2,


i used dtw logic ,i took inverse of the mfcc and then i took similarity matrix and i found the least cost path . the values will be 0 if it matches perfectly and if its near the match u will get near values to zero .i hope this will help . thank you....

Coenzyme answered 18/2, 2015 at 9:50 Comment(2)
Why 1-M? and why are you taking the last element of c?Doubler
how to do the same in python?Chaplin
S
4

The algorithm to compare two sequences of different length is called "Dynamic Time Warping", you can find an extensive description in Wikipedia:

http://en.wikipedia.org/wiki/Dynamic_time_warping

There are many reference implementations available as well in different languages.

Sucre answered 20/9, 2014 at 19:14 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.