Ejemplo n.º 1
0
 private void MainForm_Load(object sender, EventArgs e)
 {
     Logger.Add("Program started");
     WaveInput.PrepareMic();
     Speech = new MainSpeech();                      //создание объекта главного класса
     for (int i = 0; i < Speech.Commands.Count; i++) //вывод сузествующих комманд в листбокс
     {
         ListCommands.Items.Add(((Command)Speech.Commands[i]).Name);
     }
 }
Ejemplo n.º 2
0
        private void BtnSave_Click(object sender, EventArgs e)
        {
            if (ComCounter != 0)
            {
                return;
            }
            Command Com = new Command();

            Com.Name  = BoxName.Text;
            Com.Coefs = Learn.Average();
            ((MainForm)this.Owner).Speech.Commands.Add(Com);
            ((MainForm)this.Owner).ListCommands.Items.Add(Com.Name);

            for (int j = 0; j < Learning.COUNT; j++)
            {
                ((MainForm)this.Owner).tbxLogs.AppendText("Дистанция между " + j.ToString() + "-тым вектором обучения и средним вектором - " + MainSpeech.getDistance(Com.Coefs, (ArrayList)Learn.RecCommands[j]) + "\r\n");
            }

            ((MainForm)this.Owner).tbxLogs.SelectionStart = ((MainForm)this.Owner).tbxLogs.Text.Length;
            ((MainForm)this.Owner).tbxLogs.ScrollToCaret();

            this.Close();
        }
Ejemplo n.º 3
0
        private void BtnStop_Click(object sender, EventArgs e)
        {
            const double MIN_DISTANCE = 0d;

            string    name;
            ArrayList result = SoundProcessing.Stop();

            result = Learning.Normalize(result);

            double distance = Speech.Compare(result, out name);

            Logger.Add("Recognited as \"" + name + "\"");
            if (distance >= MIN_DISTANCE)
            {
                tbxLogs.Text += "Похоже команда не расспознана, попробуйте ещё раз,\n но если уверены в своей правоте, то вероятней всего это была команда " + name + "\r\n";
            }
            else
            {
                tbxLogs.Text += "Команда распозанана. Это " + name;
                System.Windows.Forms.MessageBox.Show(name);
            }

            BtnStop.Visible  = false;
            BtnStart.Visible = true;
            inProcess        = false;
            for (int j = 0; j < Speech.Commands.Count; j++)
            {
                this.tbxLogs.Text += "Дистанция между вектором " + ((Command)Speech.Commands[j]).Name + " и записанным вектором - " + MainSpeech.getDistance(((Command)Speech.Commands[j]).Coefs, result) + "\r\n";
            }
            tbxLogs.SelectionStart = tbxLogs.Text.Length;
            tbxLogs.ScrollToCaret();
        }
Ejemplo n.º 4
0
 private void MainForm_Load(object sender, EventArgs e)
 {
     Logger.Add("Program started");
     WaveInput.PrepareMic();
     Speech = new MainSpeech(); //создание объекта главного класса
     for (int i = 0; i < Speech.Commands.Count; i++) //вывод сузествующих комманд в листбокс
     {
         ListCommands.Items.Add(((Command)Speech.Commands[i]).Name);
     }
 }