Skip to content

Commit

Permalink
Cleaning
Browse files Browse the repository at this point in the history
  • Loading branch information
Kees Schollaart committed Dec 22, 2024
1 parent 720b5fc commit 748364f
Show file tree
Hide file tree
Showing 15 changed files with 962 additions and 984 deletions.
14 changes: 6 additions & 8 deletions SortCS.sln
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,12 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
LICENSE = LICENSE
README.md = README.md
.github\workflows\release.yml = .github\workflows\release.yml
sonar-project.properties = sonar-project.properties
EndProjectSection
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SortCS.Tests", "src\SortCS.Tests\SortCS.Tests.csproj", "{13002E85-6B03-49DA-9700-906A24692C98}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{DFA1CD64-077D-456F-B0B0-0568A3A22F1C}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SortCS.Benchmarks", "src\SortCS.Benchmarks\SortCS.Benchmarks.csproj", "{8B4A7059-312F-4912-B2B3-383C25DA94DF}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SortCS.Benchmarks", "src\SortCS.Benchmarks\SortCS.Benchmarks.csproj", "{9A2468E6-4556-4C7C-8D29-996200A10EF3}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Expand All @@ -42,10 +41,10 @@ Global
{13002E85-6B03-49DA-9700-906A24692C98}.Debug|Any CPU.Build.0 = Debug|Any CPU
{13002E85-6B03-49DA-9700-906A24692C98}.Release|Any CPU.ActiveCfg = Release|Any CPU
{13002E85-6B03-49DA-9700-906A24692C98}.Release|Any CPU.Build.0 = Release|Any CPU
{8B4A7059-312F-4912-B2B3-383C25DA94DF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{8B4A7059-312F-4912-B2B3-383C25DA94DF}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8B4A7059-312F-4912-B2B3-383C25DA94DF}.Release|Any CPU.ActiveCfg = Release|Any CPU
{8B4A7059-312F-4912-B2B3-383C25DA94DF}.Release|Any CPU.Build.0 = Release|Any CPU
{9A2468E6-4556-4C7C-8D29-996200A10EF3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{9A2468E6-4556-4C7C-8D29-996200A10EF3}.Debug|Any CPU.Build.0 = Debug|Any CPU
{9A2468E6-4556-4C7C-8D29-996200A10EF3}.Release|Any CPU.ActiveCfg = Release|Any CPU
{9A2468E6-4556-4C7C-8D29-996200A10EF3}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Expand All @@ -54,6 +53,5 @@ Global
SolutionGuid = {8C31716C-280A-44DD-ADAB-E48CEDFBF779}
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{8B4A7059-312F-4912-B2B3-383C25DA94DF} = {DFA1CD64-077D-456F-B0B0-0568A3A22F1C}
EndGlobalSection
EndGlobal
8 changes: 4 additions & 4 deletions analyzers.targets
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,10 @@
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>

<PackageReference Include="StyleCop.Analyzers" Version="1.2.0-beta.333">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<!-- <PackageReference Include="StyleCop.Analyzers" Version="1.2.0-beta.333">-->
<!-- <PrivateAssets>all</PrivateAssets>-->
<!-- <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>-->
<!-- </PackageReference>-->

<PackageReference Include="AsyncFixer" Version="1.5.1">
<PrivateAssets>all</PrivateAssets>
Expand Down
107 changes: 53 additions & 54 deletions src/SortCS.Evaluate/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -8,68 +8,67 @@
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;

namespace SortCS.Evaluate
namespace SortCS.Evaluate;

class Program
{
class Program
{
private static ILogger<Program> _logger;
private static ILogger<Program> _logger;

static async Task<int> Main(string[] args)
static async Task<int> Main(string[] args)
{
var services = new ServiceCollection();
services.AddLogging(loggerBuilder =>
{
var services = new ServiceCollection();
services.AddLogging(loggerBuilder =>
{
loggerBuilder.ClearProviders();
loggerBuilder.AddConsole();
});
var serviceProvider = services.BuildServiceProvider();
loggerBuilder.ClearProviders();
loggerBuilder.AddConsole();
});
var serviceProvider = services.BuildServiceProvider();

_logger = serviceProvider.GetService<ILogger<Program>>();
_logger = serviceProvider.GetService<ILogger<Program>>();

var rootCommand = new RootCommand
{
new Option<DirectoryInfo>(
"--data-folder",
getDefaultValue: () => new DirectoryInfo(@"../../../../../../TrackEval/data"), // Sssuming SortCS/src/SortCS.Evaluate/bin/debug/net5.0 is working directory
description: "Location where data is stored using this format: https://github.com/JonathonLuiten/TrackEval/blob/master/docs/MOTChallenge-format.txt"),
new Option<string>(
"--benchmark",
getDefaultValue: () => "MOT20",
description: "Name of the benchmark, e.g. MOT15, MO16, MOT17 or MOT20 (default : MOT20)"),
new Option<string>(
"--split-to-eval",
getDefaultValue: () => "train",
description: "Data split on which to evalute e.g. train, test (default : train)"),
};
var rootCommand = new RootCommand
{
new Option<DirectoryInfo>(
"--data-folder",
getDefaultValue: () => new DirectoryInfo(@"../../../../../../TrackEval/data"), // Sssuming SortCS/src/SortCS.Evaluate/bin/debug/net5.0 is working directory
description: "Location where data is stored using this format: https://github.com/JonathonLuiten/TrackEval/blob/master/docs/MOTChallenge-format.txt"),
new Option<string>(
"--benchmark",
getDefaultValue: () => "MOT20",
description: "Name of the benchmark, e.g. MOT15, MO16, MOT17 or MOT20 (default : MOT20)"),
new Option<string>(
"--split-to-eval",
getDefaultValue: () => "train",
description: "Data split on which to evalute e.g. train, test (default : train)"),
};

rootCommand.Description = "App to evaluate the SortCS tracking algoritm";
rootCommand.Handler = CommandHandler.Create<DirectoryInfo, string, string>(async (dataFolder, benchmark, splitToEval) =>
rootCommand.Description = "App to evaluate the SortCS tracking algoritm";
rootCommand.Handler = CommandHandler.Create<DirectoryInfo, string, string>(async (dataFolder, benchmark, splitToEval) =>
{
if (!dataFolder.Exists || !dataFolder.GetDirectories().Any())
{
if (!dataFolder.Exists || !dataFolder.GetDirectories().Any())
{
await DownloadTrackEvalExampleAsync(dataFolder);
}
var sortCsEvaluator = new SortCsEvaluator(dataFolder, benchmark, splitToEval, serviceProvider.GetService<ILogger<SortTracker>>());
await sortCsEvaluator.EvaluateAsync();
});
await DownloadTrackEvalExampleAsync(dataFolder);
}
var sortCsEvaluator = new SortCsEvaluator(dataFolder, benchmark, splitToEval, serviceProvider.GetService<ILogger<SortTracker>>());
await sortCsEvaluator.EvaluateAsync();
});

return await rootCommand.InvokeAsync(args);
}
return await rootCommand.InvokeAsync(args);
}

private static async Task DownloadTrackEvalExampleAsync(DirectoryInfo groundTruthFolder)
{
var dataZipUrl = "https://omnomnom.vision.rwth-aachen.de/data/TrackEval/data.zip";
groundTruthFolder.Create();
var targetZipFile = Path.Combine(groundTruthFolder.ToString(), "..", "data.zip");
_logger.LogInformation(Path.GetFullPath(targetZipFile));
private static async Task DownloadTrackEvalExampleAsync(DirectoryInfo groundTruthFolder)
{
var dataZipUrl = "https://omnomnom.vision.rwth-aachen.de/data/TrackEval/data.zip";
groundTruthFolder.Create();
var targetZipFile = Path.Combine(groundTruthFolder.ToString(), "..", "data.zip");
_logger.LogInformation(Path.GetFullPath(targetZipFile));

_logger.LogInformation($"Downloading data.zip (150mb) from {dataZipUrl} to {targetZipFile}");
using var httpClient = new HttpClient();
var zipStream = await httpClient.GetStreamAsync(dataZipUrl);
using var fs = new FileStream(targetZipFile, FileMode.CreateNew);
await zipStream.CopyToAsync(fs);
ZipFile.ExtractToDirectory(targetZipFile, Path.Combine(groundTruthFolder.ToString(), ".."));
_logger.LogInformation("data.zip downloaded & extracted");
}
_logger.LogInformation($"Downloading data.zip (150mb) from {dataZipUrl} to {targetZipFile}");
using var httpClient = new HttpClient();
var zipStream = await httpClient.GetStreamAsync(dataZipUrl);
using var fs = new FileStream(targetZipFile, FileMode.CreateNew);
await zipStream.CopyToAsync(fs);
ZipFile.ExtractToDirectory(targetZipFile, Path.Combine(groundTruthFolder.ToString(), ".."));
_logger.LogInformation("data.zip downloaded & extracted");
}
}
}
Loading

0 comments on commit 748364f

Please sign in to comment.