Skip to content

R-1: Follow the coasted LOST target briefly while it's still moving#148

Merged
TCVinNYC merged 1 commit into
mainfrom
feat/r1-coast-follow
Jul 3, 2026
Merged

R-1: Follow the coasted LOST target briefly while it's still moving#148
TCVinNYC merged 1 commit into
mainfrom
feat/r1-coast-follow

Conversation

@TCVinNYC

@TCVinNYC TCVinNYC commented Jul 3, 2026

Copy link
Copy Markdown
Member

Reopens #143 (auto-closed when its stacked base merged as #142); identical change, rebased onto main — now just the R-1 commit.

Summary

Worker-side half of predictive tracking (tracker-side coast merged in #142):

  • _maybe_track publishes the locked target's LOST track (coasted bbox + decayed velocity); all other LOST tracks stay filtered.
  • _drive_ptz_auto follows a lost target iff hypot(vx, vy) >= 1.0 px/frame (_COAST_FOLLOW_MIN_V, module constant). Velocity decay makes it self-limiting: a mover is followed ≲1 s through occlusion then falls back to hold→coast→search; a stationary occluded subject is never followed.
  • Exactly one TrackInfo carries the target id during coast (no held-duplicate) — test-pinned.

Evidence

🤖 Generated with Claude Code

Publish the locked target's coasted LOST track (instead of filtering
it out) and let _drive_ptz_auto chase it while |coast velocity| >=
_COAST_FOLLOW_MIN_V (1.0 px/frame). The tracker's velocity decay makes
this self-limiting: a mover is followed for ~1s of coast then falls
back to hold->coast->search; a stationary loss (v~=0) is never
followed, matching today's behavior.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@TCVinNYC TCVinNYC merged commit 8f7c5cb into main Jul 3, 2026
3 checks passed
@TCVinNYC TCVinNYC deleted the feat/r1-coast-follow branch July 3, 2026 20:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant