我对 sphinx4 和语音识别很陌生。我正在使用 sphinx4 创建语音应用程序。问题是噪声,即使用户没有语音输入,它也会导致程序识别,即即使用户没有语音输入,程序也会将语音转换为文本,从而影响准确性。
主要问题是如何实现降噪。这是因为即使我没有对着麦克风说话,系统也会检测到输入。所以我猜是因为噪音。
我在网上查了降噪,但几乎没有明确的信息。虽然互联网上有一些关于 sphinx4 附带的名为 Denoise.java 的文件的信息。但sphinx4-1.06中没有这个功能。
另一个文件是 WienerFilter.java,wienerfilter 是用于噪声信号的滤波器类型。但没有使用或实现该文件的说明。
我已经在 hello.gram(该程序的语法文件)中添加了更多单词。 Imtool 生成的这些额外单词的语音表示已添加到词典中。
我正在使用 eclipse 和 sphinx4-1.0beta6
虽然 SPHINX4 中的“HOW TO ACTIVATE NOISE CANCELATION”有一个关于堆栈溢出的问题,但尚未得到解答
在最新版本 sphinx4-5prealpha 中,默认启用具有频谱减法的静态噪声消除功能。您不需要做任何特殊的事情,只需使用最新版本即可。
按照教程操作:
http://cmusphinx.sourceforge.net/wiki/tutorialsphinx4 http://cmusphinx.sourceforge.net/wiki/tutorialsphinx4
如果您使用语法解码,而不是使用语言模型进行大词汇量解码,则在最新版本中会忽略额外的语音。如果您使用语法解码,它应该忽略语法中的所有单词。对于不在语法中的单词,它应该返回一个特殊的单词<unk>
.
精度调试是一个复杂的过程,需要测试记录来重现精度问题。如果没有测试记录,很难建议您如何提高准确性。除了测试记录之外,您还需要提供用于解码的模型和其他信息以重现结果。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)