Node Catalog — Tổng quan
Mọi pipeline được lắp từ Node. Bảng dưới là toàn bộ nhóm node khả dụng trong SDK.
| Nhóm | Số lượng | Vai trò | Chi tiết |
|---|---|---|---|
| Source | 6 | Đưa frame vào pipeline (file, RTSP, RTMP, UDP, image, app) | Source Nodes |
| Inference | 35+ | AI detect/recognize/analyse (YOLO, Face, OCR, Pose, VLM) | Inference Nodes |
| Tracking | 5 | Giữ định danh đối tượng qua frame (SORT, ByteTrack...) | Tracking Nodes |
| Behavior Analysis | 22+ | Luật phân tích hành vi (crossline, crowding, loitering...) | BA Nodes |
| OSD | 1 (18 layers) | Vẽ kết quả lên frame (bbox, label, trail, blur...) | OSD Node |
| Middleware | 6 | Điều khiển luồng (split, sync, skip) | Middleware |
| Destination | 7 | Xuất kết quả (screen, file, RTMP, RTSP, web, app) | Destination Nodes |
| Broker | 13 | Đẩy event ra ngoài (MQTT, Kafka, SSE, webhook) | Broker Nodes |
Quy ước chung
- Mỗi node có tên duy nhất (tham số đầu tiên của constructor).
- Nối pipeline bằng
downstream->attach_to({upstream}). - Header nằm tại
include/cvedix/nodes/<nhóm>/<tên_node>.h.
cpp
#include <cvedix/nodes/src/cvedix_file_src_node.h> // source
#include <cvedix/nodes/infers/cvedix_yolo_detector_node.h> // inference
#include <cvedix/nodes/track/cvedix_sort_track_node.h> // tracking
#include <cvedix/nodes/osd/cvedix_osd_node.h> // osd
#include <cvedix/nodes/des/cvedix_screen_des_node.h> // destination