我在做说话人识别项目。为了识别不同语音片段的扬声器是否相同,我提取了多个特征,如MFCC、tempo、chromagram、beat times、harmonic、impactive、melprogram等。现在我还想找到语音剪辑的音调,以找到我使用此代码的音调:
import librosa
y,sr = librosa.load('E:/Audio_clip/cant.wav')
S = np.abs(librosa.stft(y))
#print(S)
pitch, mag = librosa.piptrack(y=y, sr=sr, S=S)
但是,当我把音高和音高输出打印到我的控制台时,它给我的所有剪辑的输出都是相同的,音高和音高的输出都在0数组列表中,而且还会给出错误:“NoneType”object is not iterable'
有人能告诉我我哪里错了吗?我怎样才能找到声音片段的音调?在
到目前为止,我对说话人识别的计划是,首先建立这些特征的特征矩阵,然后用余弦相似性函数来寻找同一说话人的声音。这是说话人识别的好方法吗?在
开头应该是零,只是没有正确打印/绘制数组。其中的一些值是非零的,但它们非常罕见,请参阅topic on librosa group的详细信息。在
另请参见Librosa pitch tracking - STFT和How to print the full NumPy array?
相关问题 更多 >
编程相关推荐