private void BtnStop_Click(object sender, EventArgs e) { Learn.RecCommands.Add(SoundProcessing.Stop()); ComCounter--; if (ComCounter == 0) { LblProg.Text = string.Format("Запишите команду еще {0} раз", ComCounter); } else { LblProg.Text = string.Format("Запишите команду еще {0} раза", ComCounter); } PrbLearning.Value = 100 * (Learning.COUNT - ComCounter) / Learning.COUNT; BtnStart.Visible = true; BtnStop.Visible = false; if (ComCounter == 0) { BtnSave.Visible = true; } Bitmap Bmp = new Bitmap(pictureBox1.Width, pictureBox1.Height); pictureBox1.BackgroundImage = Bmp; LBPlot.DrawPlot(SoundProcessing.LastFFT /*. GetRange(0,SoundProcessing.LastAmplify.Length/128)*/, Bmp, false); //DigitalSignal.DrawPlot(SoundProcessing.LastFFT, Bmp, false); }
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(); }
private void BtnStart_Click(object sender, EventArgs e) { if (ComCounter == 0) { System.Windows.Forms.MessageBox.Show("Кончайте!"); return; } BtnStart.Visible = false; BtnStop.Visible = true; SoundProcessing.Start(); }
private void btnAutoAdd_Click(object sender, EventArgs e) { if (tbAutoFiles.Lines.Length < 3) { MessageBox.Show("Не хватает файлов для обучения. Необходимы как минимум три"); return; } for (int j = 0; j < Learning.COUNT; j++) { Learn.RecCommands.Add(SoundProcessing.AutoTeach(tbAutoFiles.Lines[j])); } ComCounter = 0; BoxName.Text = tbAutoName.Text; BtnSave_Click(sender, e); }
private void BtnStart_Click(object sender, EventArgs e) { Logger.Add("Recognition attempt"); if (Speech.Commands.Count == 0) { Logger.Add("Recognition is impossible. Training wasn't made."); tbxLogs.Text += "У-ля-ля, всё печально. Сначала требуется обучить систему!\r\n"; } else { BtnStart.Visible = false; BtnStop.Visible = true; Logger.Add("Recognition start"); inProcess = true; SoundProcessing.Start(); } tbxLogs.SelectionStart = tbxLogs.Text.Length; tbxLogs.ScrollToCaret(); }