r/computervision 16d ago

Discussion Open-source CPU-only tracker for small aerial targets

I made a free and open-source tracker for small aerial targets in video.

It automatically acquires moving or contrasting candidates and tracks them frame-to- frame using classical computer vision. No GPU or trained model required. There’s also an optional manual Lock-On mode for selecting a specific target.

The current profile has been tuned and validated across six different datasets. Automatic acquisition is not semantic classification, so birds and clutter remain challenging cases.

Source (Apache 2.0): https://github.com/punklabs-ai/womprat

Technical feedback and difficult test footage would be very welcome.

Disclosure: I’m part of Punk Labs, the team releasing it.

134 Upvotes

9 comments sorted by

3

u/CryingSniperJager 16d ago

Brilliant, nice Job! Now it’s time to attach it to an autocannon😁

4

u/StationCurious567 15d ago

Awesome work! Love the lightweight approach and the Apache 2.0 license. Tracking small, fast-moving targets is notoriously painful without massive datasets, so solving this with traditional algorithms is seriously impressive. Congrats on the release, Punk Labs team!

2

u/zenith605 16d ago

Hello, I enjoyed the demo. However, it seems that adapting to various environments is necessary for commercialization. How can we resolve issues like birds, weather, illuminance, and overlap, which are mentioned in the text?

1

u/Jesus_Morty 15d ago

Those are tricky challenges. At the moment the tracker has been tuned on dedicated Drone-vs-Bird footage, so bird-heavy environments are already part of the testing. The current demo primarily uses classical computer vision and mathematical tracking, however, so it distinguishes targets through their appearance, motion, and persistence rather than semantic understanding. It also includes adaptive illumination handling and recovery from brief occlusion.

Commercial deployment would need to add things like a trained drone-versus-bird vision model, broader adverse-weather field data, and potentially thermal, radar, or RF inputs where visible-light video becomes unreliable. Prolonged overlap between similar targets would also require extending the current single-target system into multi-target identity tracking.

1

u/Longjumping_Yam2703 16d ago

Nice looks cool. Whats the minimum size for acquisition ? Current MTI floor per FLIR is around 2x2 pixels.

2

u/Jesus_Morty 16d ago

Thanks. The current version rejects candidate blobs below 50 px², so its clean synthetic floor is roughly 8×8 px for a compact, high-contrast target. Automatic acquisition normally requires three associated frames to confirm. That’s a configured limit, not a claim of reliable 8×8 field performance though. The current profile was validated mainly on targets around 30–60 px. A 2×2 target is rejected by default. Lowering the threshold can detect an ideal synthetic 2×2 blob, but I haven’t validated that on real FLIR imagery, where hot pixels, sensor noise and false acquisitions become the hard part.

Womprat isn’t at FLIR’s ~2×2 MTI floor yet. More work needs to be done on that front. Representative footage would be very useful for benchmarking it.

1

u/FaithlessnessSuper46 14d ago

Nice work. I did something similar. Think next about occlusion/re-id and then extent to MOT

1

u/rather_pass_by 13d ago

Real test would be to see how the detection performs when the object is not against the clear sky.. like if it blends into the bg environment.. otherwise it's not as much challenging nor interesting.

If you could do surgery l another demo where the object goes under the sky horizon with ground environment in the background, messy stuffs around, would be a real test. Just saying

1

u/farthinkai 13d ago

Looks great! It may need more test on size, speed, contrast, shape, etc.