请教语音识别、输入的简单问题
最近要用C#及Speech SDK 5.1做一个小型的语音识别小工具,功能就类似与其事例代码中的TalkBack.exe就行。参照微软的示例代码,基本实现了此功能。但似乎准确率其差!
using SpeechLib;
public Form1()
{
InitializeComponent();
recContext = new SpSharedRecoContextClass();
recContext.CreateGrammar(1, out recGrammar);
recContext.RetainedAudio = SpeechRetainedAudioOptions.SRAORetainAudio;
recContext.Recognition += new _ISpeechRecoContextEvents_RecognitionEventHandler(this.handleRecognition);
}
public void handleRecognition(int StreamNumber, object StreamPosition, SpeechRecognitionType RecognitionType, ISpeechRecoResult Result)
{
float confidence = Result.PhraseInfo.Rule.EngineConfidence;
textBox1.Text += Result.PhraseInfo.GetText(0, -1, true) + " confidence:" + confidence.ToString() + Environment.NewLine;
}
现有问题:
1 以上代码能引用System.Speech.Recognition及System.Speech.Recognition.SrgsGrammar两个.NET的命名空间中的类来实现吗?如何实现,给几行代码就行。(MSDN上的示例实在是少)
或者说就是能让程序不间断地从话筒中识别非指定的几个单词(有点类似语音输入)
2 如何辨识结果的精度?以上的Result.PhraseInfo.Rule.EngineConfidence一直是0,不知道为什么。用System.Speech.Recognition.SpeechRecognizer来识别,其e.Result.Confidence同样始终为0。
不知是否有高手肯指点一二?
--------------------编程问答-------------------- --------------------编程问答-------------------- 是我放错地方了,还是没人愿意回答? --------------------编程问答-------------------- 顶一下! --------------------编程问答-------------------- http://espeak.sourceforge.net/ --------------------编程问答--------------------
这个不是微软的东西吧,和我的问题对不上吧! --------------------编程问答-------------------- 哎,大哥,现在的我遇到和你一样的问题了,用那个示例识别率很低,现在在想其他办法,大哥你弄出来了吗?
补充:.NET技术 , .NET Framework