C# 如何将多个图像文件夹加载到管道中?

C# 如何将多个图像文件夹加载到管道中?,c#,machine-learning,microsoft.ml,C#,Machine Learning,Microsoft.ml,我是ML的新手 我开始使用sample来了解它是如何工作的 我正在尝试加载多个图像文件夹。例如,包含学习数据的cars、CAT文件夹。 我知道我需要将新文件夹加载到管道中,现在我不知道如何实现它 你有什么建议吗 // <SnippetImageTransforms> IEstimator<ITransformer> pipeline = mlContext.Transforms.LoadImages(outputColumnName: "input", im

我是ML的新手

我开始使用sample来了解它是如何工作的

我正在尝试加载多个图像文件夹。例如,包含学习数据的cars、CAT文件夹。 我知道我需要将新文件夹加载到管道中,现在我不知道如何实现它

你有什么建议吗

   // <SnippetImageTransforms>
    IEstimator<ITransformer> pipeline = mlContext.Transforms.LoadImages(outputColumnName: "input", imageFolder: _imagesFolder, inputColumnName: nameof(ImageData.ImagePath))
                    // The image transforms transform the images into the model's expected format.
                    .Append(mlContext.Transforms.ResizeImages(outputColumnName: "input", imageWidth: InceptionSettings.ImageWidth, imageHeight: InceptionSettings.ImageHeight, inputColumnName: "input"))
                    .Append(mlContext.Transforms.ExtractPixels(outputColumnName: "input", interleavePixelColors: InceptionSettings.ChannelsLast, offsetImage: InceptionSettings.Mean))
                    // </SnippetImageTransforms>
                    // The ScoreTensorFlowModel transform scores the TensorFlow model and allows communication 
                    // <SnippetScoreTensorFlowModel>
                    .Append(mlContext.Model.LoadTensorFlowModel(_inceptionTensorFlowModel).
                        ScoreTensorFlowModel(outputColumnNames: new[] { "softmax2_pre_activation" }, inputColumnNames: new[] { "input" }, addBatchDimensionInput: true))
                    // </SnippetScoreTensorFlowModel>
                    // <SnippetMapValueToKey>
                    .Append(mlContext.Transforms.Conversion.MapValueToKey(outputColumnName: "LabelKey", inputColumnName: "Label"))
                    // </SnippetMapValueToKey>
                    // <SnippetAddTrainer>
                    .Append(mlContext.MulticlassClassification.Trainers.LbfgsMaximumEntropy(labelColumnName: "LabelKey", featureColumnName: "softmax2_pre_activation"))
                    // </SnippetAddTrainer>
                    // <SnippetMapKeyToValue>
                    .Append(mlContext.Transforms.Conversion.MapKeyToValue("PredictedLabelValue", "PredictedLabel"))
                    .AppendCacheCheckpoint(mlContext);
    // </SnippetMapKeyToValue>

    // <SnippetLoadData>
    IDataView trainingData = mlContext.Data.LoadFromTextFile<ImageData>(path:  _trainTagsTsv, hasHeader: false);
    // </SnippetLoadData>

    // Train the model
    Console.WriteLine("=============== Training classification model ===============");
    // Create and train the model
    // <SnippetTrainModel>
    ITransformer model = pipeline.Fit(trainingData);
    // </SnippetTrainModel>

    // Generate predictions from the test data, to be evaluated
    // <SnippetLoadAndTransformTestData>
    IDataView testData = mlContext.Data.LoadFromTextFile<ImageData>(path: _testTagsTsv, hasHeader: false);
    IDataView predictions = model.Transform(testData);

    // Create an IEnumerable for the predictions for displaying results
    IEnumerable<ImagePrediction> imagePredictionData = mlContext.Data.CreateEnumerable<ImagePrediction>(predictions, true);
    DisplayResults(imagePredictionData);
    // </SnippetLoadAndTransformTestData>
//
IEstimator pipeline=mlContext.Transforms.LoadImages(outputColumnName:“输入”,imageFolder:_imagesFolder,inputColumnName:nameof(ImageData.ImagePath))
//图像变换将图像转换为模型的预期格式。
.Append(mlContext.Transforms.ResizeImages(outputColumnName:“输入”,imageWidth:InceptionSettings.imageWidth,imageHeight:InceptionSettings.imageHeight,inputColumnName:“输入”))
.Append(mlContext.Transforms.ExtractPixels(outputColumnName:“input”,交错像素颜色:InceptionSettings.ChannelsLast,offsetImage:InceptionSettings.Mean))
// 
//ScoreTensorFlowModel转换为TensorFlow模型打分并允许通信
// 
.Append(mlContext.Model.LoadTensorFlowModel(\u inceptionTensorFlowModel)。
ScoreTensorFlowModel(outputColumnNames:new[]{“softmax2_pre_activation”},inputColumnNames:new[]{“input”},addBatchDimensionInput:true))
// 
// 
.Append(mlContext.Transforms.Conversion.MapValueToKey(outputColumnName:“LabelKey”,inputColumnName:“Label”))
// 
// 
.Append(mlContext.MulticlassClassification.Trainers.lbfgsMaximumEntry(labelColumnName:“LabelKey”,featureColumnName:“softmax2预激活”))
// 
// 
.Append(mlContext.Transforms.Conversion.MapKeyToValue(“PredictedLabelValue”、“PredictedLabel”))
.AppendCacheCheckpoint(mlContext);
// 
// 
IDataView trainingData=mlContext.Data.LoadFromTextFile(路径:_trainTagsTsv,hashheader:false);
// 
//训练模型
Console.WriteLine(“=========================训练分类模型=======================”);
//创建并训练模型
// 
ITransformer模型=pipeline.Fit(训练数据);
// 
//根据要评估的测试数据生成预测
// 
IDataView testData=mlContext.Data.LoadFromTextFile(路径:_testTagsTsv,hashreader:false);
IDataView预测=model.Transform(testData);
//为预测创建IEnumerable以显示结果
IEnumerable imagePredictionData=mlContext.Data.CreateEnumerable(预测,true);
显示结果(imagePredictionData);
// 

是关于
Microsoft.ML
框架的吗?是的。添加了标签