celia // marketplace platform 2.7.0 · hub@bbef4a83

rules / mhe01

MHE01 v1.0.0

MHE01 — collision warning (MHE too close to MHE / person)

description

Collision-warning rule in real-world metres. Each camera is calibrated with a 4-point planar homography (image_points → real_points); bbox reference points are transformed to floor coordinates and pairwise distances checked every frame: MHE↔MHE closer than min_distance_mhe_vs_mhe (default 2.0 m) while BOTH vehicles are moving, or MHE↔person closer than min_distance_mhe_vs_person (default 2.5 m) while the MHE is moving. Persons riding an MHE are excluded as drivers (bbox-overlap history); a vehicle stationary >= 3 s (with brief-movement tolerance) is exempt; near-duplicate boxes are skipped. A pair fires after violent_count consecutive illegal frames, once per pair. Confidence is a Gaussian of the measured distance blended with (1 - IoU). Cross-object rule — pure geometry + homography, no extra model.

use cases

  • forklift-to-pedestrian struck-by prevention in shared warehouse floors
  • MHE convoy distance enforcement in narrow aisles
  • any real-distance proximity requirement between two tracked object classes

limitations

  • needs per-camera homography calibration (4 image points ↔ 4 floor points in metres)
  • distances are floor-plane — raised loads/mezzanines break the planar assumption
  • fire-once per track pair; a new approach by the same pair after track loss re-fires

config parameters

general

ParameterTypeDefaultNotes
min_distance_mhe_vs_mhe * number 2.0 metres (min 0)
min_distance_mhe_vs_person * number 2.5 metres (min 0)
legal_stop_duration_seconds number 3.0 (min 0)

zone

ParameterTypeDefaultNotes
image_points * array of pair of number [] 4 calibration corners in image pixels (exactly 4 points / 2 endpoints; empty until per-camera setup)
real_points * array of pair of number [] matching floor coordinates in metres (exactly 4 points / 2 endpoints; empty until per-camera setup)

advanced

ParameterTypeDefaultNotes
confidence_threshold number 0.5 (min 0, max 1)
min_detections integer 5 (min 1)
violent_count integer 1 (min 1)
stationary_gap_seconds number 1.0 (min 0)
move_distance_threshold number 0.2 (min 0)
same_object_iou number 0.2 (min 0, max 1)
driver_iou_threshold number 0.05 (min 0, max 1)
driver_min_ratio number 0.6 (min 0, max 1)
driver_min_detections integer 3 (min 1)
driver_checking_frames integer 10 (min 1)
evidence_frames integer 50 (min 1)

golden replay cases

CaseFramesExpected events
proximity201