写一段批量处理音频信息,用于CNN训练集的代码
时间: 2023-05-17 22:06:48 浏览: 96
以下是一段 Python 代码,用于批量处理音频信息,以用于 CNN 训练集:
```python
import os
import librosa
import numpy as np
# 设置音频文件夹路径和输出文件夹路径
audio_folder = "/path/to/audio/folder"
output_folder = "/path/to/output/folder"
# 设置采样率和时长
sr = 22050
duration = 5
# 遍历音频文件夹中的所有文件
for filename in os.listdir(audio_folder):
# 加载音频文件
audio_path = os.path.join(audio_folder, filename)
y, _ = librosa.load(audio_path, sr=sr, duration=duration)
# 将音频文件转换为 Mel 频谱图
mel_spec = librosa.feature.melspectrogram(y=y, sr=sr)
log_mel_spec = librosa.power_to_db(mel_spec, ref=np.max)
# 将 Mel 频谱图保存为 numpy 数组
output_path = os.path.join(output_folder, filename.replace(".wav", ".npy"))
np.save(output_path, log_mel_spec)
```
这段代码使用了 librosa 库来加载音频文件并将其转换为 Mel 频谱图。它还使用了 numpy 库来保存 Mel 频谱图作为 numpy 数组。
阅读全文