Contextra 싸움 엔진 A/B 격리 검토 (2026-10-28) 6입력 폴더마다 A_IDPair_Review.mp4와 B_ROISpatial_Review.mp4가 있습니다. 권장 순서: 01_camera24 -> 07 -> 08 -> 06 -> 04_camera29 -> 02_camera22. 영상은 동일한 기존10FPS 관측·원본Frame/PTS로 제작했습니다. 새 추론/Tracking 없음. 이번 비교의 의미 - A: 기존 운영 엔진의 ID 쌍/시간창/episode 구조를 참고한 격리 개선 prototype입니다. 운영 코드를 그대로 실행한 무수정 baseline이나 배포 가능한 adapter가 아닙니다. - B: 짧고 명확한 공간 대응을 사용하는 ROI prototype입니다. 영구 Tracking ID를 만들지 않습니다. - 두 안의 공통 특징/판정값은 같습니다. A는 실제 T가 있는 객체만, B는 미추적 후보도 사용합니다. - A는 쌍별 episode와 전체2초 cooldown, B는 ROI episode와2초 cooldown입니다. 집계 단위가 다르므로 이벤트 건수만으로 어느 쪽이 더 정확하다고 비교하지 마세요. - 카메라24 운영값 사람0.15/관절0.30 대신 이번에는 합의한 사람0.25/관절0.10을 사용합니다. 기존 운영판 대비 단일 변수 효과나 정확도 개선을 입증하는 시험은 아닙니다. 화면 읽기 - 회색 bbox와 옅은 skeleton은 입력 참고입니다. 관절0.05~0.10은 참고색이며 판정 근거가 아닙니다. - A 빨간 bbox: 해당 ID 쌍의 현재 조건 또는 짧은 표시 유지 상태입니다. - B 빨간 테두리: ROI 전체 표시 상태입니다. 특정 사람을 싸움 당사자로 확정하지 않습니다. - T는 기존 cache의 실제 ID, q는 해당Frame 출력 칸, S는 시험용 짧은 공간 상태 번호입니다. - 현재 규칙/새 시험 이벤트/누적/선행 이벤트/표시 유지를 구분합니다. - 표시 구간 전에 최대3초의 실제 과거 cache를 처리합니다. 선행 이벤트가 있을 수 있습니다. 새 이벤트가0건이어도 현재 규칙 충족/표시 유지가 없다는 뜻은 아닙니다. - 오른쪽 상세3쌍은 현재 조건충족 -> 표시유지 -> 원래쌍순입니다. 이는 표시 우선순위일 뿐 판정 대상 필터가 아닙니다. 전체 원시 진단은 data에 있습니다. - 준비/관절 부족/연결 모호/미충족은 정상 행동 확정이 아닙니다. 공통 1차 시험 규칙 (최적값 아님, 영상별 튜닝 없음) - 유효 몸통은 어깨/엉덩이 양쪽 중간 또는 한쪽의 유효 조합으로 구성합니다. - 팔 동작은 유효 어깨·손목을 요구하고 팔꿈치는 필수가 아닙니다. 8관절 전체를 요구하지 않습니다. - 몸통 길이로 정규화한 어깨 대비 손목 변화로 몸 전체의 평행 이동 영향을 줄입니다. - 근접: 중심 거리/평균 몸통 길이<=1.8. 근접 자체로 이벤트를 만들지 않습니다. - 증거창1초, 실제 과거 팔 비교 약0.2초, 근접 관측0.3초부터 타격형 pulse를 인정합니다. - STRIKE: 상대 팔 변화>=0.18, 상대방 방향 변화>=0.10, 거리 감소>=0.04, 손-상대 몸통 거리<=1.25를 충족한 상승 pulse가1초 안에2회 이상이고 현재도 해당 조건일 때입니다. pulse는 계산 조건의 상승 전환이지 실제 주먹질 횟수 정답이 아닙니다. - PUSH_GRAPPLE: 손-상대 몸통 거리<=1.0 접촉 관측0.4초 이상, 팔 변화>=0.07와 상대 몸통 관계 변화>=0.08인 동적 접촉0.2초/3관측 이상이며 현재도 동적 접촉일 때입니다. - STRIKE 또는 PUSH_GRAPPLE 중 하나라도 충족하면 조건 충족입니다. 실제 행동 분류 정답은 아닙니다. - 새 시험 이벤트 cooldown2초, 표시 유지0.4초, 관측된 조용한 구간2초로 재무장합니다. - 누락은 조용한 구간으로 세지 않습니다. 프레임 간격0.15초 초과는 동작 이력을 준비 상태로 돌립니다. 누락된 시간을 접촉 시간으로 더하지 않습니다. 불확실한 상태 만료도 정상 판정과 구분합니다. - B는 이전 공간 상태와 중심/크기 대응이 명확할 때만 연결하며 모호하면 이력을 이어붙이지 않습니다. 공간 대응 유예0.3초, 새 영구ID/동일인 복구 보장은 없습니다. - 모든 상수는 conditions.json 및 입력별 engine_summary.json에 보존했습니다. 검토 경계 - 전체화면을 공통 평가 ROI로 사용합니다. 정답 위치로 사람을 선별하지 않았습니다. - 군중/화재는 사용자 제공 비싸움 비교자료입니다. 다인 싸움 기능 확대가 목적이 아닙니다. - 05/10/14 및 자체 촬영 자료는 이번에 추가하지 않았습니다. 필수 수용 구간은 사용자 지정 대기입니다. - 에이전트는 영상 의미/정오탐/우열을 시각적으로 판단하거나 결과에 맞춰 조건을 재조정하지 않았습니다. - 합성 입력 검사는 규칙/상태 계약 검증이지 실제 영상 정확도 검증이 아닙니다. - 처리시간은 cache 기반 CPU 엔진 단계의 참고값이며 디코딩/Pose/Tracking/전송 포함 실시간10FPS 보장이 아닙니다. - 운영 엔진/채널/설정/모델/Web Event는 변경하지 않았습니다. 모든 이벤트는 파일 내 시험 표시뿐입니다. 피드백 예시 - 입력: 01_camera24 / 선호: A 또는 B 또는 둘 다 보류 - 기대한 곳에서 표시되는지: - 불필요하게 표시되는 곳: - 깜빡임/유지시간/설명 가독성: - 추가 질문: