我想筛查的是20-60之间的频率能量值,和80-100之间的频率能量值,然后比方说20-60之间的能量值低于阈值会归类为异常,80-100的能量值低于阈值,也会归类于异常,然后把这两部分结合起来看,怎杨用python实现
时间: 2024-04-07 18:33:46 浏览: 20
你可以使用Python来实现你的需求。以下是一个示例代码,用于筛查20-60Hz和80-100Hz之间的频率能量值,并根据阈值判断是否归类为异常:
```python
import numpy as np
import librosa
# 假设已经计算得到了梅尔谱图数据 mel_spec
# 定义阈值
threshold_low = 0.5 # 低频阈值
threshold_high = 0.2 # 高频阈值
# 提取20-60Hz和80-100Hz之间的频率范围
freq = librosa.mel_frequencies()
low_freq_range = np.where((freq >= 20) & (freq <= 60))[0]
high_freq_range = np.where((freq >= 80) & (freq <= 100))[0]
# 计算对应范围内的能量值
low_freq_energy = np.mean(mel_spec[low_freq_range, :], axis=0)
high_freq_energy = np.mean(mel_spec[high_freq_range, :], axis=0)
# 判断是否归类为异常
is_low_freq_abnormal = low_freq_energy < threshold_low
is_high_freq_abnormal = high_freq_energy < threshold_high
# 结合两部分判断结果
is_abnormal = np.logical_or(is_low_freq_abnormal, is_high_freq_abnormal)
# 输出异常帧的索引
abnormal_frames = np.where(is_abnormal)[0]
# 打印异常帧的索引
print("异常帧索引:", abnormal_frames)
```
在这个示例代码中,我们假设已经计算得到了梅尔谱图的数据 `mel_spec`。然后,我们定义了低频阈值 `threshold_low` 和高频阈值 `threshold_high`。接下来,我们根据频率范围提取20-60Hz和80-100Hz之间的频率索引,并计算对应范围内的能量值。然后,我们根据阈值判断这些能量值是否低于阈值,最后结合两部分判断结果得到最终的异常帧索引。
请根据你的具体需求和数据进行适当的调整,例如调整阈值、频率范围等。
希望这个示例能帮助到你!如果还有其他问题,请随时提问。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)