Как использовать модель yolov3 onnx для обнаружения объектов изображения с помощью microsoft.ml (ML.NET 1.4.)
Привет,
у меня есть вопрос о yolov3
когда я использую ML.NET 1.4 для обнаружения объекта изображения
Что я уже пробовал:
я учусь ML.NET образец:https://github.com/dotnet/machinelearning-samples/tree/master/samples/csharp/getting-started/DeepLearning_ObjectDetection_Onnx
и модифицируйте pipline для ввода и вывода yolov3
var pipeline = mlContext.Transforms.LoadImages("input_1", "", nameof(ImageNetData.ImagePath)) .Append(mlContext.Transforms.ResizeImages("input_1", ImageNetSettings.imageWidth, ImageNetSettings.imageHeight, "input_1")) .Append(mlContext.Transforms.ExtractPixels("input_1")) .Append(mlContext.Transforms.ApplyOnnxModel(modelFile: modelLocation, outputColumnNames: new[] { "yolonms_layer_1/ExpandDims_1:0", "yolonms_layer_1/ExpandDims_3:0", "yolonms_layer_1/concat_2:0" }, inputColumnNames: new[] {"input_1"}));
когда я предсказываю данные, я не знаю, как изменить три выходных идентификатора,
потому что этот метод принимает только один входной arg
var scoredData = model.Transform(testData); IEnumerable<float[]> probabilities = scoredData.GetColumn<float[]>("yolonms_layer_1/concat_2:0").ToList();
модель yolov3 onnx скачать с сайта https://github.com/onnx/models
и используйте Netron для получения выходных слоев
пожалуйста, дайте мне некоторые указания, спасибо вам всем большое!