Grammar.Weight Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene o establece el valor del ancho en píxeles del objeto Grammar.
public:
property float Weight { float get(); void set(float value); };
public float Weight { get; set; }
member this.Weight : single with get, set
Public Property Weight As Single
Valor de propiedad
La Weight
propiedad devuelve un valor de punto flotante que indica el peso relativo que una instancia del motor de reconocimiento debe asignar a la gramática al procesar la entrada de voz. El intervalo es de 0,0 a 1,.0 inclusive. El valor predeterminado es 1.0.
Ejemplos
En el ejemplo siguiente se crean dos Grammar objetos, uno para dígitos y otro para fracciones. A Grammar los objetos se les asignan nombres y pesos y prioridades relativos, y los carga un reconocedor de voz en proceso. Los CreateDigitsGrammar
métodos , CreateFractionsGrammar
y recognizer_SpeechRecognized
no se muestran aquí.
// Create a Grammar for recognizing numeric digits.
Grammar digitsGrammar = CreateDigitsGrammar();
digitsGrammar.Name = "Digits Grammar";
digitsGrammar.Priority = 2;
digitsGrammar.Weight = 0.6f;
// Create a Grammar for recognizing fractions.
Grammar fractionsGrammar = CreateFractionsGrammar();
fractionsGrammar.Name = "Fractions Grammar";
fractionsGrammar.Priority = 1;
fractionsGrammar.Weight = 1f;
// Create an in-process speech recognizer.
SpeechRecognitionEngine recognizer = new SpeechRecognitionEngine();
recognizer.SpeechRecognized +=
new EventHandler<SpeechRecognizedEventArgs>(
recognizer_SpeechRecognized);
// Load the digits and fractions Grammar objects.
recognizer.LoadGrammar(digitsGrammar);
recognizer.LoadGrammar(fractionsGrammar);
// Start recognition.
recognizer.SetInputToDefaultAudioDevice();
recognizer.RecognizeAsync(RecognizeMode.Multiple);
Comentarios
Debido a la complejidad del uso de Weight de un motor de reconocimiento, su efecto en el rendimiento de una gramática determinada no es tan predecible directamente como el de Priority.
El reconocimiento de voz es un sistema ponderado. Evalúa todas las posibles rutas de reconocimiento basadas en una combinación del peso de la gramática, las ponderaciones definidas para alternativas dentro de la gramática y las probabilidades definidas por los modelos de voz. El motor de reconocimiento de voz usa la combinación de estas ponderaciones y probabilidades para clasificar posibles reconocimientos alternativos. Las gramáticas con mayores pesos contribuirán más a la clasificación de alternativas de reconocimiento que las gramáticas con pesos menores.
El efecto de la Weight propiedad en un reconocedor de voz depende de la implementación del reconocedor. Aunque la Weight propiedad se puede usar para ajustar la precisión del reconocimiento de voz para una aplicación, solo se debe usar después de un estudio de diagnóstico controlado de un entorno de reconocimiento determinado y con información completa sobre el motor de reconocimiento en uso.