개발 과정
터널 CCTV 화재 감지 AI 시스템 — 오탐을 줄여, 신뢰를 회복하기까지
화재 탐지에서 가장 위험한 것은 화재 그 자체가 아니라, "또 잘못 울린 경보"일지도 모릅니다.
문제 정의
"없는 불을 있다고 우는 것이 더 위험하다"
터널 환경의 특수성과 한계
터널은 AI 화재 탐지에 있어 가장 까다로운 환경 중 하나입니다.
연기 경계가 불분명하고, 차량 전조등·후미등이 화염과 시각적으로 유사하며,
조명과 반사광이 끊임없이 모델을 속입니다.

2022 과천 제2경인고속도로 터널 화재
- 사망 5명, 부상 56명
- CCTV 미확인으로 초기 대응 지연
- 오탐 누적으로 경보 신뢰도 저하가 사고 확대의 한 요인으로 지적
신뢰도 하락의 악순환 구조
오탐을 줄이는 것이 곧 가장 빠른 화재 대응이라는 역설.
이것이 본 프로젝트의 출발점이자 모든 설계 결정의 기준이 되었습니다.
데이터셋 구성
양보다 품질, 약점은 직접 라벨링 — 오탐 억제의 토대
클래스 설계 및 의도
carlight는 그 자체가 탐지 목적이 아닙니다.
터널 내 전조등·후미등이 fire/smoke로 오인되는 것을 막기 위한 네거티브 보조 클래스로 설계되었으며,
단독 검출 시에는 알림을 발생시키지 않습니다.
데이터 성장 과정 — V1 → V3 → V4

V4 데이터 규모 (현재)
클래스 분포 균형화 (V3 → V4 어노테이션 비중)
V3
V4
carlight 비중을 5% → 23.4%로 끌어올린 것은 단순한 양의 증가가 아닙니다.
모델이 "이것은 화염이 아니다"를 명확히 학습할 수 있도록 의도적으로 만든 균형입니다.
데이터 전략에서 얻은 3가지 교훈
① 데이터의 양보다 품질이 우선이다
초기에 외부 데이터를 단순 추가하는 방식을 검토했으나, 라벨 품질 검증 없이 양만 늘리는 접근은 오히려 성능을 저하시킬 수 있음을 확인했습니다. V3에서는 데이터를 무작정 늘리는 대신 라벨 정제와 도메인 적합 증강에 집중하여 성능을 회복·개선했습니다.
② 약점은 직접 라벨링한 데이터로만 잡힌다
모델의 약점은 자동으로 해결되지 않습니다. V4에서 carlight 클래스의 약점을 발견했을 때, 외부 데이터를 끌어다 쓰는 대신 1,200장을 직접 추가 라벨링하여 어노테이션을 +487% 보강했습니다. 결과적으로 carlight 정확도뿐 아니라 다른 클래스의 오탐까지 동시에 줄었습니다.
③ 평가 데이터셋도 노가다가 필요하다
좋은 데이터는 학습용만 필요한 게 아닙니다. V3 val 셋(133장)으로는 보이지 않던 carlight 약점이, val을 1,406장으로 확장하고 독립 test_300을 구축하고 나서야 드러났습니다. 평가가 부실하면 모델의 약점을 볼 수 없습니다.
데이터 증강 파이프라인
두 번의 도메인 보강 — 모두 오탐 억제를 향한 직접 라벨링
증강 기법 파이프라인
터널 CCTV 환경의 다양한 조도, 거리, 각도 변화에 대응하기 위해 체계적인 증강 파이프라인을 구성했습니다.
두 번의 도메인 보강 — 같은 목표, 같은 방식
V3와 V4의 데이터 보강은 다른 클래스에 적용되었지만, 목표는 동일했습니다 — 오탐 억제. 그리고 두 보강 모두 외부 데이터에 의존하지 않고 직접 라벨링한 데이터였습니다.
Multi-scale 증강의 의미

