0
$\begingroup$

Is there code in matlab for short time energy feature extraction in matlab??

I want to extract audio feature (Short time energy) using matlab code

$\endgroup$
  • $\begingroup$ There is no function like that in MATLAB. In fact this not a solved problem i.e. not known clearly. $\endgroup$ – user15440 Apr 19 '15 at 8:29
2
$\begingroup$

Short time energy (STE) is simple feature and so is the code to compute it.

ste = sum(buffer(signal.^2, winLen));

where and winLen is duration of rectangular time window (in samples).

If you want to use diffrent shape of window, then you have to multiply each column returned by buffer by this window, before you sum the columns.

$\endgroup$
  • 1
    $\begingroup$ Note that there are different definitions of short term energy. The definition used in this answer by @skywalker is also used by Rabiner and Schafer in the book Digital Speech Processing. This equation appears on page 249 (noting that rectangular window used as above): $$ E(\hat{n}) = \sum\limits_{m = -\infty}^\infty (x[m]w[\hat{n}-m])^2 = \sum\limits_{m = -\infty}^\infty (x[m])^2 \tilde{w} [\hat{n}-m] $$ $\endgroup$ – Tom Anderson Sep 26 '15 at 17:40
0
$\begingroup$

There is code on the matlab file exchange which can do exactly what you are asking for.

http://www.mathworks.com/matlabcentral/fileexchange/23571-short-time-energy-and-zero-crossing-rate

$\endgroup$

protected by jojek May 22 '15 at 15:34

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.