HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
holma91
selective-mask-propagation
Python2026–2026
holma91 / selective-mask-propagation

selective-mask-propagation

Discover this repository through its Hacker News conversations.

2Distinct people
2Mentions
0Explicit recommenders
12GitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

A public description has not been verified.

Where it is used

No documented product use has been verified yet.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 3:56:07 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by hour2 dated mentions

Observed mentions: 2026-07-14 13:30:40 UTC to 2026-07-14 13:51:19 UTC.

0122026-07-14 13:00:00 UTC to 2026-07-14 14:00:00 UTC (exclusive): 2 mentions; 1 submissions, 1 commentsJul 14, 13:00

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC. One observed period does not establish a trend.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
Jul 14, 13:002026-07-14 13:00:00 UTC2026-07-14 14:00:00 UTC211

What Hacker News says

2 sources
lapuerta·Jul 14, 2026Submission

Show HN: Run SAM only when your tracker is uncertain – #1 on SportsMOT

This started when I saw a Roboflow tutorial tracking basketball players by giving every player's box to SAM2 and propagating masks through the whole clip (https://www.youtube.com/watch?v=yGQb9KkvQ1Q). Identity preservation worked way better than any dedicated tracker I'd used before but it only ran at 1–2 fps, where both speed and memory was scaling with player count. Most frames don't need SAM at all though. A normal tracking-by-detection tracker matches boxes frame to frame by solving an assignment problem on a cost matrix, and for most of a game that matching is completely trivial. It breaks down when players get close and two assignments look almost equally good, which you can see in the cost matrix because best and second-best assignment are equal or close to equal. I define that as the assignment margin, and this margin acts as a si
Read the rest
gnal/cue for using SAM. So the system runs a lightweight tracker (Deep-EIoU, but could use any tracker with a cost matrix e.g SORT or ByteTrack) on every frame and only brings in SAM 3 when a margin collapses. SAM gets seeded a few frames earlier, on a recent frame where the player was still clearly separated, propagates the mask through the crossing, and once things calm down we check which box the mask ended up in. If it settled into a different track than it was seeded on, the tracker swapped identities somewhere in the pile and we rename them. There's no training anywhere, and both the tracker and SAM are used as black boxes. When I swapped SAM 2 for SAM 3 the whole system improved without touching anything else. It's currently #1 on SportsMOT with 87.2 HOTA. Code: https://github.com/holma91/selective-mask-propagation, paper: https://arxiv.org/abs/2606.13033, leaderboard: https://www.codabench.org/competitions/13077/#/results-tab. Happy to answer questions!
2 points · Open discussion
This started when I saw a Roboflow tutorial tracking basketball players by giving every player's box to SAM2 and propagating masks through the whole clip (https://www.youtube.com/watch?v=yGQb9KkvQ1Q). Identity preservation worked way better than any dedicated tracker I'd used before but it only ran at 1–2 fps, where both speed and memory was scaling with player count. Most frames don't need SAM at all though. A normal tracking-by-detection tracker matches boxes frame to frame by solving an assignment problem on a cost matrix, and for most of a game that matching is completely trivial. It breaks down when players get close and two assignments look almost equally good, which you can see in the cost matrix because best and second-best assignment are equal or close to equal. I define that as the assignment margin, and this margin acts as a si
Read the rest
gnal/cue for using SAM. So the system runs a lightweight tracker (Deep-EIoU, but could use any tracker with a cost matrix e.g SORT or ByteTrack) on every frame and only brings in SAM 3 when a margin collapses. SAM gets seeded a few frames earlier, on a recent frame where the player was still clearly separated, propagates the mask through the crossing, and once things calm down we check which box the mask ended up in. If it settled into a different track than it was seeded on, the tracker swapped identities somewhere in the pile and we rename them. There's no training anywhere, and both the tracker and SAM are used as black boxes. When I swapped SAM 2 for SAM 3 the whole system improved without touching anything else. It's currently #1 on SportsMOT with 87.2 HOTA. Code: https://github.com/holma91/selective-mask-propagation, paper: https://arxiv.org/abs/2606.13033, leaderboard: https://www.codabench.org/competitions/13077/#/results-tab. Happy to answer questions!
In [dead]

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.