2013-04-11 53 views
0

我通過麥克風使用下面的代碼輸入文字到一個RichTextBox:任何人都可以幫助我改進這個語音到文本的代碼,或者建議一個更準確的語音到文本的聽寫方法嗎?

private void button1_Click(object sender, EventArgs e) 
    { 
     SpeechRecognitionEngine recognizer = new SpeechRecognitionEngine(); 
     Grammar dictationGrammar = new DictationGrammar(); 
     recognizer.LoadGrammar(dictationGrammar); 
     try 
     { 
      MessageBox.Show("Ready to talk?", "Speak", MessageBoxButtons.OKCancel); 
      recognizer.SetInputToDefaultAudioDevice(); 
      RecognitionResult result = recognizer.Recognize(); 
      richTextBoxPrintCtrl1.SelectedText = result.Text; 
     } 
     catch (InvalidOperationException exception) 
     { 
      MessageBox.Show("Could not recognize input from default audio device. Is a microphone or sound card available?", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); 
     } 
     finally 
     { 
      recognizer.UnloadAllGrammars(); 


     } 

然而,結果並不十分準確。我想在我的應用程序中實施一個相當準確的語音到文本聽寫服務。有人知道我可以改進這個代碼的方式,或者知道任何其他方法來實現語音到文本?

在此先感謝。

+0

用你自己的代碼實際解釋語音的缺點,這是.NET的實現。如果有的話,買一個更好的麥克風。 – christopher 2013-04-11 18:21:40

+0

有沒有可以推薦的第三方解決方案?這是我計劃上傳到SourceForge的應用程序。我不能很好地告訴人們「購買更好的麥克風」。 – Toby 2013-04-11 18:24:45

+0

這個問題提出了一個很好的建議:http://stackoverflow.com/questions/5489067/improve-speech-recognition-c-sharp – christopher 2013-04-11 18:31:09

回答

2

明顯的答案

歸根結底,這取決於聲音的進入程序的質量。這幾乎完全取決於硬件。改進硬件意味着更可靠的數據。所以真的,買一個更好的麥克風。

您的電腦培訓

微軟個人電腦擁有語音訓練選項,以便計算機「習慣」你的聲音。通過這一過程,計算機將能夠以更高的準確度分析和識別您正在說的單詞。

相關問題