通过音频检测单词[关闭]
Posted
技术标签:
【中文标题】通过音频检测单词[关闭]【英文标题】:Detecting words through audio [closed] 【发布时间】:2013-07-02 03:18:14 【问题描述】:我想知道是否可以在不使用语音转文本方法的情况下捕获语音输入并判断用户是否说了简单的话,例如是/否/下一个等。我尝试使用谷歌搜索,但结果并不理想。分析波形是一种方法吗?怎么做?希望有人能帮帮我。
【问题讨论】:
“最简单”的方法可能是让用户记录自己说出您想要进入程序的命令;拯救他们。然后是的,比较波形的相似性。祝你好运! @C.郎有没有显示如何比较波形的代码/方法? 您在问计算机编程中的某些东西是否可行。答案总是肯定的。缩小你的问题范围,不要那么宽泛。 @gunr2171 并非总是如此。我的一位前同事曾经坚称,他发明了一种机制,可以将任何位序列压缩成更小的东西。任何解释Shannon entropy 的尝试都不会阻止他。他坚持认为,他实际上可以将整个互联网压缩成约 1MB 的文件。为什么他现在还不是亿万富翁,我不知道。从那以后,我不再说“一切皆有可能”之类的话。 @gunr2171 是否有分形压缩? 【参考方案1】:它内置在 Windows 中,您可以从 C# 访问它
查看文档
http://msdn.microsoft.com/en-us/library/hh361683(v=office.14).aspx
这个例子非常简单:-
// Create a new SpeechRecognitionEngine instance.
SpeechRecognizer recognizer = new SpeechRecognizer();
// Create a simple grammar that recognizes "red", "green", or "blue".
Choices colors = new Choices();
colors.Add(new string[] "red", "green", "blue" );
// Create a GrammarBuilder object and append the Choices object.
GrammarBuilder gb = new GrammarBuilder();
gb.Append(colors);
// Create the Grammar instance and load it into the speech recognition engine.
Grammar g = new Grammar(gb);
recognizer.LoadGrammar(g);
// Register a handler for the SpeechRecognized event.
recognizer.SpeechRecognized +=
new EventHandler<SpeechRecognizedEventArgs>(sre_SpeechRecognized);
// Create a simple handler for the SpeechRecognized event.
void sre_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
MessageBox.Show("Speech recognized: " + e.Result.Text);
【讨论】:
以上是关于通过音频检测单词[关闭]的主要内容,如果未能解决你的问题,请参考以下文章