Source code for motif.feature_extractors.cesium

"""Celsium feature extractor.
"""
# from cesium import science_feature_tools
from motif.core import FeatureExtractor
import numpy as np


[docs]class CesiumFeatures(FeatureExtractor): '''Cesium feature extractor Attributes ---------- '''
[docs] def get_feature_vector(self, times, freqs_hz, salience, sample_rate): """Get feature vector for a contour. Parameters ---------- times : np.array Contour times freqs_hz : np.array Contour frequencies (Hz) salience : np.array Contour salience sample_rate : float Contour sample rate. Returns ------- feature_vector : np.array Feature vector. """ raise NotImplementedError
# contour_norm = freqs_hz / np.max(freqs_hz) # error = 1 - salience # error is opposite of salience # ts_feat_dict = science_feature_tools.generate_science_features( # times, contour_norm, error # ) # features = np.array(ts_feat_dict.values()) # return features @property def feature_names(self): """Get feature names. Returns ------- feature_names : list List of feature names. """ feature_names = range(80) return feature_names @classmethod
[docs] def get_id(cls): """ The FeatureExtractor identifier Returns ------- id : string class identifier """ return 'cesium'