부수 효과 — 데이터 균형의 간접적 위력

V4에서 carlight 데이터만 보강했을 뿐인데, 다음과 같은 부수 효과가 관찰되었습니다:
한 클래스의 정밀한 데이터 보강이 다른 클래스의 오탐까지 줄였습니다.
오탐 억제는 단일 클래스 튜닝이 아닌, 데이터 전체 구성의 문제입니다.
모델 선정
연기를 놓치지 않는 구조 — RT-DETRv2 채택
구조적 특성 비교
왜 RT-DETRv2인가 — 연기는 화재의 전조다
화재 탐지에서 가장 중요한 신호는 무엇일까요?
불꽃이 아니라 연기입니다.연기가 보이는 순간이 화재 초기 대응의 골든 타임이며,
이 단계를 놓치면 인명 피해로 직결됩니다.
연기의 특성
- 경계가 불분명하다
- 형태가 시시각각 변한다
- 배경과의 대비가 약하다
- 광역으로 확산한다
이런 객체를 정확히 탐지하려면 국소적인 특징이 아니라 전역적인 문맥을 봐야 합니다.
이것이 Transformer 기반의 RT-DETRv2를 채택한 핵심 이유입니다.
정량 검증 — RT-DETRv2 V4 클래스별 성능 (test_300 독립 평가)

속도 한계와 운영 전략
RT-DETRv2는 YOLO 대비 추론 속도가 다소 느립니다. 그러나 운영 전략으로 이 한계를 상쇄합니다.
- 5FPS 다운샘플링 적용동시 다채널 CCTV 모니터링 부담 완화
- 22채널 동시 커버 가능48 FPS ÷ 5FPS = 채널 다중화
- TensorRT FP16 최적화 검토향후 추가 속도 개선 및 동시 처리 채널 확대 가능
"속도를 일부 포기하더라도, 연기를 놓치지 않는다."
이것이 본 시스템의 모델 선정 철학입니다.
NMS-free 구조의 현실과 정직한 대응
RT-DETRv2는 이론상 NMS 후처리가 불필요한 End-to-End 구조입니다.
그러나 실제 추론에서는 학습이 완전히 수렴되지 않은 상태에서 동일 객체에 여러 쿼리가 반응해
중복 bbox가 발생하는 현상이 관찰되었습니다.
NMS-free의 완전한 장점은 희석되었지만,
쿼리 수가 300개로 제한되어 있어 YOLO 대비 NMS 연산 부담은 여전히 현저히 낮습니다.
이 점은 정직하게 기록합니다.
파이프라인 아키텍처
비전 모델 탐지 → VLM 재검증 → 관제센터 보고: 2단 이중 차단 구조
단일 모델 판단에 의존하지 않고, 탐지 결과를 VLM이 재검증하는 2단 구조로 오탐을 이중 차단합니다.

파이프라인 3단계
VLM 게이트 임계값 로직 (test_300 Threshold Sweep 근거)
carlight 단독 검출은 무시되지만, fire/smoke와 동시 검출되는 경우는 confidence와 무관하게 VLM 재검증으로 강제 이동시켜
등화류 혼동발 오탐을 한 번 더 차단합니다.
분기 플로우
4-VM 인프라 구성
반복 개선 과정
V3에서 V4로 — 약점을 발견하고, 직접 라벨링으로 잡다
V3 성과 확인
약 20에폭 부근 mAP50 조기 수렴 확인

V3에서 드러난 한계 (test_300 독립 평가)
V3 val(133장, carlight 81개)은 표본 부족으로 carlight 성능을 과대평가하고 있었습니다.
독립 test_300 평가를 통해서야 carlight AP가 실제로는 0.454에 불과하다는 사실이 드러났습니다.
— 02번 교훈 ③ "평가 데이터셋도 노가다가 필요하다"가 회수되는 순간입니다.
V4 개선 — carlight 정조준 보강

