computes the novelty measure per Spectral Flux > called by ::ComputeNoveltyFunction > > @param X: spectrogram (dimension FFTLength X Observations) > @param f_s: sample rate of audio data (unused) > > @retval d_flux novelty measure ======================================================================
0001 %computes the novelty measure per Spectral Flux 0002 %> called by ::ComputeNoveltyFunction 0003 %> 0004 %> @param X: spectrogram (dimension FFTLength X Observations) 0005 %> @param f_s: sample rate of audio data (unused) 0006 %> 0007 %> @retval d_flux novelty measure 0008 % ====================================================================== 0009 function [d_flux] = NoveltyFlux(X, f_s) 0010 0011 % difference spectrum (set first diff to zero) 0012 afDeltaX = diff([X(:, 1), X], 1, 2); 0013 0014 % half-wave rectification 0015 afDeltaX(afDeltaX<0) = 0; 0016 0017 % flux 0018 d_flux = sqrt(sum(afDeltaX.^2)) / size(X, 1); 0019 end