dme-compunet/YoloV8

Inconsistent model results

monkeycc opened this issue · 2 comments

    static async Task DetectDemo(string image, string outputDirectory, YoloV8 predictor)
    {
        Console.WriteLine();
        Console.WriteLine("================ DETECTION DEMO ================");
        Console.WriteLine();

        Console.WriteLine($"Processing image: {image}");


        Console.WriteLine("Working...");
        using var origin = Image.Load(image);
        using var resizedImage = origin.Clone(ctx => ctx.Resize(new ResizeOptions
        {
            Size = new Size(1280, 1280),
            Mode = ResizeMode.Max
        }));

        Console.WriteLine("Working...");
        var result = await predictor.DetectAsync(resizedImage);

        Console.WriteLine();
        Console.WriteLine($"Result: {result}");
        Console.WriteLine($"Speed: {result.Speed}");
        Console.WriteLine();

        Console.WriteLine("Plotting and saving...");
        // using var origin = Image.Load(image);
        using var plotted = await result.PlotImageAsync(resizedImage);

        var pathToSave = Path.Combine(outputDirectory, Path.GetFileName(image));
        plotted.Save(pathToSave);
    }

Inconsistent model results

Python inference
C # Inference

Two different results
C # is missing

The same goes for scaling images
What should I do ?