comparison scripts/load_features.py @ 42:90f8a2ea6f6f branch-tests

notebook results and load_features minor edits
author mpanteli <m.x.panteli@gmail.com>
date Fri, 15 Sep 2017 16:17:17 +0100
parents 3b67cd634b9a
children 06e5711f9f62
comparison
equal deleted inserted replaced
41:57f53b0d1eaa 42:90f8a2ea6f6f
101 bounds = pd.read_csv(segmenter_file, header=None, delimiter=',').get_values() 101 bounds = pd.read_csv(segmenter_file, header=None, delimiter=',').get_values()
102 music_idx = self.get_music_idx_from_bounds(bounds, sr=self.framessr2) 102 music_idx = self.get_music_idx_from_bounds(bounds, sr=self.framessr2)
103 return music_idx 103 return music_idx
104 104
105 105
106 def get_features(self, df, stop_sec=30.0, class_label='Country', precomp_melody=False): 106 def get_features(self, df, stop_sec=30.0, class_label='Country', precomp_melody=True):
107 oplist = [] 107 oplist = []
108 mflist = [] 108 mflist = []
109 chlist = [] 109 chlist = []
110 pblist = [] 110 pblist = []
111 clabels = [] 111 clabels = []
117 print 'file ' + str(i) + ' of ' + str(n_files) 117 print 'file ' + str(i) + ' of ' + str(n_files)
118 music_idx = self.get_music_idx_for_file(df['Speech'].iloc[i]) 118 music_idx = self.get_music_idx_for_file(df['Speech'].iloc[i])
119 if len(music_idx)==0: 119 if len(music_idx)==0:
120 # no music segments -> skip this file 120 # no music segments -> skip this file
121 continue 121 continue
122 try: 122 if 1:
123 op, mfcc = self.get_op_mfcc_for_file(df['Melspec'].iloc[i], stop_sec=stop_sec) 123 op, mfcc = self.get_op_mfcc_for_file(df['Melspec'].iloc[i], stop_sec=stop_sec)
124 ch = self.get_chroma_for_file(df['Chroma'].iloc[i], stop_sec=stop_sec) 124 ch = self.get_chroma_for_file(df['Chroma'].iloc[i], stop_sec=stop_sec)
125 pb = self.get_pb_for_file(df['Melodia'].iloc[i], precomp_melody=precomp_melody, stop_sec=stop_sec) 125 pb = self.get_pb_for_file(df['Melodia'].iloc[i], precomp_melody=precomp_melody, stop_sec=stop_sec)
126 #if precomp_melody: 126 #if precomp_melody:
127 # pb = self.load_precomputed_pb_from_melodia(df['Melodia'].iloc[i], stop_sec=stop_sec) 127 # pb = self.load_precomputed_pb_from_melodia(df['Melodia'].iloc[i], stop_sec=stop_sec)
128 #else: 128 #else:
129 # pb = self.get_pb_from_melodia(df['Melodia'].iloc[i], stop_sec=stop_sec) 129 # pb = self.get_pb_from_melodia(df['Melodia'].iloc[i], stop_sec=stop_sec)
130 except: 130 else:
131 continue 131 continue
132 n_stop = np.int(np.ceil(stop_sec * self.framessr2)) 132 n_stop = np.int(np.ceil(stop_sec * self.framessr2))
133 print n_stop, len(op), len(mfcc), len(ch), len(pb) 133 print n_stop, len(op), len(mfcc), len(ch), len(pb)
134 min_n_frames = np.min([n_stop, len(op), len(mfcc), len(ch), len(pb)]) # ideally, features should have the same number of frames 134 min_n_frames = np.min([n_stop, len(op), len(mfcc), len(ch), len(pb)]) # ideally, features should have the same number of frames
135 if min_n_frames==0: 135 if min_n_frames==0: