batch: root_dir: /media/jetson/DATA/.Codes/VIDEOS/cycle7/kandang-atas camera_glob: "kandang_*_camera_{num}_*.mp4" output_subdir: output compress_max_mb: 200 delete_intermediate: false checkpoint_every_n_frames: 3000 location: kandang-atas db_path: db/chicken_counts.db defaults: detection: model_path: /media/jetson/DATA/.Codes/chicken-counting-sukawarna-det/chicken-detection-model-v26n-300e-best-2026-05-02-NEW.engine classes: [0] ignored_classes: [1, 2] conf: 0.55 # ↑ 0.35 → fewer false positives, less tracking CPU iou: 0.55 imgsz: 640 device: "0" min_box_area_px: 5000 # ↑ 3000 → filter small false positives validate_while_inside: true detection_zone: enabled: true buffer_above_px: 250 buffer_below_px: 250 show_in_overlay: true tracker: tracker_config_path: /media/jetson/DATA/.Codes/chicken-counting-sukawarna-det/configs/trackers/botsort_chicken.yaml persist: true track_buffer: 75 gate: mode: two_line lines_y: [420, 730] direction: bottom_to_up motion: enabled: true axis: vertical forward_sign: 1.0 ema_alpha: 0.2 reverse_enter_threshold: -1.5 reverse_exit_threshold: -0.5 debounce_frames: 12 min_features: 40 # ↓ 60 → less optical flow computation max_corners: 50 # ↓ 80 → fewer corner features stride_frames: 3 # ↑ 2 → motion detection every 3rd frame flow_scale: 0.5 quality_level: 0.01 min_distance: 8 block_radius: 6 overlay: show_boxes: true show_track_trails: false trail_length: 20 show_center_marker: false # ✗ → save 1 circle per chicken show_track_ring: false count_anchor: [780, 120] inside_box_only: true validated_only: true # NEW → only draw counted chickens pending_blink: true pending_colors: - [255, 255, 0] - [0, 255, 255] display: show_window: false encoder: auto output_bitrate_kbps: 2000 # ↓ 4000 → faster encoding codec_preference: [avc1, mp4v, H264] performance: half: false overlay_buffer_reuse: true inference_stride: 2 stream: enabled: true # required for dashboard live feed shm_dir: /dev/shm interval_frames: 5 feedback: enabled: true every_n_frames: 3000 save_images: false # ✗ → disable checkpoint JPEG I/O spikes log_to_terminal: true roi: inset_left_px: 60 inset_right_px: 60 inset_top_px: 0 inset_bottom_px: 0 min_overlap_ratio: 0.35 # ↑ 0.30 → stricter counting validation cameras: CC1: camera_num: 1 count_anchor: [780, 120] roi: points: - [250, 330] - [1650, 330] - [1650, 720] - [250, 720] CC2: camera_num: 2 count_anchor: [900, 120] detection: # per-camera override: wider angle = smaller bboxes min_box_area_px: 3000 roi: points: - [20, 380] - [1880, 380] - [1880, 720] - [20, 720] CC3: camera_num: 3 count_anchor: [900, 120] roi: points: - [20, 330] - [1880, 330] - [1880, 720] - [20, 720] CC4: camera_num: 4 count_anchor: [700, 120] roi: points: - [50, 330] - [1450, 330] - [1450, 720] - [50, 720]