def find_matches(track, model): track_id = str(track) # Extract keypoints fp = fingerprint.from_file( track.path, model.settings['sr'], track_id, model.settings ) # Find (approximate) nearest neighbors distances, indices = ann.find_neighbors( model.matcher, fp.descriptors, algorithm=model.settings['algorithm'], k=2 ) # Build match objects logger.info('Building match objects') matches = [] for i, distance in enumerate(distances): matches.append(Match( fp.keypoints[i], model.keypoints[indices[i][0]], distance[0], distance[1] )) return matches, fp.spectrogram, fp.keypoints
def find_matches(track, model): track_id = str(track) # Extract keypoints fp = fingerprint.from_file(track.path, model.settings['sr'], track_id, model.settings) # Find (approximate) nearest neighbors distances, indices = ann.find_neighbors( model.matcher, fp.descriptors, algorithm=model.settings['algorithm'], k=20) # Build match objects logger.info('Building match objects') matches = [] for i, distance in enumerate(distances): neighbors = [ Neighbor(model.keypoints[index], dist) for index, dist in zip(indices[i], distance) ] matches.append(Match( fp.keypoints[i], neighbors, )) return matches, fp.spectrogram, fp.keypoints
def find_matches(audio_path, model): # Extract keypoints kp, desc, img = sift_file( audio_path, model.settings['hop_length'], model.settings['octave_bins'], model.settings['n_octaves'], model.settings['fmin'], sr=model.settings['sr'], **model.settings['kwargs'] ) # Find (approximate) nearest neighbors distances, indices = ann.find_neighbors(model.clf, desc, k=2) # Build match objects logger.info('Building match objects') matches = [] for i, distance in enumerate(distances): matches.append(Match(kp[i], model.keypoints[indices[i][0]], distance[0], distance[1])) return matches, img
def find_matches(audio_path, model): # Extract keypoints kp, desc, img = sift_file(audio_path, model.settings["hop_length"], model.settings["octave_bins"], model.settings["n_octaves"], model.settings["fmin"], sr=model.settings["sr"], **model.settings["kwargs"]) # Find (approximate) nearest neighbors distances, indices = ann.find_neighbors(model.clf, desc, k=2) # Build match objects logger.info("Building match objects") matches = [] for i, distance in enumerate(distances): matches.append( Match(kp[i], model.keypoints[indices[i][0]], distance[0], distance[1])) return matches, img