gpt4 book ai didi

python - 我们如何提高 Librosa 中节奏检测的准确性?

转载 作者:行者123 更新时间:2023-12-05 01:36:52 32 4
gpt4 key购买 nike

我正在使用 native beat_track来自 Librosa 的函数:

from librosa.beat import beat_track
tempo, beat_frames = beat_track(audio, sampling_rate)

歌曲的原始节奏为 146 BPM,而函数接近于 73.5 BPM。虽然我了解 73.5*2 ~ 148 BPM,但我们如何才能实现以下目标:

  1. 知道何时扩大/缩小估算
  2. 通过预处理信号提高准确性

最佳答案

您观察到的是所谓的“ Octave 误差”,即估计误差为 2、1/2、3 或 1/3。这是全局速度估计中一个很常见的问题。可以在 An Experimental Comparison of Audio Tempo Induction Algorithms 中找到有关全局节奏估计的精彩经典介绍。 .文章还介绍了常用指标 Acc1 和 Acc2。

自那篇文章发表以来,许多研究人员都在尝试解决 Octave 音阶错误问题。 (从我非常有偏见的角度来看)最有前途的是 A Single-Step Approach to Musical Tempo Estimation Using a Convolutional Neural Network我自己(你可能还想看看这个 later paper ,它使用了一个更简单的神经网络架构)和 Multi-Task Learning of Tempo and Beat: Learning One to Improve the Other由 Böck 等人提供。

两种方法都使用 convolutional neural networks (CNNs)分析频谱图。虽然 CNN 也可以在 librosa 中实现,但它目前缺少编程基础设施来轻松实现这一点。另一个音频分析框架似乎在这方面领先一步:Essentia .它能够运行 TensorFlow -模型。

关于python - 我们如何提高 Librosa 中节奏检测的准确性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61621282/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com