Exemplo n.º 1
0
 def test_leq(self):
     for _, data in self.__database:
         algo = essentia.standard.Leq()
         generated = temporal.leq(data)
         reference = algo.compute(data.astype(np.float32))
         error = utility.get_change(generated, reference)
         self.assertTrue(error < 1)
Exemplo n.º 2
0
 def test_duration(self):
     for fs, data in self.__database:
         algo = essentia.standard.Duration(sampleRate=fs)
         generated = temporal.duration(data, fs)
         reference = algo.compute(data.astype(np.float32))
         error = utility.get_change(generated, reference)
         self.assertTrue(error < 1)
Exemplo n.º 3
0
 def test_weighted_centroid(self):
     for fs, data in self.__database:
         ind = (np.arange(1, len(data) + 1)) * (fs / (2.0 * len(data)))
         generated = statistics.weighted_centroid(data, ind)
         centroid, _ = extractor.stSpectralCentroidAndSpread(data, fs)
         reference = centroid * (fs / 2.0)  # de-normalize
         error = utility.get_change(generated, reference)
         self.assertTrue(error < 1)
Exemplo n.º 4
0
 def test_rms(self):
     for _, data in self.__database:
         data = np.iinfo(np.uint8).max * data
         algo = essentia.standard.RMS()
         generated = temporal.rms(data)
         reference = algo.compute(data.astype(np.float32))
         error = utility.get_change(generated, reference)
         self.assertTrue(error < 1)
Exemplo n.º 5
0
 def test_effective_duration(self):
     for fs, data in self.__database:
         threshold = random.uniform(0.0, 1.0)
         algo = essentia.standard.EffectiveDuration(
             sampleRate=fs, thresholdRatio=threshold)
         generated = temporal.effective_duration(data, fs, threshold)
         reference = algo.compute(data.astype(np.float32))
         error = utility.get_change(generated, reference)
         self.assertTrue(error < 1)
Exemplo n.º 6
0
 def test_spectral_centroid(self):
     for fs, data in self.__database:
         _, data = scipy.signal.periodogram(data, fs)
         data = (data + utility.epsilon) * 100
         ind = (np.arange(1, len(data) + 1)) * (fs / (2.0 * len(data)))
         generated = spectral.spectral_centroid(data, ind)
         centroid, _ = extractor.stSpectralCentroidAndSpread(data, fs)
         reference = centroid * (fs / 2.0)  # de-normalize
         error = utility.get_change(generated, reference)
         self.assertTrue(error < 1)