StrongSort.Net
1.0.0
dotnet add package StrongSort.Net --version 1.0.0
NuGet\Install-Package StrongSort.Net -Version 1.0.0
<PackageReference Include="StrongSort.Net" Version="1.0.0" />
<PackageVersion Include="StrongSort.Net" Version="1.0.0" />
<PackageReference Include="StrongSort.Net" />
paket add StrongSort.Net --version 1.0.0
#r "nuget: StrongSort.Net, 1.0.0"
#:package StrongSort.Net@1.0.0
#addin nuget:?package=StrongSort.Net&version=1.0.0
#tool nuget:?package=StrongSort.Net&version=1.0.0
StrongSort.Net
Pure C# implementation of StrongSORT ("StrongSORT: Make DeepSORT Great Again") — a multi-object tracker combining an NSA Kalman filter, EMA-smoothed appearance embeddings and Hungarian assignment. No native or ML dependencies: bring your own detector and (optionally) ReID embeddings.
This is an independent, clean-room implementation written from the published algorithm; it is not affiliated with the original authors.
Install
dotnet add package StrongSort.Net
Usage
using StrongSort;
var tracker = new StrongSortTracker(new StrongSortOptions
{
MaxAppearanceDistance = 0.5f,
MaxAge = 300,
});
foreach (var frame in video)
{
var observations = detector.Detect(frame)
.Select(d => new Observation(d.Left, d.Top, d.Width, d.Height, d.Confidence,
Feature: reid.Embed(frame, d), Tag: d.Id));
IReadOnlyList<TrackResult> tracks = tracker.Update(observations.ToList());
// tracks: stable TrackId, Kalman-smoothed BboxLtwh, Tag of the matched observation
}
- Works without embeddings too (
Feature: null) — matching then falls back to the IoU stage. Tagis an arbitrary payload (e.g. your detection id) returned on the matched track.- Defaults follow the SoccerNet game-state baseline; original paper defaults are documented
on
StrongSortOptions.
Build & test
dotnet build StrongSort.slnx -c Release
dotnet test StrongSort.slnx -c Release
Targets net8.0 and net10.0.
License & attribution
MIT — see LICENSE. The StrongSORT and DeepSORT algorithm references, and a note on the clean-room nature of this port, are in NOTICE.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- No dependencies.
-
net8.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.0 | 107 | 7/19/2026 |