Hallo!
Ich habe nach der Anleitung Spracherkennung Part 1: Dictation Mode folgenden Code entwickelt:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Speech;
using System.Speech.Recognition;
namespace spracherkennung
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
SpeechRecognitionEngine SRE = new SpeechRecognitionEngine();
SRE.LoadGrammar(new DictationGrammar()); // Diktiergrammatik laden
SRE.SetInputToDefaultAudioDevice(); // Aufnahmequelle auf Standard setzen
RecognitionResult Result = SRE.Recognize(); // Ton aufzeichnen und erkennen
string ResultString = "";
// alle erkannten Wörter aus dem Ergebnis dem Ergebnisstring hinzufügen
foreach (RecognizedWordUnit w in Result.Words)
{
ResultString += w.Text;
}
textBox1.Text = ResultString;
}
}
}
Das Ergebnis ist, entgegen der dortigen Kommentare, nicht nice oder echt geil, sondern ziemlich schlecht, statt "a, b, c, d, e, f" kommt dann "r.i.c.e.b.e.r.i.e.f." heraus, statt "Ihre Meinung ist gefragt" kommt dann "IhrmeineersteFrau", bei "Hallo" kommt ausnahmsweise auch "Hallo", bei "Test" aber schon wieder "dieS.E." und daher wollte ich jetzt einmal fragen, ob da irgendetwas falsch läuft, falsch konfiguriert (Visual Studio 2013, Windows 8 MCE; beides ohne besondere Einstellungen) ist, oder ob das alles einfach generell (noch?) nicht funktioniert.
Hey,
arbeitest du vielleicht mit einer englischen Version von Visual Studio. Kann es evtl sein, dass du die Spracherkennung erst auf Deutsch stellen musst?
Da könnte ich mir vorstellen das es hackt.
Ich mache bei Windows Phone auch Texterkennung und da funktioniert das auch "geil" und "prima" 😉
Hallo hansklaus,
bei mir lag die schlechte Erkennung am Mikrofon, das einen viel zu niedrigen Pegel und gleichzeitig ein sehr verrauschtes Signal lieferte.
herbivore