carlight 데이터만 보강했는데 small 객체 AP와 background → smoke 오탐까지 함께 개선되었습니다.
클래스 간 데이터 균형이 모델 전체 품질에 영향을 미친다는 점이 입증된 결과입니다.

test_300 동일 기준 V3 vs V4 (유일한 공정 비교)
fire/smoke 성능은 거의 그대로 유지된 채 carlight만 정확히 개선되어, carlight 보강이 기존 클래스 성능을 희생하지 않았음을 확인했습니다.
V4에서 새롭게 드러난 한계 — 정직한 기록
① Underfitting 패턴
ep12 이후 train loss는 계속 감소하지만 val mAP는 정체되는 패턴이 관찰되었습니다.
imgsz=640 기준에서 모델이 학습 가능한 상한에 근접했음을 의미하며, 에폭 추가만으로는 성능 향상이 어렵습니다.
구조적 개선이 필요합니다.
② 원거리 광범위 연기 미탐
event 21에서 배경에 존재하는 대형 연기 기둥을 V4가 놓치는 사례가 확인되었습니다.
극단적 원거리·저해상도 조건에서의 연기 학습 데이터가 부족했던 것이 원인으로 추정됩니다.
연기 조기 탐지가 본 시스템의 핵심 목적인 만큼, 이 한계는 V5에서 최우선으로 다룰 과제입니다.

확장 로드맵
V4의 한계를 V5의 데이터로 잡는다
버전별 개선 타임라인
V5 데이터 구성 전략 — V4 한계와 1:1 매칭
① 원거리·광역 연기 미탐 잡기 — smoke 도메인 다양화
- 야외 원거리 검은 연기, 광역 확산 연기, 저해상도 입력 케이스 직접 수집
- 실제 화재 사고 CCTV 영상에서 원거리 연기 프레임 큐레이션
- V3 야간 화재 증강(63×5)과 같은 방식으로 smoke의 어려운 케이스를 정조준 보강
- 연기 조기 탐지가 본 시스템의 핵심 목적인 만큼 최우선 과제
② Underfitting 패턴(imgsz=640 상한) 잡기 — 고해상도 라벨링
- imgsz=1280으로 학습하려면 라벨 좌표도 1280 기준으로 정밀해야 함
- 기존 640 기준 라벨 단순 스케일업으로는 부족 — 작은 객체의 bbox를 다시 정밀화하는 재라벨링 필요
- 특히 원거리 화재·연기 초기 발생 케이스의 bbox 정확도 향상에 집중
③ 평가 데이터셋 확장 검토
- test 셋 확장을 통해 원거리 연기·검은 연기·소형 객체 케이스를 균등 분포로 포함
- 평가 단계에서 새로운 약점을 조기 발견하는 체계 마련
- → 02번 교훈 ③(평가 데이터셋 노가다)의 지속적 실천
carlight 클래스 확장 구상 — 오탐 억제에서 교통 관제로
carlight는 V4 보강을 통해 단순 오탐 억제용 네거티브 클래스를 넘어 풍부한 데이터 자산이 되었습니다.
이 자산을 활용해 다음과 같은 기능 확장을 구상 중입니다.
V5 데이터 구성 단계에서 carlight 데이터를 더 다양한 각도·조도·차량 밀집도 조건으로 확장하면,
오탐 억제 강화와 교통 관제 기능 확장을 한 번에 준비할 수 있습니다.
결론 — 오탐을 줄이는 것이 가장 빠른 대응이다
오탐 억제 → 경보 신뢰도 회복 → 실제 화재 대응력 향상
이 프로젝트의 핵심은 단순히 높은 mAP 수치를 달성하는 것이 아닙니다.
운영자가 경보를 믿고 즉각 행동할 수 있는 신뢰받는 AI 시스템을 만드는 것입니다.
"오탐을 줄이는 것이, 결국 가장 빠른 대응이다."
"속도보다 정확도, 정확도보다 신뢰도."
이것이 변하지 않는 본 시스템의 설계 철학입니다.