【发布时间】:2011-09-23 04:48:40
【问题描述】:
您如何确定哪些起始是节拍?我正在使用 Spectral Flux 进行音符起始检测,并使用 Running Mean 进行峰值拾取/阈值处理。
我只是在使用吉他乐器,所以打击乐器的存在可能对此无济于事。有什么想法吗?
谢谢!
【问题讨论】:
标签: audio onset-detection
您如何确定哪些起始是节拍?我正在使用 Spectral Flux 进行音符起始检测,并使用 Running Mean 进行峰值拾取/阈值处理。
我只是在使用吉他乐器,所以打击乐器的存在可能对此无济于事。有什么想法吗?
谢谢!
【问题讨论】:
标签: audio onset-detection
尝试使用节拍跟踪算法。节拍跟踪是与发病检测不同的问题。
我认为Queen Mary plugin set 中有一个很好的算法用于 Sonic Visualizer。这些插件是开源的,因此您可以查看代码以了解它们的工作原理。
或者在谷歌学者上搜索“节拍跟踪”。有许多有效的方法。 Dan Ellis' 是一个很好的开始。它很直观,并且有 Matlab 和 Java 中可用的代码。
【讨论】:
编辑:哇...刚刚意识到这个问题已经有 3 年历史了...抱歉恢复旧帖子。
我的硕士论文是关于节拍检测的,与所有其他已发表的节拍检测方法相比,我的方法的主要优势在于分辨率,包括时域和频域(节拍)。你可以找到我的论文here。它基本上归结为(经过大量过滤后)是梳状滤波器卷积。我的代码是对this project 的改编,其中包含 Matlab 文件,供您查看它是如何工作的。
由于我的大学可能存在文案问题,我的代码(包括 C++ 和 Matlab 端口)未公开提供,但如果您通过 dberm22[at]gmail[dot]com 给我发电子邮件,我会非常愿意ahem::discuss 我和你的工作。
【讨论】: