微软Visual studio 2015中的人工智能可以识别每一个单词,并将每一个单词都说出来

本文关键字:每一个 单词 识别 2015 studio Visual 人工智能 微软 | 更新日期: 2023-09-27 18:06:41

我正在Microsoft Visual Studios 2015中创建一个AI,我正在使用语音合成器对象以及语音识别器对象而不是语音识别引擎对象,这样我就可以使用微软语音识别器而不是内置在语音识别引擎中的识别器,所以我必须使用grammarBuilders并将它们加载到语音识别引擎中。

话虽这么说,我已经创建了一个richTextBox,追加我说的话和识别到richTextBox;然而,我正试图让ai在我说了一些话之后说些什么:

if(e.result.text.toString().contains("whatever I said")){
s.speak("whatever i want it to say back");
}

然而,由于某种原因,微软语音识别器在我说了一些话后没有睡觉,而是附加了文本,但人工智能没有说回来。

如果有人知道如何让语音识别器睡眠一旦一个句子已经说了,然后让语音合成对象说一些之后,这将是伟大的

谢谢,thatProgrammingGuy23

下面是到目前为止的代码:
public partial class Form1 : Form{
    public Form1()
    {
        InitializeComponent();
    }
    SpeechSynthesizer s = new SpeechSynthesizer();
    SpeechRecognizer rec = new SpeechRecognizer();
    private void Form1_Load(object sender, EventArgs e)
    {
        rec.SpeechRecognized += rec_SpeechRecognized;
    }
    private void rec_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
    {
        richTextBox1.AppendText(e.Result.Text.ToString() + "");
        if (e.Result.Text.Contains("hello")){
            s.Speak("hi");
        }
    }
}

微软Visual studio 2015中的人工智能可以识别每一个单词,并将每一个单词都说出来

如果您希望SpeechRecognizer在一段时间内忽略语音,您可以使用SpeechRecognizer.Enabled

SpeechSynthesizer s = new SpeechSynthesizer();
SpeechRecognizer rec = new SpeechRecognizer();
private void Form1_Load(object sender, EventArgs e)
{
    rec.SpeechRecognized += rec_SpeechRecognized;
}
private void rec_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
{
    richTextBox1.AppendText(e.Result.Text);
    if (e.Result.Text.Contains("hello"))
    {
        rec.Enabled = false;
        //Do stuff
        s.Speak("hi");
        rec.Enabled = true;
    }
}