OnnxCatalog.DnnFeaturizeImage Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Erstellen Sie DnnImageFeaturizerEstimator, das eine der vortrainierten DNN-Modelle DnnImageModelSelector anwendet, um ein Bild zu featurisieren.
public static Microsoft.ML.Transforms.Onnx.DnnImageFeaturizerEstimator DnnFeaturizeImage (this Microsoft.ML.TransformsCatalog catalog, string outputColumnName, Func<Microsoft.ML.Transforms.Onnx.DnnImageFeaturizerInput,Microsoft.ML.Data.EstimatorChain<Microsoft.ML.Transforms.ColumnCopyingTransformer>> modelFactory, string inputColumnName = default);
static member DnnFeaturizeImage : Microsoft.ML.TransformsCatalog * string * Func<Microsoft.ML.Transforms.Onnx.DnnImageFeaturizerInput, Microsoft.ML.Data.EstimatorChain<Microsoft.ML.Transforms.ColumnCopyingTransformer>> * string -> Microsoft.ML.Transforms.Onnx.DnnImageFeaturizerEstimator
<Extension()>
Public Function DnnFeaturizeImage (catalog As TransformsCatalog, outputColumnName As String, modelFactory As Func(Of DnnImageFeaturizerInput, EstimatorChain(Of ColumnCopyingTransformer)), Optional inputColumnName As String = Nothing) As DnnImageFeaturizerEstimator
Parameter
- catalog
- TransformsCatalog
Der Katalog der Transformation.
- outputColumnName
- String
Der Name der Spalte, die aus der Transformation von inputColumnName
.
- modelFactory
- Func<DnnImageFeaturizerInput,EstimatorChain<ColumnCopyingTransformer>>
Eine Erweiterungsmethode für das DnnImageModelSelector Erstellen einer Kette von zwei OnnxScoringEstimator (einer für die Vorverarbeitung und eine mit einem vortrainierten Image DNN) mit bestimmten Modellen, die in einem Paket zusammen mit dieser Erweiterungsmethode enthalten sind.
- inputColumnName
- String
Name der zu transformierenden Spalte.
Wenn dieser Wert als null
Quelle festgelegt ist, wird der Wert des Werts outputColumnName
als Quelle verwendet.
Gibt zurück
Beispiele
using System.IO;
using System.Linq;
using Microsoft.ML;
using Microsoft.ML.Data;
namespace Samples.Dynamic
{
public static class DnnFeaturizeImage
{
public static void Example()
{
// Create a new ML context, for ML.NET operations. It can be used for
// exception tracking and logging, as well as the source of randomness.
var mlContext = new MLContext();
// Downloading a few images, and an images.tsv file, which contains a
// list of the files from the dotnet/machinelearning/test/data/images/.
// If you inspect the fileSystem, after running this line, an "images"
// folder will be created, containing 4 images, and a .tsv file
// enumerating the images.
var imagesDataFile = Microsoft.ML.SamplesUtils.DatasetUtils
.GetSampleImages();
// Preview of the content of the images.tsv file, which lists the images
// to operate on
//
// imagePath imageType
// tomato.bmp tomato
// banana.jpg banana
// hotdog.jpg hotdog
// tomato.jpg tomato
var data = mlContext.Data.CreateTextLoader(new TextLoader.Options()
{
Columns = new[]
{
new TextLoader.Column("ImagePath", DataKind.String, 0),
new TextLoader.Column("Name", DataKind.String, 1),
}
}).Load(imagesDataFile);
var imagesFolder = Path.GetDirectoryName(imagesDataFile);
// Installing the Microsoft.ML.DNNImageFeaturizer packages copies the models in the
// `DnnImageModels` folder.
// Image loading pipeline.
var pipeline = mlContext.Transforms.LoadImages("ImageObject",
imagesFolder, "ImagePath")
.Append(mlContext.Transforms.ResizeImages("ImageObject", imageWidth:
224, imageHeight: 224))
.Append(mlContext.Transforms.ExtractPixels("Pixels", "ImageObject"))
.Append(mlContext.Transforms.DnnFeaturizeImage("FeaturizedImage",
m => m.ModelSelector.ResNet18(mlContext, m.OutputColumn, m
.InputColumn), "Pixels"));
var transformedData = pipeline.Fit(data).Transform(data);
var FeaturizedImageColumnsPerRow = transformedData.GetColumn<float[]>(
"FeaturizedImage").ToArray();
// Preview of FeaturizedImageColumnsPerRow for the first row,
// FeaturizedImageColumnsPerRow[0]
//
// 0.696136236
// 0.2661711
// 0.440882325
// 0.157903448
// 0.0339231342
// 0
// 0.0936501548
// 0.159010679
// 0.394427955
}
}
}