{"active_scenarios": ["falldown_detected", "no_hardhat_persistent"], "analysis_config": {"flush_interval_seconds": 15.0, "include_event_records": true, "max_buffer_records": 32, "summary_interval_frames": 120, "summary_only": true}, "cctv_id": "16", "created_at": "2026-05-06T15:34:45", "instance_id": "4ba38716", "record_type": "session_start", "source_url": "rtsp://admin:smart1357%21@223.171.148.6:554/Streaming/Channels/101"}
{"anchor_point": null, "cctv_id": "16", "created_at": "2026-05-06T15:34:51", "detail": {}, "event_id": null, "event_message": "안전모 미착용", "event_status": null, "event_type": "no_hardhat_persistent", "frame_idx": 29, "frame_time": "2026-05-06 15:34:51", "instance_id": "4ba38716", "last_assignment_source": "real_match", "meta": {"gear_name": "안전모", "matched_cover": 1.0, "min_cover": 0.35, "stable_frames": 29, "track_kind": "real", "violation_category": "안전모 미착용", "worker_identity_key": ["no_hardhat_persistent", "track_id", "4"]}, "persist_event": true, "record_type": "scenario_event", "scene_scale_profile": "mixed", "stable_frames": 29, "track_id": 4, "track_kind": "real", "zone_id": null, "zone_name": null}
{"cctv_id": "16", "created_at": "2026-05-06T15:35:04", "instance_id": "4ba38716", "payload": {"active_detection_counts": {"굴착기": 1, "작업자": 1, "중장비": 1}, "analysis_flags": {"summary_due": true}, "frame_counters": {"assigned_from_manual_pool": 1, "real_match_assigned": 2, "reconciled_to_real": 1, "tracker_online_targets": 2, "tracker_update_calls": 1, "unmatched_objects": 1}, "frame_idx": 120, "lifetime_counters": {"assigned_from_manual_pool": 62, "fall_candidate_accepted_prev_track": 4, "fall_candidate_no_prev_worker_context": 5, "fall_candidate_rejected_duplicate_base": 10, "fall_candidate_rejected_no_support": 5, "fall_candidate_seen": 19, "pseudo_created": 14, "pseudo_promoted_to_manual": 6, "pseudo_reused": 10, "real_match_assigned": 333, "reconciled_to_real": 68, "tracker_online_targets": 333, "tracker_removed_tracks": 1, "tracker_update_calls": 120, "unmatched_objects": 92}, "scenario_analysis": {"_execution": {"_resolved_scenarios": ["falldown_detected", "no_hardhat_persistent"], "falldown_detected": {"returned_event_count": 0, "status": "returned_events"}, "no_hardhat_persistent": {"returned_event_count": 0, "status": "returned_events"}}, "no_hardhat_persistent": {"active_violation_count": 0, "current_violation_count": 0, "recovered_violation_count": 0, "recovery_grace_seconds": 2.0}}, "scene_metrics": {"굴착기": {"bbox_area_ratio_median": 0.523073, "bbox_height_ratio_median": 0.775, "bbox_height_ratio_p75": 0.777083, "bbox_width_ratio_median": 0.713672, "frame_presence_count": 120, "label_counts": {"excavator": 159}, "object_sample_count": 159}, "안전모 미착용": {"bbox_area_ratio_median": 0.001742, "bbox_height_ratio_median": 0.059028, "bbox_height_ratio_p75": 0.059469, "bbox_width_ratio_median": 0.029492, "frame_presence_count": 33, "label_counts": {"no_helmet": 33}, "object_sample_count": 33}, "작업자": {"bbox_area_ratio_median": 0.008545, "bbox_height_ratio_median": 0.180556, "bbox_height_ratio_p75": 0.189583, "bbox_width_ratio_median": 0.048633, "frame_presence_count": 110, "label_counts": {"person": 107, "small_worker": 2, "worker": 4}, "object_sample_count": 113}, "중장비": {"bbox_area_ratio_median": 0.024293, "bbox_height_ratio_median": 0.335069, "bbox_height_ratio_p75": 0.336111, "bbox_width_ratio_median": 0.073047, "frame_presence_count": 120, "label_counts": {"crane_mobile": 120}, "object_sample_count": 120}}, "scene_scale_metrics": {"sample_count": 113, "worker_height_ratio_median": 0.180556, "worker_small_worker_ratio": 0.017699}, "scene_scale_profile": "mixed", "track_kind_counts": {"manual": 1, "pseudo": 0, "real": 2}}, "record_type": "tracking_summary"}
{"anchor_point": null, "cctv_id": "16", "created_at": "2026-05-06T15:35:09", "detail": {}, "event_id": null, "event_message": "안전모 미착용", "event_status": null, "event_type": "no_hardhat_persistent", "frame_idx": 154, "frame_time": "2026-05-06 15:35:09", "instance_id": "4ba38716", "last_assignment_source": "reconciled_to_real", "meta": {"gear_name": "안전모", "matched_cover": 0.9429188436084988, "min_cover": 0.35, "stable_frames": 1, "track_kind": "manual", "violation_category": "안전모 미착용", "worker_identity_key": ["no_hardhat_persistent", "track_id", "1000006"]}, "persist_event": true, "record_type": "scenario_event", "scene_scale_profile": "mixed", "stable_frames": 1, "track_id": 1000006, "track_kind": "manual", "zone_id": null, "zone_name": null}
{"anchor_point": null, "cctv_id": "16", "created_at": "2026-05-06T15:35:13", "detail": {}, "event_id": null, "event_message": "안전모 미착용", "event_status": null, "event_type": "no_hardhat_persistent", "frame_idx": 184, "frame_time": "2026-05-06 15:35:13", "instance_id": "4ba38716", "last_assignment_source": "reconciled_to_real", "meta": {"gear_name": "안전모", "matched_cover": 0.625, "min_cover": 0.35, "stable_frames": 13, "track_kind": "manual", "violation_category": "안전모 미착용", "worker_identity_key": ["no_hardhat_persistent", "track_id", "1000009"]}, "persist_event": true, "record_type": "scenario_event", "scene_scale_profile": "mixed", "stable_frames": 13, "track_id": 1000009, "track_kind": "manual", "zone_id": null, "zone_name": null}
{"anchor_point": null, "cctv_id": "16", "created_at": "2026-05-06T15:35:14", "detail": {}, "event_id": null, "event_message": "안전모 미착용", "event_status": null, "event_type": "no_hardhat_persistent", "frame_idx": 191, "frame_time": "2026-05-06 15:35:14", "instance_id": "4ba38716", "last_assignment_source": "real_match", "meta": {"gear_name": "안전모", "matched_cover": 1.0, "min_cover": 0.35, "stable_frames": 12, "track_kind": "real", "violation_category": "안전모 미착용", "worker_identity_key": ["no_hardhat_persistent", "track_id", "9"]}, "persist_event": true, "record_type": "scenario_event", "scene_scale_profile": "mixed", "stable_frames": 12, "track_id": 9, "track_kind": "real", "zone_id": null, "zone_name": null}
{"cctv_id": "16", "created_at": "2026-05-06T15:35:21", "instance_id": "4ba38716", "payload": {"active_detection_counts": {"굴착기": 1, "안전모 미착용": 1}, "analysis_flags": {"summary_due": true}, "frame_counters": {"assigned_from_manual_pool": 2, "reconciled_to_real": 2, "tracker_update_calls": 1, "unmatched_objects": 2}, "frame_idx": 240, "lifetime_counters": {"assigned_from_manual_pool": 280, "assigned_from_recent_track": 2, "fall_candidate_accepted_prev_track": 4, "fall_candidate_no_prev_worker_context": 5, "fall_candidate_rejected_duplicate_base": 52, "fall_candidate_rejected_no_support": 5, "fall_candidate_seen": 61, "pseudo_created": 48, "pseudo_promoted_to_manual": 15, "pseudo_promoted_to_real": 2, "pseudo_reused": 27, "real_match_assigned": 486, "reconciled_to_real": 283, "tracker_online_targets": 486, "tracker_removed_tracks": 6, "tracker_update_calls": 240, "unmatched_objects": 374}, "scenario_analysis": {"_execution": {"_resolved_scenarios": ["falldown_detected", "no_hardhat_persistent"], "falldown_detected": {"returned_event_count": 0, "status": "returned_events"}, "no_hardhat_persistent": {"returned_event_count": 0, "status": "returned_events"}}, "no_hardhat_persistent": {"active_violation_count": 0, "current_violation_count": 0, "recovered_violation_count": 0, "recovery_grace_seconds": 2.0}}, "scene_metrics": {"굴착기": {"bbox_area_ratio_median": 0.442391, "bbox_height_ratio_median": 0.780556, "bbox_height_ratio_p75": 0.781944, "bbox_width_ratio_median": 0.566016, "frame_presence_count": 120, "label_counts": {"excavator": 180}, "object_sample_count": 180}, "안전모 미착용": {"bbox_area_ratio_median": 0.001998, "bbox_height_ratio_median": 0.061458, "bbox_height_ratio_p75": 0.086458, "bbox_width_ratio_median": 0.032275, "frame_presence_count": 62, "label_counts": {"no_helmet": 74}, "object_sample_count": 74}, "작업자": {"bbox_area_ratio_median": 0.041442, "bbox_height_ratio_median": 0.416493, "bbox_height_ratio_p75": 0.685417, "bbox_width_ratio_median": 0.091602, "frame_presence_count": 108, "label_counts": {"person": 166, "small_worker": 2}, "object_sample_count": 168}, "중장비": {"bbox_area_ratio_median": 0.021585, "bbox_height_ratio_median": 0.333854, "bbox_height_ratio_p75": 0.334375, "bbox_width_ratio_median": 0.064453, "frame_presence_count": 13, "label_counts": {"crane_mobile": 12, "tower_crane": 1}, "object_sample_count": 13}}, "scene_scale_metrics": {"sample_count": 281, "worker_height_ratio_median": 0.236111, "worker_small_worker_ratio": 0.014235}, "scene_scale_profile": "mixed", "track_kind_counts": {"manual": 2, "pseudo": 0, "real": 0}}, "record_type": "tracking_summary"}
{"cctv_id": "16", "created_at": "2026-05-06T15:35:36", "instance_id": "4ba38716", "payload": {"active_detection_counts": {"굴착기": 1, "안전모 미착용": 1}, "analysis_flags": {"summary_due": true}, "frame_counters": {"assigned_from_manual_pool": 2, "reconciled_to_real": 2, "tracker_update_calls": 1, "unmatched_objects": 2}, "frame_idx": 360, "lifetime_counters": {"assigned_from_manual_pool": 520, "assigned_from_recent_track": 2, "fall_candidate_accepted_prev_track": 4, "fall_candidate_no_prev_worker_context": 12, "fall_candidate_rejected_duplicate_base": 52, "fall_candidate_rejected_no_support": 12, "fall_candidate_seen": 68, "pseudo_created": 48, "pseudo_promoted_to_manual": 15, "pseudo_promoted_to_real": 2, "pseudo_reused": 27, "real_match_assigned": 486, "reconciled_to_real": 523, "tracker_online_targets": 486, "tracker_removed_tracks": 8, "tracker_update_calls": 360, "unmatched_objects": 614}, "scenario_analysis": {"_execution": {"_resolved_scenarios": ["falldown_detected", "no_hardhat_persistent"], "falldown_detected": {"returned_event_count": 0, "status": "returned_events"}, "no_hardhat_persistent": {"returned_event_count": 0, "status": "returned_events"}}, "no_hardhat_persistent": {"active_violation_count": 0, "current_violation_count": 0, "recovered_violation_count": 0, "recovery_grace_seconds": 2.0}}, "scene_metrics": {"굴착기": {"bbox_area_ratio_median": 0.55519, "bbox_height_ratio_median": 0.776389, "bbox_height_ratio_p75": 0.777778, "bbox_width_ratio_median": 0.714453, "frame_presence_count": 120, "label_counts": {"excavator": 120}, "object_sample_count": 120}, "안전모 미착용": {"bbox_area_ratio_median": 0.001994, "bbox_height_ratio_median": 0.060764, "bbox_height_ratio_p75": 0.060764, "bbox_width_ratio_median": 0.033008, "frame_presence_count": 120, "label_counts": {"no_helmet": 120}, "object_sample_count": 120}}, "scene_scale_metrics": {"sample_count": 281, "worker_height_ratio_median": 0.236111, "worker_small_worker_ratio": 0.014235}, "scene_scale_profile": "mixed", "track_kind_counts": {"manual": 2, "pseudo": 0, "real": 0}}, "record_type": "tracking_summary"}
{"cctv_id": "16", "created_at": "2026-05-06T15:35:52", "instance_id": "4ba38716", "payload": {"active_detection_counts": {"굴착기": 1, "안전모 미착용": 1}, "analysis_flags": {"summary_due": true}, "frame_counters": {"assigned_from_manual_pool": 2, "reconciled_to_real": 2, "tracker_update_calls": 1, "unmatched_objects": 2}, "frame_idx": 480, "lifetime_counters": {"assigned_from_manual_pool": 760, "assigned_from_recent_track": 2, "fall_candidate_accepted_prev_track": 4, "fall_candidate_no_prev_worker_context": 32, "fall_candidate_rejected_duplicate_base": 52, "fall_candidate_rejected_no_support": 32, "fall_candidate_seen": 88, "pseudo_created": 48, "pseudo_promoted_to_manual": 15, "pseudo_promoted_to_real": 2, "pseudo_reused": 27, "real_match_assigned": 486, "reconciled_to_real": 763, "tracker_online_targets": 486, "tracker_removed_tracks": 8, "tracker_update_calls": 480, "unmatched_objects": 854}, "scenario_analysis": {"_execution": {"_resolved_scenarios": ["falldown_detected", "no_hardhat_persistent"], "falldown_detected": {"returned_event_count": 0, "status": "returned_events"}, "no_hardhat_persistent": {"returned_event_count": 0, "status": "returned_events"}}, "no_hardhat_persistent": {"active_violation_count": 0, "current_violation_count": 0, "recovered_violation_count": 0, "recovery_grace_seconds": 2.0}}, "scene_metrics": {"굴착기": {"bbox_area_ratio_median": 0.554941, "bbox_height_ratio_median": 0.777083, "bbox_height_ratio_p75": 0.777778, "bbox_width_ratio_median": 0.714453, "frame_presence_count": 120, "label_counts": {"excavator": 120}, "object_sample_count": 120}, "안전모 미착용": {"bbox_area_ratio_median": 0.001982, "bbox_height_ratio_median": 0.060764, "bbox_height_ratio_p75": 0.060764, "bbox_width_ratio_median": 0.032813, "frame_presence_count": 120, "label_counts": {"no_helmet": 120}, "object_sample_count": 120}}, "scene_scale_metrics": {"sample_count": 281, "worker_height_ratio_median": 0.236111, "worker_small_worker_ratio": 0.014235}, "scene_scale_profile": "mixed", "track_kind_counts": {"manual": 2, "pseudo": 0, "real": 0}}, "record_type": "tracking_summary"}
{"cctv_id": "16", "created_at": "2026-05-06T15:36:08", "instance_id": "4ba38716", "payload": {"active_detection_counts": {"굴착기": 2, "작업자": 1}, "analysis_flags": {"summary_due": true}, "frame_counters": {"assigned_from_manual_pool": 2, "real_match_assigned": 1, "reconciled_to_real": 2, "tracker_online_targets": 1, "tracker_update_calls": 1, "unmatched_objects": 2}, "frame_idx": 600, "lifetime_counters": {"assigned_from_manual_pool": 994, "assigned_from_recent_track": 2, "fall_candidate_accepted_prev_track": 4, "fall_candidate_no_prev_worker_context": 32, "fall_candidate_rejected_duplicate_base": 60, "fall_candidate_rejected_no_support": 32, "fall_candidate_seen": 96, "pseudo_created": 54, "pseudo_promoted_to_manual": 18, "pseudo_promoted_to_real": 2, "pseudo_reused": 31, "real_match_assigned": 520, "reconciled_to_real": 1000, "tracker_online_targets": 520, "tracker_removed_tracks": 10, "tracker_update_calls": 600, "unmatched_objects": 1101}, "scenario_analysis": {"_execution": {"_resolved_scenarios": ["falldown_detected", "no_hardhat_persistent"], "falldown_detected": {"returned_event_count": 0, "status": "returned_events"}, "no_hardhat_persistent": {"returned_event_count": 0, "status": "returned_events"}}, "no_hardhat_persistent": {"active_violation_count": 0, "current_violation_count": 0, "recovered_violation_count": 0, "recovery_grace_seconds": 2.0}}, "scene_metrics": {"굴착기": {"bbox_area_ratio_median": 0.55439, "bbox_height_ratio_median": 0.777083, "bbox_height_ratio_p75": 0.780753, "bbox_width_ratio_median": 0.714063, "frame_presence_count": 118, "label_counts": {"excavator": 147}, "object_sample_count": 147}, "안전모 미착용": {"bbox_area_ratio_median": 0.001925, "bbox_height_ratio_median": 0.060417, "bbox_height_ratio_p75": 0.061111, "bbox_width_ratio_median": 0.032422, "frame_presence_count": 101, "label_counts": {"no_helmet": 101}, "object_sample_count": 101}, "작업자": {"bbox_area_ratio_median": 0.101538, "bbox_height_ratio_median": 0.702431, "bbox_height_ratio_p75": 0.788194, "bbox_width_ratio_median": 0.144922, "frame_presence_count": 31, "label_counts": {"person": 31}, "object_sample_count": 31}, "중장비": {"bbox_area_ratio_median": 0.004369, "bbox_height_ratio_median": 0.281858, "bbox_height_ratio_p75": 0.300694, "bbox_width_ratio_median": 0.015466, "frame_presence_count": 2, "label_counts": {"tower_crane": 2}, "object_sample_count": 2}}, "scene_scale_metrics": {"sample_count": 312, "worker_height_ratio_median": 0.257812, "worker_small_worker_ratio": 0.012821}, "scene_scale_profile": "mixed", "track_kind_counts": {"manual": 2, "pseudo": 0, "real": 1}}, "record_type": "tracking_summary"}
{"cctv_id": "16", "created_at": "2026-05-06T15:36:24", "instance_id": "4ba38716", "payload": {"active_detection_counts": {"굴착기": 1, "안전모 미착용": 1}, "analysis_flags": {"summary_due": true}, "frame_counters": {"assigned_from_manual_pool": 1, "real_match_assigned": 1, "reconciled_to_real": 1, "tracker_online_targets": 1, "tracker_update_calls": 1, "unmatched_objects": 1}, "frame_idx": 720, "lifetime_counters": {"assigned_from_manual_pool": 1173, "assigned_from_recent_track": 2, "fall_candidate_accepted_prev_track": 4, "fall_candidate_no_prev_worker_context": 32, "fall_candidate_rejected_duplicate_base": 60, "fall_candidate_rejected_no_support": 32, "fall_candidate_seen": 96, "pseudo_created": 60, "pseudo_promoted_to_manual": 22, "pseudo_promoted_to_real": 2, "pseudo_reused": 37, "real_match_assigned": 602, "reconciled_to_real": 1183, "tracker_online_targets": 622, "tracker_removed_tracks": 12, "tracker_update_calls": 720, "unmatched_objects": 1296}, "scenario_analysis": {"_execution": {"_resolved_scenarios": ["falldown_detected", "no_hardhat_persistent"], "falldown_detected": {"returned_event_count": 0, "status": "returned_events"}, "no_hardhat_persistent": {"returned_event_count": 0, "status": "returned_events"}}, "no_hardhat_persistent": {"active_violation_count": 0, "current_violation_count": 0, "recovered_violation_count": 0, "recovery_grace_seconds": 2.0}}, "scene_metrics": {"굴착기": {"bbox_area_ratio_median": 0.553894, "bbox_height_ratio_median": 0.778472, "bbox_height_ratio_p75": 0.781944, "bbox_width_ratio_median": 0.714063, "frame_presence_count": 120, "label_counts": {"excavator": 153}, "object_sample_count": 153}, "안전모 미착용": {"bbox_area_ratio_median": 0.002017, "bbox_height_ratio_median": 0.061458, "bbox_height_ratio_p75": 0.061458, "bbox_width_ratio_median": 0.032813, "frame_presence_count": 50, "label_counts": {"no_helmet": 50}, "object_sample_count": 50}, "작업자": {"bbox_area_ratio_median": 0.023879, "bbox_height_ratio_median": 0.316146, "bbox_height_ratio_p75": 0.389583, "bbox_width_ratio_median": 0.07627, "frame_presence_count": 73, "label_counts": {"person": 70, "small_worker": 4}, "object_sample_count": 74}}, "scene_scale_metrics": {"sample_count": 386, "worker_height_ratio_median": 0.288889, "worker_small_worker_ratio": 0.020725}, "scene_scale_profile": "mixed", "track_kind_counts": {"manual": 1, "pseudo": 0, "real": 1}}, "record_type": "tracking_summary"}
{"cctv_id": "16", "created_at": "2026-05-06T15:36:41", "instance_id": "4ba38716", "payload": {"active_detection_counts": {"굴착기": 1, "안전모 미착용": 1}, "analysis_flags": {"summary_due": true}, "frame_counters": {"assigned_from_manual_pool": 2, "reconciled_to_real": 2, "tracker_update_calls": 1, "unmatched_objects": 2}, "frame_idx": 840, "lifetime_counters": {"assigned_from_manual_pool": 1372, "assigned_from_recent_track": 3, "fall_candidate_accepted_prev_track": 4, "fall_candidate_no_prev_worker_context": 32, "fall_candidate_rejected_duplicate_base": 60, "fall_candidate_rejected_no_support": 32, "fall_candidate_seen": 96, "pseudo_created": 67, "pseudo_promoted_to_manual": 25, "pseudo_promoted_to_real": 2, "pseudo_reused": 41, "real_match_assigned": 658, "reconciled_to_real": 1385, "tracker_online_targets": 678, "tracker_removed_tracks": 14, "tracker_update_calls": 840, "unmatched_objects": 1510}, "scenario_analysis": {"_execution": {"_resolved_scenarios": ["falldown_detected", "no_hardhat_persistent"], "falldown_detected": {"returned_event_count": 0, "status": "returned_events"}, "no_hardhat_persistent": {"returned_event_count": 0, "status": "returned_events"}}, "no_hardhat_persistent": {"active_violation_count": 0, "current_violation_count": 0, "recovered_violation_count": 0, "recovery_grace_seconds": 2.0}}, "scene_metrics": {"굴착기": {"bbox_area_ratio_median": 0.554693, "bbox_height_ratio_median": 0.777083, "bbox_height_ratio_p75": 0.777778, "bbox_width_ratio_median": 0.714063, "frame_presence_count": 120, "label_counts": {"excavator": 124}, "object_sample_count": 124}, "안전모 미착용": {"bbox_area_ratio_median": 0.002008, "bbox_height_ratio_median": 0.060764, "bbox_height_ratio_p75": 0.061458, "bbox_width_ratio_median": 0.032813, "frame_presence_count": 116, "label_counts": {"no_helmet": 116}, "object_sample_count": 116}, "작업자": {"bbox_area_ratio_median": 0.006773, "bbox_height_ratio_median": 0.19184, "bbox_height_ratio_p75": 0.195833, "bbox_width_ratio_median": 0.037598, "frame_presence_count": 30, "label_counts": {"person": 28, "small_worker": 2}, "object_sample_count": 30}}, "scene_scale_metrics": {"sample_count": 416, "worker_height_ratio_median": 0.260417, "worker_small_worker_ratio": 0.024038}, "scene_scale_profile": "mixed", "track_kind_counts": {"manual": 2, "pseudo": 0, "real": 0}}, "record_type": "tracking_summary"}
{"cctv_id": "16", "created_at": "2026-05-06T15:36:56", "instance_id": "4ba38716", "payload": {"active_detection_counts": {"굴착기": 2, "안전모 미착용": 1}, "analysis_flags": {"summary_due": true}, "frame_counters": {"assigned_from_manual_pool": 2, "pseudo_created": 1, "reconciled_to_real": 2, "tracker_update_calls": 1, "unmatched_objects": 3}, "frame_idx": 960, "lifetime_counters": {"assigned_from_manual_pool": 1613, "assigned_from_recent_track": 3, "fall_candidate_accepted_prev_track": 4, "fall_candidate_no_prev_worker_context": 67, "fall_candidate_rejected_duplicate_base": 60, "fall_candidate_rejected_no_support": 67, "fall_candidate_seen": 131, "pseudo_created": 70, "pseudo_promoted_to_manual": 26, "pseudo_promoted_to_real": 2, "pseudo_reused": 43, "real_match_assigned": 658, "reconciled_to_real": 1627, "tracker_online_targets": 678, "tracker_removed_tracks": 15, "tracker_update_calls": 960, "unmatched_objects": 1757}, "scenario_analysis": {"_execution": {"_resolved_scenarios": ["falldown_detected", "no_hardhat_persistent"], "falldown_detected": {"returned_event_count": 0, "status": "returned_events"}, "no_hardhat_persistent": {"returned_event_count": 0, "status": "returned_events"}}, "no_hardhat_persistent": {"active_violation_count": 0, "current_violation_count": 0, "recovered_violation_count": 0, "recovery_grace_seconds": 2.0}}, "scene_metrics": {"굴착기": {"bbox_area_ratio_median": 0.555603, "bbox_height_ratio_median": 0.777778, "bbox_height_ratio_p75": 0.777778, "bbox_width_ratio_median": 0.714844, "frame_presence_count": 120, "label_counts": {"excavator": 123}, "object_sample_count": 123}, "안전모 미착용": {"bbox_area_ratio_median": 0.001994, "bbox_height_ratio_median": 0.060764, "bbox_height_ratio_p75": 0.060764, "bbox_width_ratio_median": 0.032813, "frame_presence_count": 119, "label_counts": {"no_helmet": 119}, "object_sample_count": 119}, "작업자": {"bbox_area_ratio_median": 0.00062, "bbox_height_ratio_median": 0.038542, "bbox_height_ratio_p75": 0.038889, "bbox_width_ratio_median": 0.016211, "frame_presence_count": 5, "label_counts": {"small_worker": 5}, "object_sample_count": 5}}, "scene_scale_metrics": {"sample_count": 421, "worker_height_ratio_median": 0.259722, "worker_small_worker_ratio": 0.035629}, "scene_scale_profile": "mixed", "track_kind_counts": {"manual": 2, "pseudo": 1, "real": 0}}, "record_type": "tracking_summary"}
{"cctv_id": "16", "created_at": "2026-05-06T15:37:12", "instance_id": "4ba38716", "payload": {"active_detection_counts": {"굴착기": 1, "안전모 미착용": 1}, "analysis_flags": {"summary_due": true}, "frame_counters": {"assigned_from_manual_pool": 2, "reconciled_to_real": 2, "tracker_update_calls": 1, "unmatched_objects": 2}, "frame_idx": 1080, "lifetime_counters": {"assigned_from_manual_pool": 1869, "assigned_from_recent_track": 3, "fall_candidate_accepted_prev_track": 4, "fall_candidate_no_prev_worker_context": 96, "fall_candidate_rejected_duplicate_base": 60, "fall_candidate_rejected_no_support": 96, "fall_candidate_seen": 160, "pseudo_created": 73, "pseudo_promoted_to_manual": 27, "pseudo_promoted_to_real": 2, "pseudo_reused": 47, "real_match_assigned": 658, "reconciled_to_real": 1884, "tracker_online_targets": 678, "tracker_removed_tracks": 15, "tracker_update_calls": 1080, "unmatched_objects": 2021}, "scenario_analysis": {"_execution": {"_resolved_scenarios": ["falldown_detected", "no_hardhat_persistent"], "falldown_detected": {"returned_event_count": 0, "status": "returned_events"}, "no_hardhat_persistent": {"returned_event_count": 0, "status": "returned_events"}}, "no_hardhat_persistent": {"active_violation_count": 0, "current_violation_count": 0, "recovered_violation_count": 0, "recovery_grace_seconds": 2.0}}, "scene_metrics": {"굴착기": {"bbox_area_ratio_median": 0.55527, "bbox_height_ratio_median": 0.777778, "bbox_height_ratio_p75": 0.778472, "bbox_width_ratio_median": 0.713672, "frame_presence_count": 120, "label_counts": {"excavator": 144}, "object_sample_count": 144}, "안전모 미착용": {"bbox_area_ratio_median": 0.001994, "bbox_height_ratio_median": 0.060764, "bbox_height_ratio_p75": 0.060764, "bbox_width_ratio_median": 0.033008, "frame_presence_count": 120, "label_counts": {"no_helmet": 120}, "object_sample_count": 120}}, "scene_scale_metrics": {"sample_count": 421, "worker_height_ratio_median": 0.259722, "worker_small_worker_ratio": 0.035629}, "scene_scale_profile": "mixed", "track_kind_counts": {"manual": 2, "pseudo": 0, "real": 0}}, "record_type": "tracking_summary"}
{"anchor_point": null, "cctv_id": "16", "created_at": "2026-05-06T15:37:16", "detail": {}, "event_id": null, "event_message": "안전모 미착용", "event_status": null, "event_type": "no_hardhat_persistent", "frame_idx": 1112, "frame_time": "2026-05-06 15:37:16", "instance_id": "4ba38716", "last_assignment_source": "reconciled_to_real", "meta": {"gear_name": "안전모", "matched_cover": 1.0, "min_cover": 0.35, "stable_frames": 1, "track_kind": "manual", "violation_category": "안전모 미착용", "worker_identity_key": ["no_hardhat_persistent", "track_id", "1000032"]}, "persist_event": true, "record_type": "scenario_event", "scene_scale_profile": "mixed", "stable_frames": 1, "track_id": 1000032, "track_kind": "manual", "zone_id": null, "zone_name": null}
{"anchor_point": null, "cctv_id": "16", "created_at": "2026-05-06T15:37:19", "detail": {}, "event_id": null, "event_message": "안전모 미착용", "event_status": null, "event_type": "no_hardhat_persistent", "frame_idx": 1129, "frame_time": "2026-05-06 15:37:19", "instance_id": "4ba38716", "last_assignment_source": "reconciled_to_real", "meta": {"gear_name": "안전모", "matched_cover": 1.0, "min_cover": 0.35, "stable_frames": 32, "track_kind": "manual", "violation_category": "안전모 미착용", "worker_identity_key": ["no_hardhat_persistent", "track_id", "1000028"]}, "persist_event": true, "record_type": "scenario_event", "scene_scale_profile": "mixed", "stable_frames": 32, "track_id": 1000028, "track_kind": "manual", "zone_id": null, "zone_name": null}
{"anchor_point": null, "cctv_id": "16", "created_at": "2026-05-06T15:37:26", "detail": {}, "event_id": null, "event_message": "안전모 미착용", "event_status": null, "event_type": "no_hardhat_persistent", "frame_idx": 1171, "frame_time": "2026-05-06 15:37:26", "instance_id": "4ba38716", "last_assignment_source": "reconciled_to_real", "meta": {"gear_name": "안전모", "matched_cover": 1.0, "min_cover": 0.35, "stable_frames": 74, "track_kind": "manual", "violation_category": "안전모 미착용", "worker_identity_key": ["no_hardhat_persistent", "track_id", "1000028"]}, "persist_event": true, "record_type": "scenario_event", "scene_scale_profile": "mixed", "stable_frames": 74, "track_id": 1000028, "track_kind": "manual", "zone_id": null, "zone_name": null}
{"cctv_id": "16", "created_at": "2026-05-06T15:37:30", "instance_id": "4ba38716", "payload": {"active_detection_counts": {"굴착기": 1, "안전모 미착용": 1, "작업자": 2}, "analysis_flags": {"summary_due": true}, "frame_counters": {"assigned_from_manual_pool": 4, "reconciled_to_real": 4, "tracker_update_calls": 1, "unmatched_objects": 4}, "frame_idx": 1200, "lifetime_counters": {"assigned_from_manual_pool": 2313, "assigned_from_recent_track": 3, "fall_candidate_accepted_prev_track": 4, "fall_candidate_no_prev_worker_context": 98, "fall_candidate_rejected_duplicate_base": 75, "fall_candidate_rejected_no_support": 98, "fall_candidate_seen": 177, "pseudo_created": 85, "pseudo_promoted_to_manual": 35, "pseudo_promoted_to_real": 2, "pseudo_reused": 57, "real_match_assigned": 669, "reconciled_to_real": 2336, "tracker_online_targets": 689, "tracker_removed_tracks": 17, "tracker_update_calls": 1200, "unmatched_objects": 2495}, "scenario_analysis": {"_execution": {"_resolved_scenarios": ["falldown_detected", "no_hardhat_persistent"], "falldown_detected": {"returned_event_count": 0, "status": "returned_events"}, "no_hardhat_persistent": {"returned_event_count": 0, "status": "returned_events"}}, "no_hardhat_persistent": {"active_violation_count": 0, "current_violation_count": 0, "pseudo_min_stable_frames": 3, "recovered_violation_count": 2, "recovery_grace_seconds": 2.0}}, "scene_metrics": {"굴착기": {"bbox_area_ratio_median": 0.55439, "bbox_height_ratio_median": 0.780802, "bbox_height_ratio_p75": 0.814766, "bbox_width_ratio_median": 0.714063, "frame_presence_count": 118, "label_counts": {"excavator": 166}, "object_sample_count": 166}, "안전모 미착용": {"bbox_area_ratio_median": 0.001982, "bbox_height_ratio_median": 0.060764, "bbox_height_ratio_p75": 0.08125, "bbox_width_ratio_median": 0.032617, "frame_presence_count": 93, "label_counts": {"no_helmet": 113}, "object_sample_count": 113}, "작업자": {"bbox_area_ratio_median": 0.084874, "bbox_height_ratio_median": 0.76875, "bbox_height_ratio_p75": 0.801389, "bbox_width_ratio_median": 0.1125, "frame_presence_count": 107, "label_counts": {"person": 201}, "object_sample_count": 201}, "중장비": {"bbox_area_ratio_median": 0.005847, "bbox_height_ratio_median": 0.339986, "bbox_height_ratio_p75": 0.35625, "bbox_width_ratio_median": 0.017198, "frame_presence_count": 5, "label_counts": {"tower_crane": 5}, "object_sample_count": 5}}, "scene_scale_metrics": {"sample_count": 622, "worker_height_ratio_median": 0.460243, "worker_small_worker_ratio": 0.024116}, "scene_scale_profile": "mixed", "track_kind_counts": {"manual": 4, "pseudo": 0, "real": 0}}, "record_type": "tracking_summary"}
{"cctv_id": "16", "created_at": "2026-05-06T15:37:46", "instance_id": "4ba38716", "payload": {"active_detection_counts": {"굴착기": 1, "안전모 미착용": 1, "작업자": 2}, "analysis_flags": {"summary_due": true}, "frame_counters": {"assigned_from_manual_pool": 4, "reconciled_to_real": 4, "tracker_update_calls": 1, "unmatched_objects": 4}, "frame_idx": 1320, "lifetime_counters": {"assigned_from_manual_pool": 2741, "assigned_from_recent_track": 4, "fall_candidate_accepted_prev_track": 4, "fall_candidate_no_prev_worker_context": 98, "fall_candidate_rejected_duplicate_base": 75, "fall_candidate_rejected_no_support": 98, "fall_candidate_seen": 177, "pseudo_created": 85, "pseudo_promoted_to_manual": 35, "pseudo_promoted_to_real": 2, "pseudo_reused": 57, "real_match_assigned": 671, "reconciled_to_real": 2756, "tracker_online_targets": 691, "tracker_removed_tracks": 19, "tracker_update_calls": 1320, "unmatched_objects": 2924}, "scenario_analysis": {"_execution": {"_resolved_scenarios": ["falldown_detected", "no_hardhat_persistent"], "falldown_detected": {"returned_event_count": 0, "status": "returned_events"}, "no_hardhat_persistent": {"returned_event_count": 0, "status": "returned_events"}}, "no_hardhat_persistent": {"active_violation_count": 0, "current_violation_count": 0, "pseudo_min_stable_frames": 3, "recovered_violation_count": 0, "recovery_grace_seconds": 2.0}}, "scene_metrics": {"굴착기": {"bbox_area_ratio_median": 0.554997, "bbox_height_ratio_median": 0.776389, "bbox_height_ratio_p75": 0.777778, "bbox_width_ratio_median": 0.714844, "frame_presence_count": 120, "label_counts": {"excavator": 130}, "object_sample_count": 130}, "안전모 미착용": {"bbox_area_ratio_median": 0.002015, "bbox_height_ratio_median": 0.062153, "bbox_height_ratio_p75": 0.062153, "bbox_width_ratio_median": 0.032422, "frame_presence_count": 61, "label_counts": {"no_helmet": 61}, "object_sample_count": 61}, "작업자": {"bbox_area_ratio_median": 0.019174, "bbox_height_ratio_median": 0.315278, "bbox_height_ratio_p75": 0.350347, "bbox_width_ratio_median": 0.06001, "frame_presence_count": 120, "label_counts": {"person": 240}, "object_sample_count": 240}}, "scene_scale_metrics": {"sample_count": 862, "worker_height_ratio_median": 0.339236, "worker_small_worker_ratio": 0.017401}, "scene_scale_profile": "mixed", "track_kind_counts": {"manual": 4, "pseudo": 0, "real": 0}}, "record_type": "tracking_summary"}
{"anchor_point": null, "cctv_id": "16", "created_at": "2026-05-06T15:37:57", "detail": {}, "event_id": null, "event_message": "안전모 미착용", "event_status": null, "event_type": "no_hardhat_persistent", "frame_idx": 1400, "frame_time": "2026-05-06 15:37:57", "instance_id": "4ba38716", "last_assignment_source": "reconciled_to_real", "meta": {"gear_name": "안전모", "matched_cover": 1.0, "min_cover": 0.35, "stable_frames": 289, "track_kind": "manual", "violation_category": "안전모 미착용", "worker_identity_key": ["no_hardhat_persistent", "track_id", "1000032"]}, "persist_event": true, "record_type": "scenario_event", "scene_scale_profile": "mixed", "stable_frames": 289, "track_id": 1000032, "track_kind": "manual", "zone_id": null, "zone_name": null}
{"cctv_id": "16", "created_at": "2026-05-06T15:38:02", "instance_id": "4ba38716", "payload": {"active_detection_counts": {"굴착기": 1, "안전모 미착용": 1, "작업자": 1, "중장비": 1}, "analysis_flags": {"summary_due": true}, "frame_counters": {"assigned_from_manual_pool": 2, "real_match_assigned": 2, "reconciled_to_real": 2, "tracker_online_targets": 2, "tracker_update_calls": 1, "unmatched_objects": 2}, "frame_idx": 1440, "lifetime_counters": {"assigned_from_manual_pool": 3199, "assigned_from_recent_track": 4, "fall_candidate_accepted_prev_track": 4, "fall_candidate_no_prev_worker_context": 98, "fall_candidate_rejected_duplicate_base": 75, "fall_candidate_rejected_no_support": 126, "fall_candidate_seen": 205, "pseudo_created": 93, "pseudo_promoted_to_manual": 38, "pseudo_promoted_to_real": 2, "pseudo_reused": 61, "real_match_assigned": 726, "reconciled_to_real": 3217, "tracker_online_targets": 746, "tracker_removed_tracks": 23, "tracker_update_calls": 1440, "unmatched_objects": 3397}, "scenario_analysis": {"_execution": {"_resolved_scenarios": ["falldown_detected", "no_hardhat_persistent"], "falldown_detected": {"returned_event_count": 0, "status": "returned_events"}, "no_hardhat_persistent": {"returned_event_count": 0, "status": "returned_events"}}, "no_hardhat_persistent": {"active_violation_count": 0, "current_violation_count": 0, "pseudo_min_stable_frames": 3, "recovered_violation_count": 0, "recovery_grace_seconds": 2.0}}, "scene_metrics": {"굴착기": {"bbox_area_ratio_median": 0.55439, "bbox_height_ratio_median": 0.776389, "bbox_height_ratio_p75": 0.777083, "bbox_width_ratio_median": 0.714063, "frame_presence_count": 120, "label_counts": {"excavator": 147}, "object_sample_count": 147}, "안전모 미착용": {"bbox_area_ratio_median": 0.001994, "bbox_height_ratio_median": 0.061458, "bbox_height_ratio_p75": 0.061458, "bbox_width_ratio_median": 0.032813, "frame_presence_count": 98, "label_counts": {"no_helmet": 102}, "object_sample_count": 102}, "작업자": {"bbox_area_ratio_median": 0.015947, "bbox_height_ratio_median": 0.296181, "bbox_height_ratio_p75": 0.298611, "bbox_width_ratio_median": 0.053564, "frame_presence_count": 120, "label_counts": {"person": 209, "small_worker": 5}, "object_sample_count": 214}, "중장비": {"bbox_area_ratio_median": 0.031284, "bbox_height_ratio_median": 0.342274, "bbox_height_ratio_p75": 0.365972, "bbox_width_ratio_median": 0.090625, "frame_presence_count": 65, "label_counts": {"crane_mobile": 65}, "object_sample_count": 65}}, "scene_scale_metrics": {"sample_count": 1076, "worker_height_ratio_median": 0.3125, "worker_small_worker_ratio": 0.018587}, "scene_scale_profile": "mixed", "track_kind_counts": {"manual": 2, "pseudo": 0, "real": 2}}, "record_type": "tracking_summary"}
{"cctv_id": "16", "created_at": "2026-05-06T15:38:19", "instance_id": "4ba38716", "payload": {"active_detection_counts": {"굴착기": 1, "안전모 미착용": 1, "작업자": 2, "중장비": 1}, "analysis_flags": {"summary_due": true}, "frame_counters": {"assigned_from_manual_pool": 3, "real_match_assigned": 2, "reconciled_to_real": 2, "tracker_online_targets": 2, "tracker_update_calls": 1, "unmatched_objects": 3}, "frame_idx": 1560, "lifetime_counters": {"assigned_from_manual_pool": 3543, "assigned_from_recent_track": 5, "fall_candidate_accepted_prev_track": 4, "fall_candidate_no_prev_worker_context": 98, "fall_candidate_rejected_duplicate_base": 75, "fall_candidate_rejected_no_support": 147, "fall_candidate_seen": 226, "pseudo_created": 97, "pseudo_promoted_to_manual": 41, "pseudo_promoted_to_real": 2, "pseudo_reused": 65, "real_match_assigned": 936, "reconciled_to_real": 3475, "tracker_online_targets": 956, "tracker_removed_tracks": 23, "tracker_update_calls": 1560, "unmatched_objects": 3753}, "scenario_analysis": {"_execution": {"_resolved_scenarios": ["falldown_detected", "no_hardhat_persistent"], "falldown_detected": {"returned_event_count": 0, "status": "returned_events"}, "no_hardhat_persistent": {"returned_event_count": 0, "status": "returned_events"}}, "no_hardhat_persistent": {"active_violation_count": 0, "current_violation_count": 0, "pseudo_min_stable_frames": 3, "recovered_violation_count": 0, "recovery_grace_seconds": 2.0}}, "scene_metrics": {"굴착기": {"bbox_area_ratio_median": 0.553784, "bbox_height_ratio_median": 0.775694, "bbox_height_ratio_p75": 0.776389, "bbox_width_ratio_median": 0.714063, "frame_presence_count": 120, "label_counts": {"excavator": 120}, "object_sample_count": 120}, "안전모 미착용": {"bbox_area_ratio_median": 0.002006, "bbox_height_ratio_median": 0.060764, "bbox_height_ratio_p75": 0.061458, "bbox_width_ratio_median": 0.032813, "frame_presence_count": 107, "label_counts": {"no_helmet": 107}, "object_sample_count": 107}, "작업자": {"bbox_area_ratio_median": 0.014037, "bbox_height_ratio_median": 0.290278, "bbox_height_ratio_p75": 0.294097, "bbox_width_ratio_median": 0.048926, "frame_presence_count": 120, "label_counts": {"person": 167, "small_worker": 52}, "object_sample_count": 219}, "중장비": {"bbox_area_ratio_median": 0.024284, "bbox_height_ratio_median": 0.333507, "bbox_height_ratio_p75": 0.334028, "bbox_width_ratio_median": 0.072852, "frame_presence_count": 120, "label_counts": {"crane_mobile": 120}, "object_sample_count": 120}}, "scene_scale_metrics": {"sample_count": 1295, "worker_height_ratio_median": 0.298611, "worker_small_worker_ratio": 0.055598}, "scene_scale_profile": "mixed", "track_kind_counts": {"manual": 2, "pseudo": 0, "real": 3}}, "record_type": "tracking_summary"}
{"cctv_id": "16", "created_at": "2026-05-06T15:38:35", "instance_id": "4ba38716", "payload": {"active_detection_counts": {"굴착기": 1, "안전모 미착용": 1, "작업자": 2, "중장비": 1}, "analysis_flags": {"summary_due": true}, "frame_counters": {"assigned_from_manual_pool": 4, "real_match_assigned": 1, "reconciled_to_real": 3, "tracker_online_targets": 1, "tracker_removed_tracks": 1, "tracker_update_calls": 1, "unmatched_objects": 4}, "frame_idx": 1680, "lifetime_counters": {"assigned_from_manual_pool": 3973, "assigned_from_recent_track": 5, "fall_candidate_accepted_prev_track": 4, "fall_candidate_no_prev_worker_context": 98, "fall_candidate_rejected_duplicate_base": 75, "fall_candidate_rejected_no_support": 167, "fall_candidate_seen": 246, "pseudo_created": 106, "pseudo_promoted_to_manual": 46, "pseudo_promoted_to_real": 2, "pseudo_reused": 70, "real_match_assigned": 1084, "reconciled_to_real": 3790, "tracker_online_targets": 1104, "tracker_removed_tracks": 25, "tracker_update_calls": 1680, "unmatched_objects": 4202}, "scenario_analysis": {"_execution": {"_resolved_scenarios": ["falldown_detected", "no_hardhat_persistent"], "falldown_detected": {"returned_event_count": 0, "status": "returned_events"}, "no_hardhat_persistent": {"returned_event_count": 0, "status": "returned_events"}}, "no_hardhat_persistent": {"active_violation_count": 0, "current_violation_count": 0, "pseudo_min_stable_frames": 3, "recovered_violation_count": 0, "recovery_grace_seconds": 2.0}}, "scene_metrics": {"굴착기": {"bbox_area_ratio_median": 0.553894, "bbox_height_ratio_median": 0.776389, "bbox_height_ratio_p75": 0.777083, "bbox_width_ratio_median": 0.713281, "frame_presence_count": 120, "label_counts": {"excavator": 128}, "object_sample_count": 128}, "안전모 미착용": {"bbox_area_ratio_median": 0.002006, "bbox_height_ratio_median": 0.06059, "bbox_height_ratio_p75": 0.061111, "bbox_width_ratio_median": 0.032813, "frame_presence_count": 120, "label_counts": {"no_helmet": 120}, "object_sample_count": 120}, "작업자": {"bbox_area_ratio_median": 0.008707, "bbox_height_ratio_median": 0.236111, "bbox_height_ratio_p75": 0.257986, "bbox_width_ratio_median": 0.035303, "frame_presence_count": 120, "label_counts": {"person": 237}, "object_sample_count": 237}, "중장비": {"bbox_area_ratio_median": 0.02459, "bbox_height_ratio_median": 0.333854, "bbox_height_ratio_p75": 0.506344, "bbox_width_ratio_median": 0.073828, "frame_presence_count": 112, "label_counts": {"crane_mobile": 112}, "object_sample_count": 112}}, "scene_scale_metrics": {"sample_count": 1532, "worker_height_ratio_median": 0.295486, "worker_small_worker_ratio": 0.046997}, "scene_scale_profile": "mixed", "track_kind_counts": {"manual": 3, "pseudo": 0, "real": 2}}, "record_type": "tracking_summary"}
{"cctv_id": "16", "created_at": "2026-05-06T15:38:52", "instance_id": "4ba38716", "payload": {"active_detection_counts": {"굴착기": 1, "안전모 미착용": 1, "작업자": 2, "중장비": 1}, "analysis_flags": {"summary_due": true}, "frame_counters": {"assigned_from_manual_pool": 4, "real_match_assigned": 1, "reconciled_to_real": 3, "tracker_online_targets": 1, "tracker_update_calls": 1, "unmatched_objects": 4}, "frame_idx": 1800, "lifetime_counters": {"assigned_from_manual_pool": 4381, "assigned_from_recent_track": 5, "fall_candidate_accepted_prev_track": 4, "fall_candidate_no_prev_worker_context": 98, "fall_candidate_rejected_duplicate_base": 75, "fall_candidate_rejected_no_support": 193, "fall_candidate_seen": 272, "pseudo_created": 107, "pseudo_promoted_to_manual": 47, "pseudo_promoted_to_real": 2, "pseudo_reused": 71, "real_match_assigned": 1212, "reconciled_to_real": 4079, "tracker_online_targets": 1232, "tracker_removed_tracks": 26, "tracker_update_calls": 1800, "unmatched_objects": 4613}, "scenario_analysis": {"_execution": {"_resolved_scenarios": ["falldown_detected", "no_hardhat_persistent"], "falldown_detected": {"returned_event_count": 0, "status": "returned_events"}, "no_hardhat_persistent": {"returned_event_count": 0, "status": "returned_events"}}, "no_hardhat_persistent": {"active_violation_count": 0, "current_violation_count": 0, "pseudo_min_stable_frames": 3, "recovered_violation_count": 0, "recovery_grace_seconds": 2.0}}, "scene_metrics": {"굴착기": {"bbox_area_ratio_median": 0.553894, "bbox_height_ratio_median": 0.776389, "bbox_height_ratio_p75": 0.776389, "bbox_width_ratio_median": 0.713477, "frame_presence_count": 120, "label_counts": {"excavator": 120}, "object_sample_count": 120}, "안전모 미착용": {"bbox_area_ratio_median": 0.002006, "bbox_height_ratio_median": 0.061458, "bbox_height_ratio_p75": 0.062153, "bbox_width_ratio_median": 0.032813, "frame_presence_count": 120, "label_counts": {"no_helmet": 120}, "object_sample_count": 120}, "작업자": {"bbox_area_ratio_median": 0.007702, "bbox_height_ratio_median": 0.223264, "bbox_height_ratio_p75": 0.225694, "bbox_width_ratio_median": 0.03418, "frame_presence_count": 120, "label_counts": {"person": 179}, "object_sample_count": 179}, "중장비": {"bbox_area_ratio_median": 0.02452, "bbox_height_ratio_median": 0.360243, "bbox_height_ratio_p75": 0.474276, "bbox_width_ratio_median": 0.069824, "frame_presence_count": 120, "label_counts": {"crane_mobile": 120}, "object_sample_count": 120}}, "scene_scale_metrics": {"sample_count": 1711, "worker_height_ratio_median": 0.294097, "worker_small_worker_ratio": 0.042081}, "scene_scale_profile": "mixed", "track_kind_counts": {"manual": 3, "pseudo": 0, "real": 2}}, "record_type": "tracking_summary"}
{"anchor_point": null, "cctv_id": "16", "created_at": "2026-05-06T15:38:55", "detail": {}, "event_id": null, "event_message": "안전모 미착용", "event_status": null, "event_type": "no_hardhat_persistent", "frame_idx": 1823, "frame_time": "2026-05-06 15:38:55", "instance_id": "4ba38716", "last_assignment_source": "reconciled_to_real", "meta": {"gear_name": "안전모", "matched_cover": 1.0, "min_cover": 0.35, "stable_frames": 4, "track_kind": "manual", "violation_category": "안전모 미착용", "worker_identity_key": ["no_hardhat_persistent", "track_id", "1000048"]}, "persist_event": true, "record_type": "scenario_event", "scene_scale_profile": "mixed", "stable_frames": 4, "track_id": 1000048, "track_kind": "manual", "zone_id": null, "zone_name": null}
{"cctv_id": "16", "created_at": "2026-05-06T15:39:08", "instance_id": "4ba38716", "payload": {"active_detection_counts": {"굴착기": 1, "중장비": 1}, "analysis_flags": {"summary_due": true}, "frame_counters": {"assigned_from_manual_pool": 2, "reconciled_to_real": 2, "tracker_update_calls": 1, "unmatched_objects": 2}, "frame_idx": 1920, "lifetime_counters": {"assigned_from_manual_pool": 4682, "assigned_from_recent_track": 5, "fall_candidate_accepted_prev_track": 4, "fall_candidate_no_prev_worker_context": 98, "fall_candidate_rejected_duplicate_base": 75, "fall_candidate_rejected_no_support": 193, "fall_candidate_seen": 272, "pseudo_created": 110, "pseudo_promoted_to_manual": 48, "pseudo_promoted_to_real": 2, "pseudo_reused": 72, "real_match_assigned": 1230, "reconciled_to_real": 4373, "tracker_online_targets": 1250, "tracker_removed_tracks": 29, "tracker_update_calls": 1920, "unmatched_objects": 4919}, "scenario_analysis": {"_execution": {"_resolved_scenarios": ["falldown_detected", "no_hardhat_persistent"], "falldown_detected": {"returned_event_count": 0, "status": "returned_events"}, "no_hardhat_persistent": {"returned_event_count": 0, "status": "returned_events"}}, "no_hardhat_persistent": {"active_violation_count": 0, "current_violation_count": 0, "recovered_violation_count": 0, "recovery_grace_seconds": 2.0}}, "scene_metrics": {"굴착기": {"bbox_area_ratio_median": 0.535365, "bbox_height_ratio_median": 0.751389, "bbox_height_ratio_p75": 0.755556, "bbox_width_ratio_median": 0.7125, "frame_presence_count": 120, "label_counts": {"excavator": 120}, "object_sample_count": 120}, "안전모 미착용": {"bbox_area_ratio_median": 0.001959, "bbox_height_ratio_median": 0.060417, "bbox_height_ratio_p75": 0.060764, "bbox_width_ratio_median": 0.032422, "frame_presence_count": 9, "label_counts": {"no_helmet": 9}, "object_sample_count": 9}, "작업자": {"bbox_area_ratio_median": 0.006505, "bbox_height_ratio_median": 0.198264, "bbox_height_ratio_p75": 0.210417, "bbox_width_ratio_median": 0.033789, "frame_presence_count": 39, "label_counts": {"person": 71, "small_worker": 4}, "object_sample_count": 75}, "중장비": {"bbox_area_ratio_median": 0.024577, "bbox_height_ratio_median": 0.336458, "bbox_height_ratio_p75": 0.340799, "bbox_width_ratio_median": 0.073047, "frame_presence_count": 120, "label_counts": {"crane_mobile": 120}, "object_sample_count": 120}}, "scene_scale_metrics": {"sample_count": 1786, "worker_height_ratio_median": 0.293403, "worker_small_worker_ratio": 0.042553}, "scene_scale_profile": "mixed", "track_kind_counts": {"manual": 2, "pseudo": 0, "real": 0}}, "record_type": "tracking_summary"}
{"cctv_id": "16", "created_at": "2026-05-06T15:39:24", "instance_id": "4ba38716", "payload": {"active_detection_counts": {"굴착기": 1, "중장비": 1}, "analysis_flags": {"summary_due": true}, "frame_counters": {"assigned_from_manual_pool": 2, "reconciled_to_real": 2, "tracker_update_calls": 1, "unmatched_objects": 2}, "frame_idx": 2040, "lifetime_counters": {"assigned_from_manual_pool": 4922, "assigned_from_recent_track": 5, "fall_candidate_accepted_prev_track": 4, "fall_candidate_no_prev_worker_context": 98, "fall_candidate_rejected_duplicate_base": 75, "fall_candidate_rejected_no_support": 193, "fall_candidate_seen": 272, "pseudo_created": 110, "pseudo_promoted_to_manual": 48, "pseudo_promoted_to_real": 2, "pseudo_reused": 72, "real_match_assigned": 1230, "reconciled_to_real": 4613, "tracker_online_targets": 1250, "tracker_removed_tracks": 29, "tracker_update_calls": 2040, "unmatched_objects": 5159}, "scenario_analysis": {"_execution": {"_resolved_scenarios": ["falldown_detected", "no_hardhat_persistent"], "falldown_detected": {"returned_event_count": 0, "status": "returned_events"}, "no_hardhat_persistent": {"returned_event_count": 0, "status": "returned_events"}}, "no_hardhat_persistent": {"active_violation_count": 0, "current_violation_count": 0, "recovered_violation_count": 0, "recovery_grace_seconds": 2.0}}, "scene_metrics": {"굴착기": {"bbox_area_ratio_median": 0.535365, "bbox_height_ratio_median": 0.751389, "bbox_height_ratio_p75": 0.751389, "bbox_width_ratio_median": 0.7125, "frame_presence_count": 120, "label_counts": {"excavator": 120}, "object_sample_count": 120}, "중장비": {"bbox_area_ratio_median": 0.024577, "bbox_height_ratio_median": 0.336458, "bbox_height_ratio_p75": 0.336458, "bbox_width_ratio_median": 0.073047, "frame_presence_count": 120, "label_counts": {"crane_mobile": 120}, "object_sample_count": 120}}, "scene_scale_metrics": {"sample_count": 1786, "worker_height_ratio_median": 0.293403, "worker_small_worker_ratio": 0.042553}, "scene_scale_profile": "mixed", "track_kind_counts": {"manual": 2, "pseudo": 0, "real": 0}}, "record_type": "tracking_summary"}
{"cctv_id": "16", "created_at": "2026-05-06T15:39:40", "instance_id": "4ba38716", "payload": {"active_detection_counts": {"굴착기": 1, "안전모 미착용": 1, "작업자": 2, "중장비": 1}, "analysis_flags": {"summary_due": true}, "frame_counters": {"assigned_from_manual_pool": 4, "real_match_assigned": 1, "reconciled_to_real": 4, "tracker_online_targets": 1, "tracker_update_calls": 1, "unmatched_objects": 4}, "frame_idx": 2160, "lifetime_counters": {"assigned_from_manual_pool": 5195, "assigned_from_recent_track": 5, "fall_candidate_accepted_prev_track": 4, "fall_candidate_no_prev_worker_context": 98, "fall_candidate_rejected_duplicate_base": 75, "fall_candidate_rejected_no_support": 193, "fall_candidate_seen": 272, "pseudo_created": 117, "pseudo_promoted_to_manual": 51, "pseudo_promoted_to_real": 2, "pseudo_reused": 76, "real_match_assigned": 1253, "reconciled_to_real": 4889, "tracker_online_targets": 1273, "tracker_removed_tracks": 29, "tracker_update_calls": 2160, "unmatched_objects": 5446}, "scenario_analysis": {"_execution": {"_resolved_scenarios": ["falldown_detected", "no_hardhat_persistent"], "falldown_detected": {"returned_event_count": 0, "status": "returned_events"}, "no_hardhat_persistent": {"returned_event_count": 0, "status": "returned_events"}}, "no_hardhat_persistent": {"active_violation_count": 0, "current_violation_count": 0, "pseudo_min_stable_frames": 3, "recovered_violation_count": 0, "recovery_grace_seconds": 2.0}}, "scene_metrics": {"굴착기": {"bbox_area_ratio_median": 0.535365, "bbox_height_ratio_median": 0.751389, "bbox_height_ratio_p75": 0.751389, "bbox_width_ratio_median": 0.7125, "frame_presence_count": 120, "label_counts": {"excavator": 120}, "object_sample_count": 120}, "안전모 미착용": {"bbox_area_ratio_median": 0.002064, "bbox_height_ratio_median": 0.062153, "bbox_height_ratio_p75": 0.062153, "bbox_width_ratio_median": 0.033203, "frame_presence_count": 38, "label_counts": {"no_helmet": 38}, "object_sample_count": 38}, "작업자": {"bbox_area_ratio_median": 0.005959, "bbox_height_ratio_median": 0.179514, "bbox_height_ratio_p75": 0.180556, "bbox_width_ratio_median": 0.033105, "frame_presence_count": 25, "label_counts": {"person": 32}, "object_sample_count": 32}, "중장비": {"bbox_area_ratio_median": 0.024577, "bbox_height_ratio_median": 0.336458, "bbox_height_ratio_p75": 0.375694, "bbox_width_ratio_median": 0.073047, "frame_presence_count": 120, "label_counts": {"crane_mobile": 120}, "object_sample_count": 120}}, "scene_scale_metrics": {"sample_count": 1818, "worker_height_ratio_median": 0.292708, "worker_small_worker_ratio": 0.041804}, "scene_scale_profile": "mixed", "track_kind_counts": {"manual": 4, "pseudo": 0, "real": 1}}, "record_type": "tracking_summary"}
{"anchor_point": null, "cctv_id": "16", "created_at": "2026-05-06T15:39:48", "detail": {}, "event_id": null, "event_message": "안전모 미착용", "event_status": null, "event_type": "no_hardhat_persistent", "frame_idx": 2219, "frame_time": "2026-05-06 15:39:48", "instance_id": "4ba38716", "last_assignment_source": "real_match", "meta": {"gear_name": "안전모", "matched_cover": 0.9397163120567376, "min_cover": 0.35, "stable_frames": 81, "track_kind": "real", "violation_category": "안전모 미착용", "worker_identity_key": ["no_hardhat_persistent", "track_id", "33"]}, "persist_event": true, "record_type": "scenario_event", "scene_scale_profile": "mixed", "stable_frames": 81, "track_id": 33, "track_kind": "real", "zone_id": null, "zone_name": null}
{"anchor_point": null, "cctv_id": "16", "created_at": "2026-05-06T15:39:49", "detail": {}, "event_id": null, "event_message": "안전모 미착용", "event_status": null, "event_type": "no_hardhat_persistent", "frame_idx": 2220, "frame_time": "2026-05-06 15:39:49", "instance_id": "4ba38716", "last_assignment_source": "real_match", "meta": {"gear_name": "안전모", "matched_cover": 1.0, "min_cover": 0.35, "stable_frames": 46, "track_kind": "real", "violation_category": "안전모 미착용", "worker_identity_key": ["no_hardhat_persistent", "track_id", "35"]}, "persist_event": true, "record_type": "scenario_event", "scene_scale_profile": "mixed", "stable_frames": 46, "track_id": 35, "track_kind": "real", "zone_id": null, "zone_name": null}
{"cctv_id": "16", "created_at": "2026-05-06T15:39:58", "instance_id": "4ba38716", "payload": {"active_detection_counts": {"굴착기": 1, "안전모 미착용": 1, "작업자": 1, "중장비": 1}, "analysis_flags": {"summary_due": true}, "frame_counters": {"assigned_from_manual_pool": 4, "reconciled_to_real": 3, "tracker_update_calls": 1, "unmatched_objects": 4}, "frame_idx": 2280, "lifetime_counters": {"assigned_from_manual_pool": 5570, "assigned_from_recent_track": 6, "fall_candidate_accepted_prev_track": 4, "fall_candidate_no_prev_worker_context": 98, "fall_candidate_rejected_duplicate_base": 75, "fall_candidate_rejected_no_support": 194, "fall_candidate_seen": 273, "pseudo_created": 136, "pseudo_promoted_to_manual": 57, "pseudo_promoted_to_real": 4, "pseudo_reused": 89, "real_match_assigned": 1449, "reconciled_to_real": 5244, "tracker_online_targets": 1469, "tracker_removed_tracks": 31, "tracker_update_calls": 2280, "unmatched_objects": 5862}, "scenario_analysis": {"_execution": {"_resolved_scenarios": ["falldown_detected", "no_hardhat_persistent"], "falldown_detected": {"returned_event_count": 0, "status": "returned_events"}, "no_hardhat_persistent": {"returned_event_count": 0, "status": "returned_events"}}, "no_hardhat_persistent": {"active_violation_count": 0, "current_violation_count": 0, "pseudo_min_stable_frames": 3, "recovered_violation_count": 0, "recovery_grace_seconds": 2.0}}, "scene_metrics": {"굴착기": {"bbox_area_ratio_median": 0.552626, "bbox_height_ratio_median": 0.777083, "bbox_height_ratio_p75": 0.777778, "bbox_width_ratio_median": 0.711719, "frame_presence_count": 120, "label_counts": {"excavator": 128}, "object_sample_count": 128}, "안전모 미착용": {"bbox_area_ratio_median": 0.001994, "bbox_height_ratio_median": 0.060764, "bbox_height_ratio_p75": 0.061458, "bbox_width_ratio_median": 0.032813, "frame_presence_count": 103, "label_counts": {"no_helmet": 103}, "object_sample_count": 103}, "작업자": {"bbox_area_ratio_median": 0.005108, "bbox_height_ratio_median": 0.185764, "bbox_height_ratio_p75": 0.188889, "bbox_width_ratio_median": 0.028223, "frame_presence_count": 119, "label_counts": {"person": 258, "small_worker": 3}, "object_sample_count": 261}, "중장비": {"bbox_area_ratio_median": 0.037502, "bbox_height_ratio_median": 0.361632, "bbox_height_ratio_p75": 0.380208, "bbox_width_ratio_median": 0.102344, "frame_presence_count": 120, "label_counts": {"crane_mobile": 120}, "object_sample_count": 120}}, "scene_scale_metrics": {"sample_count": 2079, "worker_height_ratio_median": 0.270139, "worker_small_worker_ratio": 0.037999}, "scene_scale_profile": "mixed", "track_kind_counts": {"manual": 3, "pseudo": 0, "real": 1}}, "record_type": "tracking_summary"}
{"cctv_id": "16", "created_at": "2026-05-06T15:40:18", "instance_id": "4ba38716", "payload": {"active_detection_counts": {"굴착기": 1, "안전모 미착용": 1, "중장비": 1}, "analysis_flags": {"summary_due": true}, "frame_counters": {"assigned_from_manual_pool": 3, "reconciled_to_real": 3, "tracker_update_calls": 1, "unmatched_objects": 3}, "frame_idx": 2400, "lifetime_counters": {"assigned_from_manual_pool": 6036, "assigned_from_recent_track": 7, "fall_candidate_accepted_prev_track": 4, "fall_candidate_no_prev_worker_context": 98, "fall_candidate_rejected_duplicate_base": 75, "fall_candidate_rejected_no_support": 194, "fall_candidate_seen": 273, "pseudo_created": 150, "pseudo_promoted_to_manual": 64, "pseudo_promoted_to_real": 4, "pseudo_reused": 98, "real_match_assigned": 1482, "reconciled_to_real": 5640, "tracker_online_targets": 1502, "tracker_removed_tracks": 37, "tracker_update_calls": 2400, "unmatched_objects": 6359}, "scenario_analysis": {"_execution": {"_resolved_scenarios": ["falldown_detected", "no_hardhat_persistent"], "falldown_detected": {"returned_event_count": 0, "status": "returned_events"}, "no_hardhat_persistent": {"returned_event_count": 0, "status": "returned_events"}}, "no_hardhat_persistent": {"active_violation_count": 0, "current_violation_count": 0, "recovered_violation_count": 0, "recovery_grace_seconds": 2.0}}, "scene_metrics": {"굴착기": {"bbox_area_ratio_median": 0.551851, "bbox_height_ratio_median": 0.776389, "bbox_height_ratio_p75": 0.777083, "bbox_width_ratio_median": 0.711719, "frame_presence_count": 120, "label_counts": {"excavator": 133}, "object_sample_count": 133}, "안전모 미착용": {"bbox_area_ratio_median": 0.001994, "bbox_height_ratio_median": 0.060764, "bbox_height_ratio_p75": 0.061111, "bbox_width_ratio_median": 0.032813, "frame_presence_count": 115, "label_counts": {"no_helmet": 115}, "object_sample_count": 115}, "작업자": {"bbox_area_ratio_median": 0.005386, "bbox_height_ratio_median": 0.187847, "bbox_height_ratio_p75": 0.229167, "bbox_width_ratio_median": 0.028906, "frame_presence_count": 61, "label_counts": {"person": 150, "small_worker": 3}, "object_sample_count": 153}, "중장비": {"bbox_area_ratio_median": 0.03742, "bbox_height_ratio_median": 0.358681, "bbox_height_ratio_p75": 0.363194, "bbox_width_ratio_median": 0.104883, "frame_presence_count": 120, "label_counts": {"crane_mobile": 124, "tower_crane": 5}, "object_sample_count": 129}}, "scene_scale_metrics": {"sample_count": 2232, "worker_height_ratio_median": 0.258507, "worker_small_worker_ratio": 0.036738}, "scene_scale_profile": "mixed", "track_kind_counts": {"manual": 3, "pseudo": 0, "real": 0}}, "record_type": "tracking_summary"}
{"cctv_id": "16", "created_at": "2026-05-06T15:40:27", "instance_id": "4ba38716", "record_counts": {"scenario_event": 11, "tracking_summary": 20}, "record_type": "session_stop"}
