Freigeben über


ImageFeatureDescriptor Klasse

Definition

Beschreibt die Eigenschaften des Bilds, das das Modell erwartet.

public ref class ImageFeatureDescriptor sealed : ILearningModelFeatureDescriptor
/// [Windows.Foundation.Metadata.ContractVersion(Windows.AI.MachineLearning.MachineLearningContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class ImageFeatureDescriptor final : ILearningModelFeatureDescriptor
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.AI.MachineLearning.MachineLearningContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class ImageFeatureDescriptor : ILearningModelFeatureDescriptor
Public NotInheritable Class ImageFeatureDescriptor
Implements ILearningModelFeatureDescriptor
Vererbung
Object Platform::Object IInspectable ImageFeatureDescriptor
Attribute
Implementiert

Windows-Anforderungen

Gerätefamilie
Windows 10, version 1809 (eingeführt in 10.0.17763.0)
API contract
Windows.AI.MachineLearning.MachineLearningContract (eingeführt in v1.0)

Beispiele

Im folgenden Beispiel wird ein Modell aus einer lokalen Datei geladen, eine Sitzung daraus erstellt und die Eingabe- und Ausgabefeatures abgerufen.

private async Task LoadModelAsync(string _modelFileName)
{
    LearningModel _model;
    LearningModelSession _session;
    ImageFeatureDescriptor _inputImageDescription;
    TensorFeatureDescriptor _outputImageDescription;

    try
    {
        // Load and create the model
        var modelFile = 
            await StorageFile.GetFileFromApplicationUriAsync(new Uri($"ms-appx:///Assets/{_modelFileName}"));
        _model = await LearningModel.LoadFromStorageFileAsync(modelFile);

        // Create the evaluation session with the model
        _session = new LearningModelSession(_model);

        //Get input and output features of the model
        List<ILearningModelFeatureDescriptor> inputFeatures = _model.InputFeatures.ToList();
        List<ILearningModelFeatureDescriptor> outputFeatures = _model.OutputFeatures.ToList();

        // Retrieve the first input feature which is an image
        _inputImageDescription = inputFeatures.FirstOrDefault(
            feature => feature.Kind == LearningModelFeatureKind.Image) as ImageFeatureDescriptor;

        // Retrieve the first output feature which is a tensor
        _outputImageDescription = outputFeatures.FirstOrDefault(
            feature => feature.Kind == LearningModelFeatureKind.Tensor) as TensorFeatureDescriptor;
    }
    catch (Exception ex)
    {
        StatusBlock.Text = $"error: {ex.Message}";
        _model = null;
    }
}

Hinweise

Windows Server

Um diese API unter Windows Server verwenden zu können, müssen Sie Windows Server 2019 mit Desktopdarstellung verwenden.

Threadsicherheit

Diese API ist threadsicher.

Eigenschaften

BitmapAlphaMode

Gibt den erwarteten Alphamodus des Bilds an.

BitmapPixelFormat

Gibt das erwartete Pixelformat (Kanalreihenfolge, Bittiefe und Datentyp) an.

Description

Eine Beschreibung, wofür dieses Feature im Modell verwendet wird.

Height

Die erwartete Bildhöhe.

IsRequired

Wenn true, müssen Sie einen Wert an dieses Feature binden, bevor Sie LearningModelSession.Evaluate aufrufen.

Kind

Die Art des Features: Verwenden Sie diese, um zu wissen, welche abgeleitete Klasse verwendet werden soll.

Name

Der Name, den Sie zum Binden von Werten an dieses Feature verwenden.

PixelRange

Stellt die erwarteten LearningModelPixelRange-Informationen für die Verwendung mit dem Modell bereit.

Width

Die erwartete Bildbreite.

Gilt für:

Weitere Informationen