【发布时间】:2013-03-19 20:46:47
【问题描述】:
我正在为我们的工作场所开发一个项目,以操纵我们的环境,如灯光、咖啡机、打印机等,但我不知道如何检测谁在与我们的系统说话。
我正在使用 Speech.Recognition 库使用 C# 构建项目。
到目前为止,我已经设法捕获命令并执行简单的事情,但我想更进一步并检测到这个人,所以如果一个人例如“John”正在说话,那么当他说“Hi system”时,系统记录说话的人并回复“嗨,约翰!”然后它只识别“约翰”的语音命令并忽略不同的声音。
【问题讨论】:
-
如果我这样做,我可能会建立一个“用户名”库,这样人们就会说出他们的名字,并将其与用户列表进行比较,然后只关注该用户的讲话模式
-
不要忘记添加某种超时,以便其他人可以在“john”完成时使用它。
-
@wjhguitarman 您的解决方案的问题是,任何人都可以说“约翰”,如果我开始实施更严肃的工作场所解决方案,我想确切地知道是谁在说话。
-
正如@sircapsalot 回答的那样,理想情况下,它会将他们的音高、速度等与 John 的匹配标识符相匹配,因此其他人说 John 不会触发匹配,他可以通过使用诸如“结束会话”之类的关键短语或其他一些不常用的标识符,以触发不必要的退出。
-
@wjhguitarman 所以我必须分析进来的音频样本,还是它内置在某个地方?
标签: c# speech-recognition voice-recognition sapi