mirror of
https://github.com/azaion/detections.git
synced 2026-04-22 21:46:31 +00:00
2.5 KiB
2.5 KiB
Module: ai_config
Purpose
Data class holding all AI recognition configuration parameters, with factory methods for deserialization from msgpack and dict formats.
Public Interface
Class: AIRecognitionConfig
Fields
| Field | Type | Default | Description |
|---|---|---|---|
frame_period_recognition |
int | 4 | Process every Nth frame in video |
frame_recognition_seconds |
double | 2.0 | Minimum seconds between valid video annotations |
probability_threshold |
double | 0.25 | Minimum detection confidence |
tracking_distance_confidence |
double | 0.0 | Distance threshold for tracking (model-width units) |
tracking_probability_increase |
double | 0.0 | Required confidence increase for tracking update |
tracking_intersection_threshold |
double | 0.6 | IoU threshold for overlapping detection removal |
file_data |
bytes | b'' |
Raw file data (msgpack use) |
paths |
list[str] | [] |
Media file paths to process |
model_batch_size |
int | 1 | Batch size for inference |
big_image_tile_overlap_percent |
int | 20 | Tile overlap percentage for large image splitting |
altitude |
double | 400 | Camera altitude in meters |
focal_length |
double | 24 | Camera focal length in mm |
sensor_width |
double | 23.5 | Camera sensor width in mm |
Methods
| Method | Signature | Description |
|---|---|---|
from_msgpack |
(bytes data) -> AIRecognitionConfig |
Static cdef; deserializes from msgpack binary |
from_dict |
(dict data) -> AIRecognitionConfig |
Static def; deserializes from Python dict |
Internal Logic
Both factory methods apply defaults for missing keys. from_msgpack uses compact single-character keys (f_pr, pt, t_dc, etc.) while from_dict uses full descriptive keys.
Legacy/unused: from_msgpack() is defined but never called in the current codebase — it is a remnant of a previous queue-based architecture. Only from_dict() is actively used. The file_data field is stored but never read anywhere.
Dependencies
- External:
msgpack - Internal: none (leaf module)
Consumers
inference— creates config from dict, uses all fields for frame selection, detection filtering, image tiling, and tracking
Data Models
AIRecognitionConfig— the sole data class
Configuration
Camera/altitude parameters (altitude, focal_length, sensor_width) are used for ground sampling distance calculation in aerial image processing.
External Integrations
None.
Security
None.
Tests
None found.