有没有人知道一个免费的关键词识别系统,并且可能提供API ??
CMU Sphinx 4和MS Speech API是语音识别引擎,不能用于KWS。
SRI有一个关键词识别系统,但没有下载链接,甚至连评估都没有。(我甚至在任何地方都找不到联系他们获取软件的链接)
我找到了一个here,但它只是一个演示,而且是有限的。
发布于 2011-08-04 06:19:25
CMUSphinx在pocketsphinx引擎中实现了关键字定位,详情请参阅FAQ entry.
要识别单个关键短语,您可以在“关键短语搜索”模式下运行解码器。
从命令行try:
pocketsphinx_continuous -infile file.wav -keyphrase “oh mighty computer” -kws_threshold 1e-20从代码中:
ps_set_keyphrase(ps, "keyphrase_search", "oh mighty computer");
ps_set_search(ps, "keyphrase_search);
ps_start_utt();
/* process data */您还可以在我们的源代码中找到Python和Android/Java的示例。Python代码如下所示,完整的示例here
# Process audio chunk by chunk. On keyphrase detected perform action and restart search
decoder = Decoder(config)
decoder.start_utt()
while True:
buf = stream.read(1024)
if buf:
decoder.process_raw(buf, False, False)
else:
break
if decoder.hyp() != None:
print ([(seg.word, seg.prob, seg.start_frame, seg.end_frame) for seg in decoder.seg()])
print ("Detected keyphrase, restarting search")
decoder.end_utt()
decoder.start_utt()必须为测试数据上的每个关键短语调整阈值,以获得正确的平衡,遗漏检测和错误警报。您可以尝试像1e-5到1e-50这样的值。
为了获得最好的准确性,最好使用3-4个音节的关键短语。太短的短语很容易混淆。
您还可以搜索多个关键字,创建一个文件keyphrase.list,如下所示:
oh mighty computer /1e-40/
hello world /1e-30/
other_phrase /other_phrase_threshold/并在带有-kws配置选项的解码器中使用它。
pocketsphinx_continuous -inmic yes -kws keyphrase_list此功能尚未在sphinx4解码器中实现。
https://stackoverflow.com/questions/5184233
复制相似问题