Beispiel #1
0
 def test_get_gt_at_time(self, timit_like_path, timit_like_datapath,
                         timit_like_gtpath, testing_audio_path):
     """Test get_gt_at_time method."""
     gt_getter = TimitGroundTruth(timit_like_path, timit_like_datapath,
                                  timit_like_gtpath)
     # tests for phoneme
     gt_getter.set_gt_format(phonetic=True, word=False, speaker_id=False)
     y = gt_getter.get_gt_at_time(testing_audio_path, 0.2, 0.25)
     assert y[gt_getter.get_index_from("h#")] == 1.0
     assert np.sum(y) == 1.0
Beispiel #2
0
    def test_get_gt_from_sample(self, timit_like_path, timit_like_datapath,
                                timit_like_gtpath, testing_audio_path,
                                testing_audio):
        """Test getting ground truth windowing."""
        signal, _ = testing_audio
        gt_getter = TimitGroundTruth(timit_like_path, timit_like_datapath,
                                     timit_like_gtpath)
        # test for phoneme
        gt_getter.set_gt_format(phonetic=True, word=False, speaker_id=False)

        # with overlap
        y_pad = gt_getter.get_gt_from_sample(testing_audio_path,
                                             512,
                                             256,
                                             padding=True)
        y_no_pad = gt_getter.get_gt_from_sample(testing_audio_path,
                                                512,
                                                256,
                                                padding=False)
        windows_expected_pad = 1 + int((len(signal) - 512 + 512) / 256)
        windows_expected_no_pad = 1 + int((len(signal) - 512) / 256)
        assert y_pad.shape == (windows_expected_pad, gt_getter.gt_size)
        sum_gt = np.sum(y_pad, axis=1)
        assert np.array_equal(sum_gt[:], np.ones(windows_expected_pad))

        assert y_no_pad.shape == (windows_expected_no_pad, gt_getter.gt_size)
        sum_gt_no_pad = np.sum(y_no_pad, axis=1)
        assert np.array_equal(sum_gt_no_pad, np.ones(windows_expected_no_pad))

        # without overlap
        y_pad = gt_getter.get_gt_from_sample(testing_audio_path,
                                             512,
                                             512,
                                             padding=True)
        y_no_pad = gt_getter.get_gt_from_sample(testing_audio_path,
                                                512,
                                                512,
                                                padding=False)
        windows_expected_pad = 1 + int((len(signal) - 512 + 512) / 512)
        windows_expected_no_pad = 1 + int((len(signal) - 512) / 512)
        assert y_pad.shape == (windows_expected_pad, gt_getter.gt_size)
        sum_gt = np.sum(y_pad, axis=1)
        assert np.array_equal(sum_gt[:], np.ones(windows_expected_pad))

        assert y_no_pad.shape == (windows_expected_no_pad, gt_getter.gt_size)
        sum_gt_no_pad = np.sum(y_no_pad, axis=1)
        assert np.array_equal(sum_gt_no_pad, np.ones(windows_expected_no_pad))