C# - как сделать уникальное распознавание голоса?
Привет, у меня есть проект C#, который я хочу добавить к этой уникальной функции распознавания голоса.
В этом проекте я должен иметь базу данных образцов голоса разных людей и сравнивать входящие звуки с точки зрения параметров со звуками в базе данных, но я не знаю, как извлечь эти параметры из звуков? И как мне их сравнивать?
Я слышал, что это можно сделать с помощью тем машинного обучения, но я еще ничего о них не знаю.
Дорогие друзья, не могли бы вы познакомить меня с некоторыми ресурсами или учебниками для этого?
Или если ты сможешь вести меня?
Спасибо.....
Что я уже пробовал:
До сих пор мне удавалось реализовать только чувствительную к тексту программу распознавания голоса, но этого недостаточно, потому что она не чувствительна к определенному звуку:
public partial class EnVoiceUC : UserControl { public EnVoiceUC() { InitializeComponent(); } string[] dialogs = Program.dlgArr; private void Recorder_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) { Form1 f1 = new Form1(); string recText = e.Result.Text; for (int i = 0; i < dialogs.Length; i++) { if(dialogs[i]==recText) { try { ((Form)this.TopLevelControl).Hide(); f1.ShowDialog(); ((Form)this.TopLevelControl).Close(); } catch {;} } } } private void DoRecord_Click(object sender, EventArgs e) { System.Media.SystemSounds.Beep.Play(); VoiceRecorder(true); } public void VoiceRecorder(bool enable) { Choices voices = new Choices(); SpeechRecognitionEngine recorder = new SpeechRecognitionEngine(); voices.Add(dialogs); Grammar gramer = new Grammar(new GrammarBuilder(voices)); label2.Visible = enable; if (enable) { try { recorder.RequestRecognizerUpdate(); recorder.LoadGrammar(gramer); recorder.SpeechRecognized += Recorder_SpeechRecognized; recorder.SetInputToDefaultAudioDevice(); recorder.RecognizeAsync(RecognizeMode.Multiple); } catch { return; } } else { try { recorder.UnloadGrammar(gramer); } catch { return; } } } }
Gerry Schmitz
Зависит от того, какой "движок" вы используете. Он должен быть "обучен", и это будет отражено в их документации с точки зрения того, какой тип входных данных он поддерживает для обучения.
Ashirwad Satapathi
Как насчет через динамик распознавание когнитивных услуги, предлагаемые Azure. Надеюсь, это поможет решить вашу проблему.
https://azure.microsoft.com/en-in/services/cognitive-services/speaker-recognition/