Python说话人识别

时间:2011-09-05 14:07:41

标签: python voice-recognition speech

我有一个音频文件(录制的2人电话)。我需要自动分离2个扬声器的声音。我是语音识别的新手,我看了python的wave模块但是找不到任何有用的信息。

请帮助如何开始。另外请建议我免费的python库,它将帮助我解决问题。

4 个答案:

答案 0 :(得分:14)

分离扬声器的任务不是语音识别任务,而是说话人识别任务。在语音通信中,这个任务也被称为说话人日记。 Python提供了几种用于扬声器分类和说话人识别的软件包:

SIDEKIT from LIUM

Bob toolkit from Idiap

Speaker diarization from ISCI

如果您不限于Python,还有其他人:

LIUM speaker diarization

Speaker recognition setup in Kaldi。包括最先进的基于DNN的i向量,称为x向量。

答案 1 :(得分:4)

从numpy开始,我会看一下谱图(基本上是一个滚动的FFT)作为区分录音中不同声音的好方法。

以下是Matplotlib中的频谱图功能:

http://matplotlib.sourceforge.net/api/pyplot_api.html#matplotlib.pyplot.specgram

如果您刚开始使用Windows平台,我建议Python(x,y)

答案 2 :(得分:2)

答案 3 :(得分:0)

查看CMU Sphinx Python库。它是用Java开发的,所以我认为Python库只是它的包装器。该项目背后有很多正在进行的研究。

官方维基:http://cmusphinx.sourceforge.net/wiki/

Linux快速入门教程:http://probing.wikidot.com/speech-recognition-using-sphinx3-and-python

相关问题