|
Void Sentry
An AI-driven, real-time Sentry Turret platform leveraging asynchronous I/O and computer vision to deliver high-precision autonomous motion tracking on resource-constrained embedded hardware.
|
Motion detector tunables. Defaults are tuned for an indoor scene 1-3 m away. More...
#include <tracking_types.h>
Public Attributes | |
| int | diff_threshold = 20 |
| |gray - background| above this is foreground | |
| int | bg_shift = 4 |
| background cells learn 1/2^bg_shift of the difference per frame (1/16) | |
| int | fg_shift = 7 |
| foreground cells learn 1/2^fg_shift (1/128): no trails, slow absorption | |
| int | fg_age_limit = 34 |
| float | scene_change_fraction = 0.35f |
| raw foreground above this fraction of the grid (+ mean shift) | |
| int | scene_change_mean_shift = 25 |
| int | warmup_frames = 17 |
| int | min_blob_cells = 2 |
| smaller blobs are dropped (rejects isolated noise cells) | |
| int | max_blobs = kMaxBlobs |
| keep at most this many, largest first (clamped to kMaxBlobs) | |
Motion detector tunables. Defaults are tuned for an indoor scene 1-3 m away.
| int tracking::DetectorConfig::fg_age_limit = 34 |
after this many consecutive foreground frames (~2 s) a cell learns at bg_shift again, so ghosts of a wrong background clear quickly
| int tracking::DetectorConfig::scene_change_mean_shift = 25 |
...and only if |frame mean - background mean| also exceeds this (gray levels); a big close object barely moves the mean (auto-exposure)
| int tracking::DetectorConfig::warmup_frames = 17 |
frames (~1 s) after a (re)seed with no blobs; the background copies the frame each of them, so exposure settling and lamp afterglow are absorbed