Condividi tramite


ReplacementText Classe

Definizione

Contiene informazioni su una procedura di normalizzazione vocale eseguita sui risultati del riconoscimento.

public ref class ReplacementText
public class ReplacementText
[System.Serializable]
public class ReplacementText
type ReplacementText = class
[<System.Serializable>]
type ReplacementText = class
Public Class ReplacementText
Ereditarietà
ReplacementText
Attributi

Esempio

Nell'esempio seguente vengono visualizzate informazioni in un'interfaccia utente su un RecognizedPhrase oggetto restituito da un motore di riconoscimento.

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

Commenti

La normalizzazione vocale è l'uso di costrutti o simboli speciali per esprimere il parlato in scrittura.

Si supponga, ad esempio, che questo testo sia riconosciuto:

"luglio quattro a 130 PM, ho comprato un punto sei chili di pesce per quattordici dollari e sei centesimi, al mercato del luogo di pike a seattle washington nove otto due due"

Questo è lo stesso testo dopo la normalizzazione:

"Il 4 luglio alle 12:31, ho comprato 1,6 kg di pesce per $14.06, al mercato del pike place a Seattle WA 98122"

In questo esempio sono presenti cinque sostituzioni, ognuna delle quali verrebbe descritta da un'istanza di ReplacementText.

Usando l'oggetto ReplacementText , un'applicazione può determinare:

  • Posizione e numero di parole sostituite dalla normalizzazione. Per altre informazioni, vedere FirstWordIndex o CountOfWords.

  • Testo sostituito e relativi attributi di visualizzazione. Per altre informazioni, vedere Texte DisplayAttributes.

Le istanze di ReplacementText vengono in genere ottenute come membri dell'oggetto Collection<T> restituito dalla ReplacementWordUnits proprietà su RecognizedPhrase (o classi che ereditano da RecognizedPhrase, ad esempio RecognitionResult) quando il testo restituito è stato normalizzato.

Proprietà

Nome Descrizione
CountOfWords

Ottiene il numero di parole riconosciute sostituite dalla procedura di normalizzazione vocale.

DisplayAttributes

Ottiene informazioni sugli spazi iniziali e finali per il testo sostituito dalla procedura di normalizzazione vocale.

FirstWordIndex

Ottiene la posizione della prima parola riconosciuta sostituita dalla procedura di normalizzazione vocale.

Text

Ottiene il testo riconosciuto sostituito dalla procedura di normalizzazione vocale.

Metodi

Nome Descrizione
Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Ottiene il Type dell'istanza corrente.

(Ereditato da Object)
MemberwiseClone()

Crea una copia superficiale del Objectcorrente.

(Ereditato da Object)
ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Si applica a