ImageFeatureValue Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Décrit les propriétés de l’image utilisée pour passer dans un modèle.
public ref class ImageFeatureValue sealed : ILearningModelFeatureValue
/// [Windows.Foundation.Metadata.ContractVersion(Windows.AI.MachineLearning.MachineLearningContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class ImageFeatureValue final : ILearningModelFeatureValue
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.AI.MachineLearning.MachineLearningContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class ImageFeatureValue : ILearningModelFeatureValue
Public NotInheritable Class ImageFeatureValue
Implements ILearningModelFeatureValue
- Héritage
- Attributs
- Implémente
Configuration requise pour Windows
Famille d’appareils |
Windows 10, version 1809 (introduit dans 10.0.17763.0)
|
API contract |
Windows.AI.MachineLearning.MachineLearningContract (introduit dans v1.0)
|
Exemples
L’exemple suivant crée un LearningModelSession et un LearningModelBinding, lie l’entrée à une ImageFeatureValue créée à partir d’un VideoFrame, puis lie la sortie.
#include <winrt/Windows.AI.MachineLearning.h>
#include <winrt/Windows.Media.h>
using namespace winrt;
using namespace Windows::AI::MachineLearning;
using namespace Windows::Media;
...
void BindModel(
LearningModel model,
LearningModelDeviceKind deviceKind,
winrt::hstring inputName,
winrt::hstring outputName,
VideoFrame imageFrame)
{
// Create a session and binding.
LearningModelSession session = LearningModelSession{ model, LearningModelDevice(deviceKind) };
LearningModelBinding binding = LearningModelBinding{ session };
// Bind the intput image.
binding.Bind(inputName, ImageFeatureValue::CreateFromVideoFrame(imageFrame));
// Bind the output.
std::vector<int64_t> shape({ 1, 1000, 1, 1 });
binding.Bind(outputName, TensorFloat::Create(shape));
}
Remarques
Il s’agit de la méthode recommandée pour passer des images en tant qu’entrées et sorties. Il vous permet de vous concentrer sur l’image et de ne pas avoir à vous soucier des conversions ou de la tenseur. Vous pouvez créer un ImageFeatureValue à l’aide de la méthode ImageFeatureValue.CreateFromVideoFrame .
Windows ML prend en charge deux types de VideoFrame : SoftwareBitmap et IDirect3DSurface. Le système prend en charge la conversion et la tenseur pour que les images correspondent au format requis par le modèle. Les types de formats de modèles actuellement pris en charge sont Gray8, Rgb8 et Bgr8, et la plage de pixels actuellement prise en charge est 0-255.
Windows Server
Pour utiliser cette API sur Windows Server, vous devez utiliser Windows Server 2019 avec Expérience de bureau.
Sécurité des threads
Cette API est thread-safe.
Propriétés
Kind |
Retourne le type associé à la fonctionnalité. |
VideoFrame |
Obtient l’image vidéo. |
Méthodes
CreateFromVideoFrame(VideoFrame) |
Crée une imageFeatureValue à l’aide de l’image vidéo donnée. |