C# 个人语音识别/识别

C# 个人语音识别/识别,c#,voice-recognition,C#,Voice Recognition,我想录下某人的声音,然后从他/她的声音信息中,如果那个人再次说话,我就能认出他/她的声音!问题是,我并没有关于什么统计数据(比如频率)会导致人类声音的差异的信息,若有人能帮助我如何识别别人的声音 当我在研究的时候,我发现了很多关于语音识别的库,但是它们不能帮助我,因为我的问题非常简单!我只想认识一个不说他所说的话的人。这里有一些帮助,也许: 基于开源FFT库(),提供了一些关于如何进行说话人验证的建议。您描述的问题并不简单,因为同一个人的声音听起来可能不同(例如,如果此人感冒等)和/或如果此人说

我想录下某人的声音,然后从他/她的声音信息中,如果那个人再次说话,我就能认出他/她的声音!问题是,我并没有关于什么统计数据(比如频率)会导致人类声音的差异的信息,若有人能帮助我如何识别别人的声音

当我在研究的时候,我发现了很多关于语音识别的库,但是它们不能帮助我,因为我的问题非常简单!我只想认识一个不说他所说的话的人。

这里有一些帮助,也许:
基于开源FFT库(),提供了一些关于如何进行说话人验证的建议。

您描述的问题并不简单,因为同一个人的声音听起来可能不同(例如,如果此人感冒等)和/或如果此人说话声音更大/更快/更慢等

另一点是与其他声音(背景、其他声音等)的分离

记录声音的设备的质量非常重要-有些系统使用多个麦克风以获得良好的效果

总之,这不是一项容易的任务——特别是如果你想获得一个好的检测率

基本上,实现这一点的方法是:

  • 实现稳健的声音分离
  • 实现稳健的声音/语音模式提取
  • 根据理想的声音设置,创建具有要识别的声音指纹的DB
  • 定义一个算法,用于比较存储的指纹和提取/规范化的声音/语音模式(可能需要设置一些“可能相等”等阈值…)
  • 优化算法,直到达到可接受的检测率(还要考虑假阳性率!)

有关详细概述,请参见

参见VoiceID For Linux。它使用Sphinx和其他LIB,安装起来非常简单。

什么告诉你这更简单?嗯。。!这只是我最初的想法!也许更难!我会用许多不同的词来限定这个问题。。。但“简单”不是其中之一。查看此链接,你可以获得博士学位。在这个主题中。大多数现代语音分析/检测算法使用2D/3D物理声带模拟来分类用于分类个体的不同自由度的声音!如上所述-这并不容易。。。