Compartir a través de


RecognitionResult.TopConfidence (Propiedad)

Actualización: noviembre 2007

Obtiene el nivel de confianza de la propiedad TopAlternate del objeto RecognitionResult.

Espacio de nombres:  Microsoft.Ink
Ensamblado:  Microsoft.Ink (en Microsoft.Ink.dll)

Sintaxis

'Declaración
Public ReadOnly Property TopConfidence As RecognitionConfidence
'Uso
Dim instance As RecognitionResult
Dim value As RecognitionConfidence

value = instance.TopConfidence
public RecognitionConfidence TopConfidence { get; }
public:
property RecognitionConfidence TopConfidence {
    RecognitionConfidence get ();
}
/** @property */
public RecognitionConfidence get_TopConfidence()
public function get TopConfidence () : RecognitionConfidence

Valor de propiedad

Tipo: Microsoft.Ink.RecognitionConfidence
Nivel de confianza de la propiedad TopAlternate del objeto RecognitionResult.

Comentarios

De los reconocedores de Microsoft®, sólo el Reconocedor de escritura a mano para inglés (EE.UU.) y el Reconocedor de movimiento de Microsoft admiten niveles de confianza. Los reconocedores de terceros pueden admitir o no niveles de confianza.

Ejemplos

En este ejemplo, el reconocimiento sincrónico se controla en respuesta a una acción del usuario, como hacer clic en un elemento de menú o en un botón. En primer lugar, la colección Strokes de un objeto RecognizerContext se asigna en la colección Strokes asociada a un objeto InkOverlay y se comprueba el recuento de trazos. Si la colección Strokes contiene al menos un objeto Stroke, el proceso de reconocimiento se inicia con una llamada al método Recognize. Si el reconocimiento es correcto y TopConfidence (si se admite) no es igual a RecognitionConfidencePoor (es decir, es Intermediate o Strong), para mostrar TopString se agrega a un cuadro de lista.

' assign strokes collection from the collected strokes
Me.mRecognizerContext.Strokes = Me.mInkOverlay.Ink.Strokes
' check stroke count. Recognize() will throw exception if no strokes
If (Me.mRecognizerContext.Strokes.Count > 0) Then
    Dim status As RecognitionStatus
    ' perform the recognition
    Dim rResult As RecognitionResult = Me.mRecognizerContext.Recognize(status)
    ' see if the recognizer used supports confidence levels
    Dim rSupportsConfidence As Boolean = RecognizerSupportsConfidence(mRecognizerContext.Recognizer)
    ' check status and TopConfidence (if supported)
    If (RecognitionStatus.NoError = status And _
        ((rSupportsConfidence And _
         rResult.TopConfidence <> RecognitionConfidence.Poor) Or _
         Not rSupportsConfidence)) Then
        listBoxRecognitionResults.Items.Add(rResult.TopString)
    End If
End If
// assign strokes collection from the collected strokes
this.mRecognizerContext.Strokes = this.mInkOverlay.Ink.Strokes;
// check stroke count. Recognize() will throw exception if no strokes
if (this.mRecognizerContext.Strokes.Count > 0)
{
    RecognitionStatus status;
    // perform the recognition
    RecognitionResult rResult = this.mRecognizerContext.Recognize(out status);
    // see if the recognizer used supports confidence levels
    bool rSupportsConfidence = RecognizerSupportsConfidence(mRecognizerContext.Recognizer);
    // check status and TopConfidence (if supported)
    if (RecognitionStatus.NoError == status &&
        ((rSupportsConfidence &&
         rResult.TopConfidence != RecognitionConfidence.Poor) ||
         !rSupportsConfidence))
    {
        listBoxRecognitionResults.Items.Add(rResult.TopString);
    }
}

En el ejemplo siguiente, se muestra el método auxiliar que se usa para determinar si Recognizer admite niveles de confianza.

Private Function RecognizerSupportsConfidence(ByVal pRecognizer As Recognizer) As Boolean
    For Each G As Guid In pRecognizer.SupportedProperties
        If G = RecognitionProperty.ConfidenceLevel Then
            Return True
        End If
    Next
    Return False
End Function
private bool RecognizerSupportsConfidence(Recognizer pRecognizer)
{
    foreach (Guid G in pRecognizer.SupportedProperties)
    {
        if (G == RecognitionProperty.ConfidenceLevel)
        {
            return true;
        }
    }
    return false;
}

Plataformas

Windows Vista

.NET Framework y .NET Compact Framework no admiten todas las versiones de cada plataforma. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Información de versión

.NET Framework

Compatible con: 3.0

Vea también

Referencia

RecognitionResult (Clase)

RecognitionResult (Miembros)

Microsoft.Ink (Espacio de nombres)

RecognitionConfidence

RecognitionResult.TopAlternate