3

我正在尝试结合语音识别和说话者分类技术来确定对话中有多少说话者以及哪个说话者说了什么。

为此,我使用CMU SphinxLIUM Speaker Diarization

我可以分别运行这两个工具,即我可以运行 Sphinx 4 并从音频中获取文本输出并运行 LIUM 工具包并获取音频片段。

现在我想将这两者结合起来,得到如下输出:

s0 : this is my first sentence.
s1 : this is my reply.
s2: i do not what you are talking about

有谁知道如何结合这两个工具包?

4

2 回答 2

5

运行分类工具以获取每个扬声器的分段时间。它们看起来像这样:

file1 1 16105 217 M S U S9_file1
file1 1 16322 1908 M S U S9_file1
file2 1 18232 603 M S U S9_file2

像 16106 和 217 这样的数字是段开始和段长度。解析文本输出并将时间存储在数组中。

然后使用时间分割片段上的原始音频。

使用 Sphinx4 分别处理每个片段并显示转录。

或者,对每个说话人的片段运行说话人适应,并使用说话人适应模型再次处理每个片段。

于 2013-04-03T12:32:10.393 回答
0

如果您可以追溯并更改录音设置,您可以将扬声器按录音通道分开,然后单独分析每个通道。这是电话分析中的常用方法。

您可以使用Google Speech to Text实现此目的,启用每个频道的不同识别 ( enable_separate_recognition_per_channel=True) 并启用说话者分类 ( enable_speaker_diarization=True)

(使用 Python 语言)

于 2019-09-11T11:13:43.560 回答