ReplacementText Klas

Definitie

Bevat informatie over een spraaknormalisatieprocedure die is uitgevoerd op herkenningsresultaten.

public ref class ReplacementText
[System.Serializable]
public class ReplacementText
[<System.Serializable>]
type ReplacementText = class
Public Class ReplacementText
Overname
ReplacementText
Kenmerken

Voorbeelden

In het onderstaande voorbeeld wordt informatie weergegeven in een gebruikersinterface over een RecognizedPhrase object dat wordt geretourneerd door een herkenningsengine.

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

Opmerkingen

Spraaknormalisatie is het gebruik van speciale constructies of symbolen om spraak schriftelijk uit te drukken.

Stel dat dit herkende tekst is:

"4 juli om 133 uur, ik kocht een punt zes kilo vis voor veertien dollar en zes cent, op de markt van pike place in Seattle washington negen acht één twee twee"

Dit is dezelfde tekst na normalisatie:

"4 juli om 12:31 pm, ik kocht 1,6 kg vis voor $ 14,06, op de markt van pike place in Seattle WA 98122"

In dit voorbeeld zijn er vijf vervangingen, die elk worden beschreven door een instantie van ReplacementText.

Met behulp van het ReplacementText object kan een toepassing het volgende bepalen:

Exemplaren van ReplacementText worden doorgaans verkregen als leden van het Collection<T> object dat wordt geretourneerd door de ReplacementWordUnits eigenschap op RecognizedPhrase (of klassen die overnemen van RecognizedPhrase, zoals RecognitionResult) wanneer geretourneerde tekst is genormaliseerd.

Eigenschappen

Name Description
CountOfWords

Hiermee haalt u het aantal herkende woorden op dat wordt vervangen door de spraaknormalisatieprocedure.

DisplayAttributes

Hiermee wordt informatie opgehaald over de voorloop- en volgspaties voor de tekst die wordt vervangen door de spraaknormalisatieprocedure.

FirstWordIndex

Hiermee haalt u de locatie op van het eerste herkende woord dat wordt vervangen door de spraaknormalisatieprocedure.

Text

Hiermee wordt de herkende tekst vervangen door de spraaknormalisatieprocedure.

Methoden

Name Description
Equals(Object)

Bepaalt of het opgegeven object gelijk is aan het huidige object.

(Overgenomen van Object)
GetHashCode()

Fungeert als de standaardhashfunctie.

(Overgenomen van Object)
GetType()

Hiermee haalt u de Type huidige instantie op.

(Overgenomen van Object)
MemberwiseClone()

Hiermee maakt u een ondiepe kopie van de huidige Object.

(Overgenomen van Object)
ToString()

Retourneert een tekenreeks die het huidige object vertegenwoordigt.

(Overgenomen van Object)

Van toepassing op