Spracherkennung für ganze Texte.

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von Luca.

    Spracherkennung für ganze Texte.

    Hi,

    ich bin dabei ein Textprogramm zu programmieren und hatte die Idee, eine Spracherkennung einzubauen. Diese Spracherkennung soll Wörter für mich schreiben, also muss sie jedes Deutsche und am Besten auch jedes Englische Wort kennen. Ich hab schon gesucht danach und das bekommen: Sprachsteuerung [Überarbeitet] . Aber so müsste ich jedes Wort in die gramma Datei eintragen, das kann ich leider nicht :/ . Gibt es eine Spracherkennung, die jedes Wort erkennen kann und immer noch ziemlich genau die ganzen Wörter erkennt ?

    Ich hoffe ihr könnt mir helfen :D

    MfG Luca

    Edit: Hab das gefunden: msdn.microsoft.com/de-de/libra…ion.dictationgrammar.aspx kann man damit vielleicht so etwas machen ? :D
    Hi,

    Ja hab schon mal etwas geschrieben. Es geht. Wenn man deutlich genug spricht, sogar sehr gut. Aber leider erkennt er nur Deutsch. Wie bekomme ich Englisch zur Gramma hinzugefügt ?

    Mein Code:

    VB.NET-Quellcode

    1. ​Public Class frmMain
    2. Dim reco As New SpeechRecognitionEngine
    3. Private Sub frmMain_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    4. AddHandler reco.SpeechRecognized, AddressOf reco_SpeechRecognized
    5. End Sub
    6. Private Sub btnStart_Click(sender As Object, e As EventArgs) Handles btnStart.Click
    7. reco.RecognizeAsync()
    8. End Sub
    9. Private Sub btnStop_Click(sender As Object, e As EventArgs) Handles btnStop.Click
    10. reco.RecognizeAsyncCancel()
    11. End Sub
    12. Private Sub reco_SpeechRecognized(e As Speech.Recognition.SpeechRecognizedEventArgs)
    13. txtBox.Text += e.Result.Text + " - "
    14. End Sub
    15. End Class


    VB.NET-Quellcode

    1. ​Imports System.Speech.Recognition
    2. Public Class SpeechRecognitionEngine
    3. Dim defaultDictationGrammar As New DictationGrammar()
    4. Dim spellingDictationGrammar As New DictationGrammar("grammar:dictation#spelling")
    5. Dim customDictationGrammar As New DictationGrammar("grammar:dictation")
    6. Dim recoEngine As New Speech.Recognition.SpeechRecognitionEngine()
    7. Event SpeechRecognized(e As Speech.Recognition.SpeechRecognizedEventArgs)
    8. Sub New()
    9. recoEngine.SetInputToDefaultAudioDevice()
    10. AddGramma()
    11. AddHandler recoEngine.SpeechRecognized, AddressOf recoEngine_SpeechRecognized
    12. End Sub
    13. Public Sub RecognizeAsync()
    14. recoEngine.RecognizeAsync()
    15. End Sub
    16. Public Sub RecognizeAsyncStop()
    17. recoEngine.RecognizeAsyncStop()
    18. End Sub
    19. Public Sub RecognizeAsyncCancel()
    20. recoEngine.RecognizeAsyncCancel()
    21. End Sub
    22. Public Sub AddToConstomDictationGrammar(Text As String)
    23. customDictationGrammar.SetDictationContext(Text, Nothing)
    24. End Sub
    25. Public Sub AddGramma()
    26. defaultDictationGrammar.Name = "default dictation"
    27. defaultDictationGrammar.Enabled = True
    28. spellingDictationGrammar.Name = "spelling dictation"
    29. spellingDictationGrammar.Enabled = True
    30. customDictationGrammar.Name = "question dictation"
    31. customDictationGrammar.Enabled = True
    32. recoEngine.LoadGrammar(defaultDictationGrammar)
    33. recoEngine.LoadGrammar(spellingDictationGrammar)
    34. recoEngine.LoadGrammar(customDictationGrammar)
    35. End Sub
    36. Private Sub recoEngine_SpeechRecognized(sender As Object, e As Speech.Recognition.SpeechRecognizedEventArgs)
    37. RaiseEvent SpeechRecognized(e)
    38. End Sub
    39. End Class
    Dateien
    • Text.zip

      (82,93 kB, 166 mal heruntergeladen, zuletzt: )