CONTEXTRA · AI 서버2 | 시나리오 설정 참고 · S1 · S2 · S3 · S4

시나리오 설정의 공통 원칙

Web에서 AI로 전달되는 설정의 의미를 정리한 참고서입니다. 설치된 AI 계약 기준이며, Web 화면의 항목명·노출 여부는 담당자 확인이 필요합니다.

1. 세 가지를 먼저 확인

항목의미 / 변경 효과
시나리오 On/Off카메라별 해당 이벤트 판정을 켜거나 끕니다. 다른 시나리오는 별도입니다.
ROI판정할 영상 영역입니다. 현재 같은 카메라·같은 시나리오는 ROI1개를 사용합니다.
신뢰도 confidence0~1. 높이면 더 확실한 검출만 사용하고, 낮추면 약한 검출도 사용합니다.
cooldown_seconds동일 채널·시나리오 이벤트의 최소 간격. 0~300초, 미지정 시 서버 기본10초.

2. 설정을 바꾸는 순서

현재 값을 기록 → 한 항목만 변경 → Web에서 저장 후 Stop/Start → 같은 영상에서 표시·경고 확인. Web의 저장만으로 실행 중 AI에 반영됐다고 가정하지 않습니다.

3. cooldown은 이벤트 간격

판정에 필요한 체류시간과 다릅니다. 10초로 설정해도 조건이 유지되는 동안 반드시 10초마다 재발행되는 것은 아닙니다. 시나리오별 해제·재무장 조건도 함께 적용됩니다.

4. 기본값의 의미

다음 표의 기본값은 AI 코드 기본값입니다. 기존 카메라 저장값이나 Web이 보내는 유효한 값이 있으면 달라질 수 있습니다. 잘못된 선택 설정은 무시되거나 기존값으로 복귀할 수 있으므로 저장 결과를 확인합니다.

아래 영문 이름은 Web→AI parameters의 필드명입니다. Web 화면에 없는 항목을 서버 보호 파일에 직접 추가하지 마세요.

CONTEXTRA · AI 서버2 | 시나리오 설정 참고 · S1 · S2 · S3 · S4

침입·배회·쓰러짐·싸움

기본값에서 시작하고 영상에 맞게 한 항목씩 조절합니다.

시나리오 / 필드기본값의미
침입 INTRUSION
person_confidence
0.5사람 검출 신뢰도
dwell_seconds / grace_seconds0.5초 / 0.5초ROI 체류 판정시간 / 관측 공백 허용시간
rearm_seconds1초ROI 밖 관측이 유지되어 새 이벤트를 허용할 시간
배회 LOITERING
person_confidence
0.5사람 검출 신뢰도
dwell_seconds / grace_seconds5초 / 1초배회 판정까지 체류시간 / 관측 공백 허용시간
rearm_seconds1초ROI 밖 관측 후 재무장 시간
쓰러짐 FALL
person_confidence / pose_confidence
0.25 / 0.15사람 / 관절 검출 신뢰도
down_angle_deg60도몸통이 수직에서 기울어진 각도 기준
recovery_hold_seconds1초회복 자세의 유지시간
싸움 FIGHT
person_confidence / pose_confidence
0.25 / 0.15사람 / 관절 검출 신뢰도
pair_distance_ratio1.2사람 크기로 정규화한 접근 거리 기준
pair_close_hold_seconds0.5초근접 상태 유지시간
arm_motion_ratio / required_bursts0.30 / 2회팔 움직임 기준 / 반복 동작 횟수

짧은 예시

배회가 너무 빨리 발생하면 dwell_seconds를 5초에서10초로 높입니다. 쓰러짐은 각도 하나만으로 판정하지 않으므로 임의로 낮추기보다 영상·검출 상태를 먼저 확인합니다.

싸움은 근접·팔 움직임의 규칙 기반 판정입니다. 실제 싸움 여부에 대한 판단을 대신하지 않습니다.

CONTEXTRA · AI 서버2 | 시나리오 설정 참고 · S1 · S2 · S3 · S4

화재·연기

불꽃과 연기를 각각 관측하며, 둘 중 하나가 조건을 충족하면 FIRE 이벤트를 판정합니다.

필드기본값의미 / 변경 효과
flame_confidence0.5불꽃 검출 신뢰도
flame_window_seconds2초불꽃 관측 구간. 늘리면 더 긴 관측 필요
flame_positive_ratio0.6관측 구간의 불꽃 긍정 비율 기준
smoke_confidence0.5연기 검출 신뢰도
smoke_window_seconds2초연기 관측 구간
smoke_positive_ratio0.6관측 구간의 연기 긍정 비율 기준
clear_seconds5초불꽃·연기 모두 음성으로 연속 관측될 때 해제 시간
cooldown_seconds10초다음 FIRE 이벤트의 최소 간격

짧은 예시

반짝임 때문에 불꽃 판정이 잦다면 불꽃 신뢰도를 0.5에서0.6으로 올리고 같은 영상으로 확인합니다. 불꽃과 연기의 값을 동시에 바꾸지 않습니다.

해제와 영상 중단은 다릅니다

입력 중단이나 누락 Frame을 “불꽃·연기 없음”으로 세지 않습니다. 영상이 멈췄는데 경고가 즉시 해제되지 않는 경우 입력 상태부터 확인합니다.

관측 구간·비율 등은 서로의 유효 조건을 만족해야 합니다. 잘못된 조합은 적용되지 않을 수 있습니다. 화재 감지 기능을 법정 안전설비 대신 사용하지 않습니다.

CONTEXTRA · AI 서버2 | 시나리오 설정 참고 · S1 · S2 · S3 · S4

군중 인원·밀도·위험 경고

ROI 안에서 검출된 head 수가 기준입니다. person 수는 참고용입니다.

1. 다섯 개의 필수 설정

필드기본/예시의미
reference_count50명밀도 계산의 기준 인원. 양의 정수
safe_ratio0.25수신·보존하되 현재 상태 구분에는 사용하지 않음
caution_ratio0.50주의 시작 기준
warning_ratio0.75경고 시작 기준
danger_ratio0.90위험 시작 기준, Event 발생 조건

군중 On으로 요청할 때 다섯 값을 모두 보내야 합니다. 누락·잘못된 값이면 군중 이벤트가 적용되지 않습니다. 비율 설정은0~1이며 주의 < 경고 < 위험이어야 합니다.

2. 밀도 = ROI head 수 ÷ 기준 인원

상태위 예시에서 밀도 구간인원 예시
SAFE 안전0.50 미만20명 → 0.40
CAUTION 주의0.50 이상 0.75 미만30명 → 0.60
WARNING 경고0.75 이상 0.90 미만40명 → 0.80
DANGER 위험0.90 이상45명 → 0.90

60명이라면 밀도1.20입니다. 실제 밀도는1을 넘을 수 있으며 사람/㎡ 단위의 물리적 밀도가 아닙니다.

3. 경고와 표시

DANGER에서만 Event를 발생시키며, 같은 위험 상태가 계속되면 반복 발행을 억제합니다. 안전·주의·경고는 Frame 상태 정보로 전달됩니다. 신뢰도 기본값은 head_confidence=0.45, person_confidence=0.45입니다.