def feature_vector(base_name): print base_name f = sound_path(base_name) f, sr = librosa.load(f) fv = np.array([]) fv = np.append(fv, calculateRMSE(f)) fv = np.append(fv, compression_rate(base_name)) fv = np.append(fv, ExtractTemporalSparcity(f)) fv = np.append(fv, ExtractMelSpectraSparcityFeatures(f)) fv = np.append(fv, ExtractCQSpectraSparcityFeatures(f)) fv = np.append(fv, ExtractSTFTSpectraSparcityFeatures(f)) fv = np.append(fv, calculateRMSETimeHomogeneity(f)) # for moment in moments: # fv = np.append(fv, calculateSpectraStatisticTimeHomogeneity(f, librosa.cqt, moment, 10)) fv = np.append(fv, calculateCrossCorrelations(f, spectra[0])) # fv = np.append(fv, twoLayerTransform(f, spectra[0])) # fv = np.append(fv, calculateModulationSubbandKStatisticTimeHomogineity(f, spectra[0], np.mean, 10)) # fv = np.append(fv, calculateModulationSubbandKStatisticTimeHomogineity(f, spectra[0], np.var, 10)) """ for spectrum in spectra: for moment in moments: fv = np.append(fv, calculateSpectraStatisticTimeHomogeneity(f, spectrum, moment, 10)) """ return fv
def compression_rate(base_name): uncompressed_size = os.path.getsize(sound_path(base_name)) compressed_size = os.path.getsize(compressed_path(base_name)) assert compressed_size > 0 return float(uncompressed_size)/compressed_size