频谱图学习笔记
目录
opencv画音频频谱图
opencv画音频频谱图
import librosa
import numpy as np
import cv2# 加载音频并计算 mel 频谱图
audio_path = "your_audio.wav"
y, sr = librosa.load(audio_path, sr=16000)
mel_spec = librosa.feature.melspectrogram(y=y, sr=sr, n_mels=80)
mel_db = librosa.power_to_db(mel_spec, ref=np.max)# 归一化到 0~255 显示
mel_img = (mel_db - mel_db.min()) / (mel_db.max() - mel_db.min()) # 0~1
mel_img = (mel_img * 255).astype(np.uint8) # 转为 0~255 的图像# OpenCV 显示需要 (H, W, 3),所以我们转为彩色图(可选)
mel_img_color = cv2.applyColorMap(mel_img, cv2.COLORMAP_INFERNO)# 显示
cv2.imshow("Mel Spectrogram", mel_img_color)
cv2.waitKey(0)
cv2.destroyAllWindows()