RecognizedWordUnit Costruttore
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Inizializza una nuova istanza della classe RecognizedWordUnit.
public:
RecognizedWordUnit(System::String ^ text, float confidence, System::String ^ pronunciation, System::String ^ lexicalForm, System::Speech::Recognition::DisplayAttributes displayAttributes, TimeSpan audioPosition, TimeSpan audioDuration);
public RecognizedWordUnit(string text, float confidence, string pronunciation, string lexicalForm, System.Speech.Recognition.DisplayAttributes displayAttributes, TimeSpan audioPosition, TimeSpan audioDuration);
new System.Speech.Recognition.RecognizedWordUnit : string * single * string * string * System.Speech.Recognition.DisplayAttributes * TimeSpan * TimeSpan -> System.Speech.Recognition.RecognizedWordUnit
Public Sub New (text As String, confidence As Single, pronunciation As String, lexicalForm As String, displayAttributes As DisplayAttributes, audioPosition As TimeSpan, audioDuration As TimeSpan)
Parametri
- text
- String
Testo normalizzato per una parola riconosciuta.
Questo valore può essere null, "" o Empty.
- confidence
- Single
Valore float compreso tra 0,0 e 1,0 che indica la certezza del riconoscimento delle parole.
- pronunciation
- String
Ortografia fonetica di una parola riconosciuta.
Questo valore può essere null, "" o Empty.
- lexicalForm
- String
Testo non conmalizzato per una parola riconosciuta.
Questo argomento è obbligatorio e potrebbe non essere null, "" o Empty.
- displayAttributes
- DisplayAttributes
Definisce l'uso di spazi vuoti per visualizzare parole riconosciute.
- audioPosition
- TimeSpan
Posizione della parola riconosciuta nel flusso di input audio.
Il valore può essere Zero.
- audioDuration
- TimeSpan
Lunghezza dell'input audio corrispondente alla parola riconosciuta.
Il valore può essere Zero.
Esempio
L'esempio seguente è un test contrived dell'emulazione, in cui le nuove parole vengono generate dall'input e passate all'emulatore e quindi verificate.
private void _emulateAndVerify_Click(object sender, EventArgs e)
{
char[] delimiterChars = { ' ', ',', '.', ':', ';', '\t' };
string text = _emulateTextBox.Text;
string[] words = text.Split(delimiterChars);
RecognizedWordUnit[] InputWordUnits = new RecognizedWordUnit[words.Length];
for (int i = 0; i < words.Length; i++)
{
InputWordUnits[i] = new RecognizedWordUnit(
"",
0,
"",
words[i].ToLower(),
DisplayAttributes.OneTrailingSpace,
new TimeSpan(),
new TimeSpan());
}
RecognitionResult rec = _recognizer.EmulateRecognize(
InputWordUnits,
System.Globalization.CompareOptions.IgnoreCase);
if (rec == null)
{
MessageBox.Show(String.Format("Recognition emulation for {0} failed.\n", text));
}
else if (InputWordUnits.Length != rec.Words.Count)
{
MessageBox.Show(
String.Format("Length mismatch: Input was {0} words, Recognition has {1} words.\n}"));
}
else
{
for (int i = 0; i < InputWordUnits.Length; i++)
{
if (rec.Words[i].LexicalForm.ToLower() != InputWordUnits[i].LexicalForm.ToLower())
{
MessageBox.Show(
String.Format("Input word {0} \"{1}\" not found. Recognition output is {2}",
i, InputWordUnits[i].LexicalForm, rec.Words[i].LexicalForm));
continue;
}
}
}
}
Commenti
Se text o pronunciation sono null, "" o Empty e RecognizedWordUnit viene usato in un'operazione di riconoscimento, il motore di riconoscimento genererà i valori appropriati in qualsiasi istanza di output RecognizedWordUnit .
La costruzione diretta delle istanze viene in genere usata solo quando emulare operazioni di RecognizedWordUnit riconoscimento usando i EmulateRecognize metodi o EmulateRecognizeAsync della SpeechRecognitionEngine classe e i EmulateRecognize metodi o EmulateRecognizeAsync della SpeechRecognizer classe .
Per le applicazioni effettive, non costruire RecognizedWordUnitdirettamente , anziché ottenerlo tramite la Words proprietà sull'oggetto RecognizedPhrase .