# FALL R2 깊이 방향 후보 비교

2026-11-01 KST / ltb1021 / CPU 격리 비교 완료, 사용자 검토 대기.
R1과 운영 FALL/FIGHT는 보존했다. 모델/Pose/Tracking 재추론, 영상/클립 제작, Runtime 통합, 채택, 실제 Event 전송은 하지 않았다.

## 결과

아래는 사용자가 제공한 대략적인 쓰러짐 참고 구간의 현재 조건 충족 관측 수다. 유지 화면이나 Event 수가 아니며 정확도/재현율을 뜻하지 않는다.

| 입력 | 참고 관측 | R1 유효 근거 관측 | R1 현재 | R2 현재 | 추가/제거 |
| --- | ---: | ---: | ---: | ---: | ---: |
| 03_camera27 | 88 | 88 | 68 | 88 | +20 / 0 |
| 11_KISA | 610 | 572 | 0 | 564 | +564 / 0 |
| 12_KISA | 619 | 613 | 0 | 594 | +594 / 0 |
| 13_KISA | 68 | 28 | 4 | 16 | +12 / 0 |
| 14_KISA | 421 | 416 | 398 | 399 | +1 / 0 |
| 15_KISA | 108 | 71 | 17 | 44 | +27 / 0 |
| 합계 | 1,914 | 1,788 | 487 | 1,705 | +1,218 / 0 |

- 기존 28입력 전체: 9,981관측, 현재 충족 573 -> 1,831, 제거 0. 다른 참고 범주와 미설명 구간이 포함되므로 위 표와 합계가 다르다.
- 자체촬영 C01~C22: 7,060관측 중 비감지 참고의 현재 충족/시험 Event 모두 0 -> 0. 유효 근거 관측 6,604, 부족 456이다.
- L02: 7,261관측 중 R1/R2 현재 충족/시험 Event 모두 0이다. 유효 근거 관측 6,655, 부족 606이다. 근거 부족을 정상 판정으로 세지 않는다.
- Cxx/L02는 같은 원본의 중첩 자료다. 정확한 검토본 Frame이 겹친 2,842곳의 R2 차이는 0이나 독립 검증/동일 Pose 입력/추론 난수 안정성을 뜻하지 않는다.

## 추가 분기

- D1: 넓은 bbox, 짧게 투영된 몸통/다리, 펼쳐진 무릎, 제한된 골반-발목 수직 폭을 함께 요구한다. 기존 공통 50도 대신 이 분기에만 몸통 20도 하한을 사용한다. 주로 11/12의 깊이 방향 관측을 포착했다.
- D2: 넓은 bbox 안에서 어깨가 골반보다 아래이고, 같은 다리의 발목/무릎 배치가 역전된 근거를 함께 요구한다. 지지 억제를 전체 삭제하지 않고 별도 자세 근거를 인정한다.
- R1 OR D1 OR D2를 사람별 계산 후 ROI-any로 합친다. 여러 사람이나 분기의 관절을 섞거나 같은 관측을 중복 가산하지 않는다. 실제 앞/뒤 행동 분류 결과는 아니다.
- 사람 0.25/관절 0.10, 알림 재무장 2초/현재 충족만 cooldown 10초/표시 유지 1초는 고정했다. 상세 시험값은 `conditions.json`, 이유는 `DESIGN.ko.md`다.

## 반드시 남길 한계

1. 15의 기존 core -> R1 제거 14관측 중 복구는 2관측뿐이다. 서기지지 억제 11관측(Frame 133~163, 선택 간격 3)은 복구 0이다. 골반보다 아래인 발목, 굽은 무릎 또는 좁은 bbox가 새 조합도 통과하지 못했다. 17 -> 44는 다른 관측 추가이지 해당 억제 11관측 해결이 아니다.
2. 정답 미확정 구간에도 32관측이 추가됐다: camera27 27개(Frame475 및 반복 구간835~1022), 12번 2개(Frame2182/2185), 14번 3개(Frame1405/1408/1414). 원래 anchor가 대략적이므로 정탐/오탐을 대신 확정하지 않는다.
3. 11/12의 첫 충족은 Frame271/385, 첫 참고 관측 이후 약0.7/2.0초다. 실제 쓰러짐 시작 GT에 대한 지연은 아니다. 15는 첫 충족 Frame169가 그대로이고, 참고 구간 최장 미충족 관측 간격은 3.5 -> 2.3초다.
4. 전신 또는 두 다리를 모두 요구하지는 않지만 새 분기는 최소 한쪽 골반-무릎-발목 유효 조합이 필요하다. 누락 시 R1만 남으며 입력 부족을 추정으로 채우지 않는다.
5. 영상 투영 기반 가설이라 같은 모양의 앉기/쪼그림/가림, 다른 카메라 각도에서 오판 가능성이 남는다. 이번 자료의 특징을 보고 설계했으므로 독립 검증이 아니다. 14의 ROI 충족은 전원 감지를 의미하지 않는다.

## 시간·Tracking·Event

- 표시 17,242관측과 실제 선행 준비 157관측을 구분했다. 기존28 R1은 저장 결과 그대로 재사용했다. L02에만 고정 R1을 독립 시작점에서 새 CPU 계산했다.
- L02는 L01_P02이며 L02 Frame = L01 Frame - 2542, 시작 PTS105.352669다. sample/10 시간 대체나 P01 연결은 하지 않았다. `frame_correspondence.csv`를 따른다.
- camera27/14/L02는 저장 T10, 나머지26개는 기존 R1에서 만든 파생 T30을 그대로 재사용했다. 이번 Tracking 실행은 0이다.
- 기존28 표시 구간 시험 Event는 10 -> 22다. 11/12가 각6건 추가되고 camera27은 3건 수가 같지만 위치가 이동했다. 선행 준비 구간의 새 근거도 cooldown 시각에 영향을 준다. 현재 조건 보존과 Event 위치 보존은 다른 항목이다.
- 모든 Event는 mock이다. 실제 HTTP/아티팩트/중복 저장/브라우저 알람을 시험하지 않았다.

## 파일 안내

- `input_comparison.csv`, `comparison.json`: 입력/기대 범주별 분모와 변화.
- 입력별 `data/R2_diagnostics.jsonl`: 저장 R1, 추가 기하, 조건별 통과/탈락, R2 현재/표시/Event.
- 입력별 `frame_lists.json`, `condition_runs.json`: 현재/추가/제거/시험 Event의 전체 위치와 실제 PTS 지속 구간.
- `reference_continuity.json`, `event_frame_changes.json`, `unlabelled_additions.json`: 공백/지연, Event 이동, 미확정 추가 위치.
- `case_comparison.json`, `Cxx_L02_correspondence.json`, `frame_correspondence.csv`: 사례 및 원본/검토본/L02 대응. 겹치는 사례 수를 합산하지 않는다.
- `residual_15.json`: 서기지지 억제 11관측의 실제 추가 조건 탈락과 기하.
- `validation/`: 합성24검증, 전체 대응/정책/지문 감사, 운영 제한 확인, 전송 manifest.

원시 cache/모델은 원래 위치에 그대로 있다. 새 비교 결과는 양 서버의 `2026-11-01_contextra-fall-depth-29clips_r01`에 보존한다. 이번에는 Windows 영상 폴더를 만들지 않았다.
