모델카드 — 균열 검출
의도된 사용 · 학습데이터 · 평가지표 · 한계 · 책임있는 사용
Model Card — 균열 Dense-Segmentation (crack dense-seg)
검증가능 정직성 자산(Track C). 대부분의 벤더는 공개 벤치·모델카드를 내지 않는다 — 우리는 낸다, 약한 수치까지 포함해서.
작성 2026-07-08. 벤치: CrackSeg9k(Harvard Dataverse DOI:10.7910/DVN/EGIEBY, ECCV-W 2022).
1. 모델 개요
- 아키텍처: U-Net (encoder = EfficientNet-B4, ImageNet init), 이진 시그모이드 dense-seg (픽셀당 crack/배경).
- 추론: 슬라이딩윈도우 타일링(가우시안 가중 병합) — 고해상 현장 이미지(1920px+)에서 다운스케일 소실 없이 픽셀정확.
- 손실: 복합(Dice + clDice 연결성 + Focal-Tversky) — 균열의 가늘고 연결된 위상 보존.
- 용도상 위치: 검출 1차 스테이지. 후단에 VLM 2차 오탐게이트(맥락판정)로 이음부·그림자·얼룩 오탐 제거([[inspect-service-m1]]).
2. 의도된 사용 / 범위 밖
- 의도: 인프라(교량·터널·하수관로) 표면 균열의 픽셀 세그먼트 + 길이·폭·심각도 정량화. 점검자-보조(자율판정 아님) — 산출은 점검자 검토 대상.
- 범위 밖: 자율 안전판정·구조 건전성 최종결론(책임기술자 몫), 균열 외 손상은 별도 다중결함 모델. 학습분포와 크게 다른 표면은 성능저하(§6).
3. 학습 데이터
- 배포 모델(bridge): 자사 교량 도메인 데이터(현장 드론/스캔). 시설별 어댑터 정책([[crack-dense-seg-win]]).
- 본 벤치용 in-domain 모델: CrackSeg9k train 8,249장(하위셋 층화). CrackSeg9k = 10개 공개셋(Crack500·DeepCrack·SDNET·CrackTree·GAPS·Volker·Rissbilder·Noncrack·Masonry·Ceramic) 통합·정제, 400×400, binary mask.
4. 평가 — 데이터·지표
- 벤치: CrackSeg9k test 455장(하위셋 층화 90/5/5, seed 42, 학습 미노출). noncrack 70장 포함(오탐 측정).
- 지표(논문 동일 = 공정비교): pixel-level micro(전 픽셀 누적 혼동행렬) mIoU(crack+배경 평균)·Dice/F1·precision·recall. 마스크 이진화 = >127(antialiased 코어).
- 추가(우리 강점, 병기): boundary-tolerant F1@2px(=OmniCrack clIoU 계열)·clDice(연결성) — 균열 위상 품질.
- 기준선(논문 Table 4): SOTA mIoU 0.7712 / F1 0.7238(DeepLabV3+ResNet101+DINO). U-Net 계열 F1 0.50~0.57(Pix2Pix-UNet 0.565, SWIN-UNet 0.501).
5. 정량 결과 (CrackSeg9k test, n=455)
| 조건 |
mIoU |
Dice/F1 |
precision |
recall |
boundaryF1@2px |
clDice |
| (a) cross-domain zero-shot (배포 bridge 모델, 무학습) |
0.529 |
0.164 |
0.601 |
0.095 |
0.300 |
— |
| (b) in-domain (우리 U-Net, val-선택, thr0.5) |
0.772 |
0.721 |
0.664 |
0.789 |
0.813 |
0.762 |
| (b′) in-domain (50ep 최종본, thr0.5) |
0.779 |
0.732 |
0.669 |
0.809 |
0.812 |
0.760 |
| 참조: 논문 SOTA (DeepLabV3+R101+DINO) |
0.7712 |
0.7238 |
— |
— |
— |
— |
| 참조: 논문 U-Net 계열 |
0.64~0.67 |
0.50~0.57 |
— |
— |
— |
— |
해석(정직):
- (a) zero-shot이 낮은 건 결함이 아니라 사실이다. 교량 전용 모델을 다양분포 학술벤치에 blind 적용하면 recall 9.5% — 도메인갭은 실재한다. 이것이 우리가 "순수합성·범용 자율판정"을 팔지 않고 시설별 데이터엔진 적응을 파는 이유다([[business-direction]] [[active-learning-moat]]).
- (b) in-domain = 우리 아키텍처의 실력: plain U-Net(EfficientNet-B4)이 mIoU 0.772/F1 0.721로 논문 SOTA(0.771/0.724)와 동급. 논문 SOTA는 더 무거운 DeepLabV3+ResNet101에 DINO 자기지도 특징을 prior로 얹은 구성 — 우리는 표준 U-Net 하나로 도달. 50ep 최종본은 mIoU 0.779/F1 0.732로 소폭 상회. 임계값 민감도 거의 0(thr 0.3~0.7에서 F1 ±0.002)이라 test-튜닝 무관, 기본 0.5로 보고.
- 경계 위상 품질: boundaryF1@2px 0.81·clDice 0.76 — 픽셀 F1 너머 균열의 연결성까지 확인(논문 미보고 지표, 우리 강점).
6. 한계 · 정직 고지
- ★ split이 논문과 동일하지 않다: CrackSeg9k 공식 test 파티션이 공개 형태로 재현되지 않아, 동일 데이터·동일 90/5/5 비율·동일 지표·동일 이진화로 자체 층화 split(seed 42)을 썼다. 따라서 "동일 테스트셋에서 SOTA를 이겼다"가 아니라 "비교가능한 split·동일 지표에서 공개수치에 도달/상회"가 정확한 주장. 우리 split은 재현가능(스크립트+seed 공개).
- 도메인 의존성: 성능은 학습분포에 강하게 의존. 신규 시설·표면은 소량 재학습(데이터엔진) 전엔 (a) 수준 위험. 배포 시 고객 데이터로 재측정이 원칙(측정-먼저).
- 마스크 임계값: CrackSeg9k 마스크는 antialiased(0 / 251~255 + 엣지 1~15). >127 이진화 사용 — 엣지픽셀 포함여부로 F1 ±1~2%p 변동 가능(값 명시=재현가능).
- micro 지표: 큰 균열이 픽셀수로 가중. per-image macro는 소형균열에 더 엄격(별도 산출 가능).
- noncrack 포함: test에 무균열 70장 — precision/배경 IoU에 반영(오탐 정직 측정).
- 단일 시드: in-domain은 1 시드. 분산은 후속.
7. 책임있는 사용
온프렘·폐쇄망 배포(데이터 외부유출 없음). 점검자-보조 프레임 — 최종 안전판정은 자격 책임기술자. 광고성 단일수치 지양, 운영점·불확실도는 보정된 확률로 제공([[strategy-synthesis-plan]] gate-calibration).
재현
prep_crackseg9k.py(층화 split, seed 42) → bench_crackseg9k.py(pixel micro 지표, thr 스윕) / train_seg.py(in-domain). 산출 crackseg9k_{zeroshot,indomain}.json.