Example #1
0
    def __test_pseudo_cqt(pad_mode):
        D1 = librosa.pseudo_cqt(y, pad_mode='reflect')
        D2 = librosa.pseudo_cqt(y, pad_mode=pad_mode)

        assert D1.shape == D2.shape

        if pad_mode != 'reflect':
            assert not np.allclose(D1, D2)
        else:
            assert np.allclose(D1, D2)
Example #2
0
    def __test_pseudo_cqt(pad_mode):
        D1 = librosa.pseudo_cqt(y, pad_mode='reflect')
        D2 = librosa.pseudo_cqt(y, pad_mode=pad_mode)

        assert D1.shape == D2.shape

        if pad_mode != 'reflect':
            assert not np.allclose(D1, D2)
        else:
            assert np.allclose(D1, D2)
Example #3
0
def CQT_transform(data, sr):
    CQT = abs(
        pseudo_cqt(data,
                   sr,
                   fmin=A1,
                   n_bins=60,
                   bins_per_octave=12,
                   sparsity=.95,
                   window=('kaiser', 10)))
    N_CQT = normalize(CQT, norm='l1', axis=0)
    return N_CQT
Example #4
0
hcqt = librosa.hybrid_cqt(y=y, sr=sr)
hcqt = np.abs(hcqt)
hcqt = hcqt.astype(np.float32)
print(hcqt.shape, hcqt.dtype)
d_hcqt = librosa.amplitude_to_db(hcqt, ref=np.max)
librosa.display.specshow(d_hcqt,
                         y_axis='log',
                         x_axis='time',
                         sr=sr,
                         cmap='viridis')
plt.colorbar(format='%+2.0f dB')
plt.title('hybrid-cqt-spectrogram')
plt.show()

### pseudo-cqt-spectrogram (伪常量Q变换) (*84, t) *n_bins
pcqt = librosa.pseudo_cqt(y=y, sr=sr)
pcqt = np.abs(pcqt)
pcqt = pcqt.astype(np.float32)
print(pcqt.shape, pcqt.dtype)
d_pcqt = librosa.amplitude_to_db(pcqt, ref=np.max)
librosa.display.specshow(d_pcqt,
                         y_axis='log',
                         x_axis='time',
                         sr=sr,
                         cmap='viridis')
plt.colorbar(format='%+2.0f dB')
plt.title('hybrid-cqt-spectrogram')
plt.show()

### mel-spectrogram (*128, t) *n_mels
mel = librosa.feature.melspectrogram(y=y, sr=sr)  #, n_mels=256