python中从语音信号得到基频并显示的代码
时间: 2024-05-08 12:21:32 浏览: 242
音符基频提取
要从语音信号中获取基频,您可以使用自相关函数和自适应阈值来找到基频周期。下面是一个示例代码,用于从语音信号中提取基频并显示:
```python
import numpy as np
import librosa
# 加载语音信号
signal, sr = librosa.load('audio_file.wav', sr=None)
# 计算自相关函数
corr = librosa.autocorrelate(signal, max_size=5000)
corr = corr[len(corr)//2:]
# 自适应阈值
threshold = np.mean(corr)
# 找到基频周期
periods = np.where(corr > threshold)[0]
period = periods[0] if len(periods) > 0 else 0
# 计算基频并显示
pitch = sr / period if period > 0 else 0
print('Pitch:', pitch)
```
请注意,这只是一个简单的示例代码,可能需要进行适当的调整和优化来适应您的特定应用场景。
阅读全文