I really appreciate everyone
I really appreciate everyone who commented on this topic and want to say thank you.
I have some news that might help anyone that has is looking for the same thing as I was in speech recognition.
After several failed attemps of getting the speech recognition to work well and be accurate I have found a way that is two part.
FIRST PART:
Purchase a bluetooth headset.
Here is the one I purchased https://www.jabra.com/bluetooth-headsets/jabra-bt2047
Using the headset took the speech recognition percentage of recognition up from 30% to around 60% of words recognized.
This gave me hope that it could still work. I then did a couple training sesons with the speech recognition and it got better but still was not at the level I wanted.
SECOND PART:
After doing some reading and then looking at everyone elses failed attemps I came up with an idea that changed the amount of words recognized to just about 90%.
Below is the base code that I established that changed it for me. The idea is to load all the words into an array(List) and then use those to compare against. This idea works well and I am getting very good results. I look forward to you all trying this and hopefully we can come up with a even better working voice recognition.
Option Strict On
Imports System.Speech
Imports System.Speech.Recognition
Public Class Form1
WithEvents Reco As New SpeechRecognitionEngine
Dim Counter As Integer = 0
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
TextBox1.WordWrap = True
TextBox1.ScrollBars = ScrollBars.Vertical
AddHandler Reco.SpeechRecognized, AddressOf RSR_SpeechRecognized
Dim GrammarList As New List(Of String)
Using SR As New IO.StreamReader(Application.StartupPath & “\Words.txt”)
Do Until SR.EndOfStream
GrammarList.Add(SR.ReadLine)
Counter += 1
Loop
End Using
Me.Text = "Form1 " & Counter.ToString
Dim ChoicesToUse As New Choices(GrammarList.ToArray())
GrammarList.Clear()
Dim GB As New GrammarBuilder(ChoicesToUse)
Dim GrammarToUse As New Grammar(GB)
Reco.LoadGrammarAsync(GrammarToUse)
Reco.SetInputToDefaultAudioDevice()
Reco.RecognizeAsync(RecognizeMode.Multiple)
End Sub
Private Sub RSR_SpeechRecognized(ByVal sender As Object, ByVal e As RecognitionEventArgs)
TextBox1.AppendText(e.Result.Text & " | " & e.Result.Confidence.ToString & vbCrLf)
TextBox2.Text = TextBox2.Text + " " & e.Result.Text
End Sub
End Class