description
Intersection-speed rule for material handling equipment. Maintains a per-track speed history (bottom-center pixel displacement per frame); when the vehicle's recent motion segment crosses a configured intersection line, the last ~1 second of speed samples is analysed in 5-sample chunks: the rule fires when the mean approach speed exceeds medium_speed (px/frame) AND the slowest chunk is one of the last two (deceleration right at the line — the legacy "came in hot, braked at the crossing" pattern). Fire-once per track. Confidence blends mean detection confidence, speed consistency (1 - coefficient of variation of chunk sums) and a Gaussian of the minimum chunk around ideal_speed. Speeds are raw pixels/frame — thresholds are per-camera tuning values (legacy semantics, not metres/second).
use cases
- forklift speed compliance at aisle intersections and blind corners
- gate/doorway approach-speed enforcement for MHEs
- template for line-crossing + kinematics rules (any class + any line set via config)
limitations
- speed is pixel-based — thresholds must be re-tuned per camera position/zoom
- the deceleration heuristic also fires on legitimate hard braking at the line
- short lookback segment (5 frames) can miss very slow crossings
config parameters
general
| Parameter | Type | Default | Notes |
|---|---|---|---|
| medium_speed * | number | 40 | px/frame mean-speed gate (min 0) |
zone
| Parameter | Type | Default | Notes |
|---|---|---|---|
| intersection * | array of pair of array of number | [] | line segments [[x1,y1],[x2,y2]] marking intersections |
advanced
| Parameter | Type | Default | Notes |
|---|---|---|---|
| confidence_threshold | number | 0.5 | (min 0, max 1) |
| min_detection | integer | 10 | (min 2) |
| speed_window | integer | 25 | (min 5) |
| min_speed_samples | integer | 12 | (min 2) |
| chunk_size | integer | 5 | (min 1) |
| track_line_lookback | integer | 5 | (min 1) |
| ideal_speed | number | 70 | |
| ideal_speed_sigma | number | 10 | |
| event_confidence_alpha | number | 0.2 | |
| event_confidence_beta | number | 0.4 | |
| event_confidence_gamma | number | 0.4 | |
| evidence_frames | integer | 50 | (min 1) |
golden replay cases
| Case | Frames | Expected events |
|---|---|---|
| fast-at-intersection | 14 | 1 |