Mercurial > hg > emotion-detection-top-level
view Code/Descriptors/Matlab/MPEG7/FromWeb/mpeg7getspec.m @ 4:92ca03a8fa99 tip
Update to ICASSP 2013 benchmark
author | Dawn Black |
---|---|
date | Wed, 13 Feb 2013 11:02:39 +0000 |
parents | |
children |
line wrap: on
line source
% Modified 30/04/2002 by Thorsten Kastner - zero pad (length overlap) at start and end for overlap removed; % because: there's no overlap in ASF function [fftout,phase] = mpeg7getspec( data, fs, hopsize, windowsize, window, FFTsize) % data = data(1:5004); if size(data,1)==1 data = data'; end hs = mean(hopsize); hops = length(hopsize); num_f = ceil(length(data)/hs); rem_f = mod(num_f,hops); pad = sum(hopsize(1:rem_f)) - (length(data)-(num_f-rem_f)*hs); data = [data; zeros(pad,1)]; num_samples = length(data); fstart = 1; fftout = []; NormWindow = sum(window.*window); spec = (h_specgram2(data,FFTsize,fs,window,hopsize))/sqrt(FFTsize*NormWindow); fftout = abs(spec); phase = angle(spec); % figure(30); imagesc([1 size(fftout(2))],[0 v.fs/2],fftout) % Need to compensate first and last frames for the zero padding if pad fftout(:,end) = fftout(:,end)*sqrt(windowsize/(windowsize-pad)); end