Udostępnij za pośrednictwem


ReplacementText Klasa

Definicja

Zawiera informacje o procedurze normalizacji mowy, która została wykonana na wynikach rozpoznawania.

public ref class ReplacementText
[System.Serializable]
public class ReplacementText
[<System.Serializable>]
type ReplacementText = class
Public Class ReplacementText
Dziedziczenie
ReplacementText
Atrybuty

Przykłady

W poniższym przykładzie przedstawiono informacje w interfejsie użytkownika dotyczące obiektu zwróconego RecognizedPhrase przez aparat rozpoznawania.

internal static void DisplayBasicPhraseInfo(  
        Label label,   
        RecognizedPhrase result,   
        SpeechRecognizer rec)   
{  
  if (result != null && label != null)   
  {  
    // Blank  
    if (rec != null)   
    {   
      // Clear  
      label.Text += String.Format(  
                             "  Recognizer currently at:   {0} mSec\n" +  
                             "  Audio Device currently at: {1} mSec\n",  
                             rec.RecognizerAudioPosition.TotalMilliseconds,  
                             rec.AudioPosition.TotalMilliseconds);  
    }  

    if (result != null)   
    { // Clear  
      RecognitionResult recResult = result as RecognitionResult;  
      if (recResult != null)   
      {  
        RecognizedAudio resultAudio = recResult.Audio;  
        if (resultAudio == null)   
        {  
          label.Text += String.Format("  Emulated input\n");  
        }   
        else   
        {  
          label.Text += String.Format(  
                               "  Candidate Phrase at:       {0} mSec\n" +  
                               "  Phrase Length:             {1} mSec\n" +  
                               "  Input State Time:          {2}\n" +  
                               "  Input Format:              {3}\n",  
                               resultAudio.AudioPosition.TotalMilliseconds,  
                               resultAudio.Duration.TotalMilliseconds,  
                               resultAudio.StartTime.ToShortTimeString(),  
                               resultAudio.Format.EncodingFormat.ToString());  
        }  
      }  

      label.Text += String.Format("  Confidence Level:          {0}\n", result.Confidence);  
      if (result.Grammar != null)   
      {  
        label.Text += String.Format(  
                            "  Recognizing Grammar:       {0}\n" +  
                            "  Recognizing Rule:          {1}\n",  
                            ((result.Grammar.Name != null) ? (result.Grammar.Name) : "None"),  
                            ((result.Grammar.RuleName != null) ? (result.Grammar.RuleName) : "None"));  
      }  

      if  (result.ReplacementWordUnits.Count !=  0)    
      {  
        label.Text += String.Format("  Replacement text:\n");  
        foreach (ReplacementText rep in result.ReplacementWordUnits)    
        {  
          string repText = rep.Text;  
          // Add trailing spaces  

          if ((rep.DisplayAttributes & DisplayAttributes.OneTrailingSpace) !=  0)    
          {  
            repText += " ";  
          }  
          if ((rep.DisplayAttributes & DisplayAttributes.TwoTrailingSpaces) !=  0)    
          {  
            repText += "  ";  
          }  
          if ((rep.DisplayAttributes & DisplayAttributes.ConsumeLeadingSpaces) != 0)    
          {  
            repText=repText.TrimStart();  
          }  
          if ((rep.DisplayAttributes & DisplayAttributes.ZeroTrailingSpaces) != 0)   
          {  
            repText = repText.TrimEnd();  
          }  
          label.Text += String.Format(  
                           "      At index {0} for {1} words. Text: \"{2}\"\n",  
                           rep.FirstWordIndex,  rep.CountOfWords, repText);  

        }  
        label.Text += String.Format("\n\n");  
      }  
    }  
  }    
}  

Uwagi

Normalizacja mowy to użycie specjalnych konstrukcji lub symboli do wyrażania mowy na piśmie.

Załóżmy na przykład, że jest to rozpoznany tekst:

"lipiec cztery na dwanaście trzydzieści jeden PM, kupiłem jeden punkt sześć kilogramów ryb za czternaście dolarów i sześć centów, na targu pike place w seattle washington dziewięć osiem jeden dwa"

Jest to ten sam tekst po normalizacji:

"4 lipca o 12:31 PM, kupiłem 1,6 kg ryb za 14,06 dolarów, na rynku pike place w Seattle WA 98122"

W tym przykładzie istnieje pięć podstawiania, z których każde zostałoby opisane przez wystąpienie klasy ReplacementText.

ReplacementText Za pomocą obiektu aplikacja może określić:

  • Lokalizacja i liczba wyrazów zastąpionych normalizacją. Aby uzyskać więcej informacji, zobacz FirstWordIndex lub CountOfWords.

  • Zamieniono tekst i jego atrybuty wyświetlania. Aby uzyskać więcej informacji, zobacz Text, i DisplayAttributes.

Wystąpienia klasy ReplacementText są zwykle uzyskiwane jako elementy członkowskie Collection<T> obiektu zwracane przez ReplacementWordUnits właściwość w RecognizedPhrase klasie (lub klasy dziedziczone z RecognizedPhraseklasy , takich jak RecognitionResult) po znormalizowaniu zwracanego tekstu.

Właściwości

CountOfWords

Pobiera liczbę rozpoznanych wyrazów zastąpionych przez procedurę normalizacji mowy.

DisplayAttributes

Pobiera informacje o wiodących i końcowych spacjach dla tekstu zastąpionego przez procedurę normalizacji mowy.

FirstWordIndex

Pobiera lokalizację pierwszego rozpoznanego słowa zastąpionego przez procedurę normalizacji mowy.

Text

Pobiera rozpoznany tekst zastąpiony przez procedurę normalizacji mowy.

Metody

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetType()

Type Pobiera wartość bieżącego wystąpienia.

(Odziedziczone po Object)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)

Dotyczy