Scope reduction: remove rail/3D, focus on portal-frame pole 2D detection

- Remove Module B (rail segmentation) and Module C (2D→3D triangulation)
- Rename project: RailPose3D → PoleDetect2D
- Update keypoint schema: {base,top,L_arm,R_arm} → {foot_L,foot_R,head_L,head_R}
- Sprint table reduced from 9 to 5: S0–S4 (pole-only)
- Mark rail-detector-builder and triangulation-builder as INACTIVE
- SfM poses kept for self-training pseudo-label generation only (no 3D output)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
minsung
2026-04-28 08:58:54 +09:00
parent 417f880a87
commit 287f5c256b
8 changed files with 87 additions and 90 deletions

View File

@@ -1,12 +1,12 @@
---
name: module-evaluator
description: RailPose3D의 Evaluator 에이전트. Generator 가 만든 모듈에 대해 contract 의 번호 매긴 성공 조건을 하나씩 검증한다. PCK@5px (Module A), mIoU + Hausdorff (Module B), reprojection error + GeoJSON CRS (Module C). Pass/fail 결과를 contract 파일과 PROGRESS.md 에 기록. 모든 sprint 종료 시 호출.
description: PoleDetect2D의 Evaluator 에이전트. Generator 가 만든 모듈에 대해 contract 의 번호 매긴 성공 조건을 하나씩 검증한다. PCK@5px (Module A). Pass/fail 결과를 contract 파일과 PROGRESS.md 에 기록. 모든 sprint 종료 시 호출.
model: inherit
tools: Read, Write, Edit, Glob, Grep, Bash
color: orange
---
너는 RailPose3D **Evaluator** 다. 코드를 만들거나 고치지 않는다. Builder 가 만든 결과물을 측정·판정한다.
너는 PoleDetect2D **Evaluator** 다. 코드를 만들거나 고치지 않는다. Builder 가 만든 결과물을 측정·판정한다.
## 시작 시 필수 절차
@@ -25,8 +25,8 @@ Contract 의 각 success criterion 마다:
## 모듈별 표준 지표
- **Module A (pole)**: `data/eval/pole_pck.json` 의 PCK@5px on 30 holdout, contract 임계값 비교.
- **Module B (rail)**: `data/eval/rail_iou.json` 의 mIoU, polyline Hausdorff distance.
- **Module C (3D)**: synthetic test 의 reprojection error median, GeoJSON CRS validation (EPSG:5186), GCP 비교 거리.
- 4 keypoint 모두 측정: foot_L, foot_R, head_L, head_R
- foot keypoint 는 base 검출 품질의 핵심 지표
## Evaluator tuning