Bagikan melalui


RecognizedWordUnit Konstruktor

Definisi

Menginisialisasi instans baru kelas 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)

Parameter

text
String

Teks yang dinormalisasi untuk kata yang dikenali.

Nilai ini bisa , null"", atau Empty.

confidence
Single

Nilai float dari 0,0 hingga 1,0 menunjukkan kepastian pengenalan kata.

pronunciation
String

Ejaan fonetik kata yang dikenali.

Nilai ini bisa , null"", atau Empty.

lexicalForm
String

Teks yang tidak dinormalisasi untuk kata yang dikenali.

Argumen ini diperlukan dan mungkin nullbukan , "", atau Empty.

displayAttributes
DisplayAttributes

Menentukan penggunaan spasi kosong untuk menampilkan kata-kata yang dikenali.

audioPosition
TimeSpan

Lokasi kata yang dikenali dalam aliran input audio.

Nilai ini bisa berupa Zero.

audioDuration
TimeSpan

Panjang input audio yang sesuai dengan kata yang dikenali.

Nilai ini bisa berupa Zero.

Contoh

Contoh berikut adalah pengujian emulasi yang agak sulit, di mana kata-kata baru dihasilkan dari input dan diteruskan ke emulator, lalu diverifikasi.

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;  
      }  
    }  
  }  
}  

Keterangan

Jika text atau pronunciation adalah null, "", atau Empty dan RecognizedWordUnit digunakan dalam operasi pengenalan, mesin pengenalan akan menghasilkan nilai yang sesuai dalam instans output RecognizedWordUnit apa pun.

Konstruksi RecognizedWordUnit langsung instans biasanya hanya digunakan saat menilui operasi pengenalan menggunakan EmulateRecognize metode atau EmulateRecognizeAsync kelas SpeechRecognitionEngine dan EmulateRecognize metode SpeechRecognizer atau EmulateRecognizeAsync kelas .

Untuk aplikasi aktual, jangan langsung membangun RecognizedWordUnit, lebih baik mendapatkannya melalui Words properti pada RecognizedPhrase objek .

Berlaku untuk

Lihat juga