语音识别Api

时间:2016-06-20 08:19:28

标签: java speech-recognition voice-recognition voice musicg

我有一个java应用程序。我想在其上实现语音识别功能。

就像这样:

假设我有一些被用户称为“嘿”,“一”,“两个”茶的记录。当他/她说“嘿”时,语音识别api应该识别记录的第一个输入“嘿”,“一个”,“两个”,“茶”可能是英语中没有单词的东西。

我已经找过一些支持语音识别或有audiofingerprintin算法的api。但我不想使用它们。

让我解释为什么我不使用这些api。 首先,语音识别apis尝试理解单词并转换为文本。但是这仅限于api支持的语言。即使语音识别api支持英语语言。由于用户发音不好,可能会导致结果不佳。所以我不想在我的应用程序中使用语音识别API。因为该功能不应该基于语言。

此外,当我寻找语音识别api时,我找到了“audio pringerprint”api。我使用了开源的“ musicg ”api。然后,我开发了一个测试应用程序。该应用程序记录4个包含unword语音的不同音频文件。之后,我录制了一个类似于其中一个的语音,测试api使用musicg api将最后一个与之前的音频文件进行了比较。然而,结果也很糟糕。

正如我之前提到的,我需要获得与旧手机一样的语音识别功能。

1 个答案:

答案 0 :(得分:1)

检查kaldi http://kaldi-asr.org/ 或者这个张量流教程:https://www.tensorflow.org/tutorials/audio_recognition

在这两种情况下,你都可以训练模型,它不是基于语言的。您可以为某些特定的声音或口音或某些特定背景训练模型。

此外,也许这个项目会对你有所帮助:https://github.com/cmusphinx/g2p-seq2seq 它不使用语言模型并将音频转换为音素。