|
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.
|
Value types shared by the motion detector and the tracker (pure C++20, natively tested). More...
#include <array>#include <cstdint>Go to the source code of this file.
Classes | |
| struct | tracking::Box |
| Inclusive cell rectangle. A default-constructed box is empty. More... | |
| struct | tracking::Blob |
| One connected region of foreground cells. More... | |
| struct | tracking::DetectorConfig |
| Motion detector tunables. Defaults are tuned for an indoor scene 1-3 m away. More... | |
| struct | tracking::DetectionResult |
| What the detector found in one frame. Blobs are sorted by area, largest first. More... | |
| struct | tracking::TrackerConfig |
| Tracker tunables (frame counts assume ~17 fps). More... | |
| struct | tracking::TrackState |
| The tracked target. Positions in cells, velocity in cells per frame. id 0 = no target. More... | |
Typedefs | |
| using | tracking::GrayFrame = std::array<uint8_t, kCells> |
| One 40x30 luma frame, row-major (index = y * kGridW + x). | |
Enumerations | |
| enum class | TrackPhase : uint8_t { Idle = 0 , Tentative = 1 , Locked = 2 , Coasting = 3 } |
Functions | |
| const char * | tracking::to_string (TrackPhase phase) |
Variables | |
| constexpr int | tracking::kGridW = 40 |
| constexpr int | tracking::kGridH = 30 |
| constexpr int | tracking::kCells = kGridW * kGridH |
| constexpr int | tracking::kMaxBlobs = 16 |
Value types shared by the motion detector and the tracker (pure C++20, natively tested).
Everything works on a 40x30 gray grid: the camera's QVGA JPEG decoded at 1/8 scale (one DC value per 8x8 block). Coordinates are in grid cells; multiply by 8 for QVGA pixels.