1. Detection (What to watch)

Configure the sources the detector should monitor.

  • source RTSP/HTTP stream URL or local video path. Use a list [ ] for multiple sources.
  • interval Seconds to wait between processed frames (default 0). Useful to reduce load on slow machines.
  • frame_retention How many recent frames to keep in memory per source (default 30) for context.

2. YOLO (Object Detection)

The fast first-pass AI that scans every frame. Without YOLO, all frames simply pass through.

  • model URL or local path to a YOLO model file (.pt or .onnx).
  • confidence Confidence required (0-1). Can also be a per-class threshold, e.g., undefined.
  • time_max Maximum duration in seconds to group frames into one event (default 60).
  • timeout Seconds of no detections before the event is considered over (default 5).
  • cooldown Seconds to wait before starting a new event. Prevents repeat alerts. Can be per class.
  • include_trailing_time Seconds of extra footage to include after the last detection (default 1).
  • frames_min How many frames in a row must match before counting (default 6, or 3 depending on GPU).
  • imgsz Image size fed into the model. Higher is more accurate but slower (default 640).
  • strategy Which frames to evaluate: "LATEST" (most recent only) or "ALL".

3. VLM (AI Double-Check - Optional)

A Vision Language Model checks the footage after a YOLO detection. Greatly reduces false alarms.

  • prompt The question to ask, e.g., 'Is there a person in this video?'.
  • model The AI model (e.g., 'gemini/gemini-2.0-flash'). Supports LiteLLM providers.
  • key API key for the chosen model provider.
  • url Custom API endpoint, useful for local models.
  • strategy "VIDEO" sends a clip to the AI. "IMAGE" sends a single frame (cheaper but less accurate).

4. Exporters (Alerts & Storage)

Configure where confirmed detections should be sent.

Disk (Opslag)

  • directory Folder path under 'detections/' to save files into. Otherwise uses the class name.
  • strategy "BEST" saves only the highest-confidence frame. "ALL" saves every frame.
  • confidence Minimum confidence required to save.
  • export_rejected Whether to also save detections rejected by the VLM (default true).

Telegram

  • token Your Telegram bot token.
  • chat The Telegram chat or user ID.
  • confidence Minimum confidence required to send.
  • alert_every Only send an alert every Nth detection (1 = every time, 5 = every 5th).
  • include_plot Include the full frame with a detection box drawn on it (default false).
  • include_crop Include a cropped image of just the detected object (default false).
  • include_video Include an MP4 clip of the detection sequence (default true).
  • video_width Width of the video clip in pixels (default 1280).
  • video_crf Video quality (0-51). Lower = better quality, default 28.
  • export_rejected Whether to also send detections rejected by the VLM (default false).

Webhook

  • url The URL to POST to when a detection occurs.
  • token Authorization token sent in the request headers.
  • confidence Minimum confidence required to trigger.
  • data_type How image/video data is encoded in the payload: "binary" or "base64".
  • data_max Maximum payload size in bytes. Images are compressed if they exceed this.
  • include_plot Include the full frame with detection overlay (default false).
  • include_crop Include a cropped image of the detected area (default true).
  • include_video Include an MP4 clip of the detection sequence (default false).
  • video_width Width of the video clip in pixels (default 1280).
  • video_crf Video quality (0-51). Lower = better quality, default 28.
  • export_rejected Whether to also POST detections rejected by the VLM (default false).

5. Health (Ping Monitor)

Sends a simple periodic HTTP request to verify the process is still alive.

  • url The URL to ping.
  • method HTTP method: GET, POST, PUT, PATCH, DELETE, or HEAD (default GET).
  • interval Seconds between pings (default 60).
  • timeout Request timeout in seconds (default 5).
  • headers Optional HTTP headers map.
  • body Optional request body sent as raw text.

6. ONNX Runtime

Controls how ONNX Runtime configures before loading a YOLO model.

  • provider Optional provider name to force (e.g., "CUDAExecutionProvider").
  • winml For Windows ML build only. Tries to register ML execution providers (default true).
  • opset ONNX opset used when exporting. Lower values can improve compatibility (default 20).

Bekijk de volledige documentatie, voorbeeldconfiguraties en de Docker setup op onze officiële GitHub pagina.

Bekijk op GitHub