用于语音检测和辨别的开源代码

2024-02-22

我有 15 盘录音带,我相信其中一盘包含我祖母和我谈话的旧录音。快速尝试找到合适的地方并没有找到。我不想听20个小时的磁带才能找到它。该位置可能不在其中一盘磁带的开头。大多数内容似乎分为三类——按照总长度的顺序,最长的在前:沉默、语音广播和音乐。

我计划将所有磁带转换为数字格式,然后再次查找录音。最明显的方法是在我做其他事情时在后台播放它们。这对我来说太简单了,所以:是否有任何开源库或其他代码可以让我找到,以提高复杂性和实用性:

  1. 非静音区域
  2. 包含人类语音的区域
  3. 包含我自己的讲话(以及我祖母的讲话)的区域

我更喜欢 Python、Java 或 C。

由于我对该领域一无所知,因此如果没有答案,有关搜索词的提示将不胜感激。

我知道我很容易会在这上面花费 20 多个小时。


大多数时候你可能会节省的就是说话人分类。它的工作原理是用说话者 ID 注释录音,然后您可以轻松地将其手动映射到真实的人。错误率通常约为记录长度的 10-15%,这听起来很糟糕,但这包括检测太多说话者并将两个 ID 映射到同一个人,这并不难修复。

一个这样的好工具是喊叫工具包 http://shout-toolkit.sourceforge.net/(C++),尽管它对输入格式有点挑剔。查看此工具的用法来自作者 https://stackoverflow.com/a/8292994。它输出语音/语音活动检测元数据和说话人分类,这意味着您获得第 1 点和第 2 点 (VAD/SAD) 以及一点额外的内容,因为它注释了录音中同一个发言者何时处于活动状态。

另一个有用的工具是LIUM spkdiaization http://lium3.univ-lemans.fr/diarization/doku.php/scripting(Java),它基本上做同样的事情,除了我还没有付出足够的努力来弄清楚如何获取 VAD 元数据。它具有很好的即用性可下载包 http://lium3.univ-lemans.fr/diarization/doku.php/download.

通过一点点编译,这应该会在一小时内完成。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

用于语音检测和辨别的开源代码 的相关文章

随机推荐