컴퓨터비젼
객체 검출 (Object Detection)
by 3in9u
2025. 3. 27.
📍 1. 객체 검출이란?
이미지 속에서
(1) 객체가 어디 있는지 (Bounding Box)
(2) 그게 무엇인지 (Classification)
을 동시에 수행하는 컴퓨터 비전 기술!
💡 예시:
- 고양이 얼굴이 있는 위치를 찾고 → "고양이"라고 분류
- 자율주행 자동차가 → 보행자, 차선, 신호등을 인식
📍 2. 객체 검출 모델 분류
구분설명대표 모델
| Two-Stage Detector |
① 후보 영역 제안 → ② 분류 및 위치 조정 |
R-CNN, Fast R-CNN, Faster R-CNN |
| One-Stage Detector |
바로 CNN이 위치 + 클래스 예측 |
YOLO, SSD, RetinaNet |
🔧 Two-Stage Detector 계열
🧠 특징:
- 정확도 높음 (속도는 느림)
- 복잡한 구조 → 단계별로 수행
✅ R-CNN 구조 (2014)
- Region Proposal:
Selective Search로 후보 영역(ROI) 찾기
- Feature Extraction:
각 영역을 CNN(AlexNet)으로 특징 벡터 변환
- Classification:
SVM으로 분류
- Bounding Box Regression:
위치 미세 조정
📉 단점: 너무 느리고 비효율적 (각 영역마다 CNN 수행)
✅ Faster R-CNN (2015)
R-CNN의 느림을 개선한 구조
- CNN Backbone → 이미지 특징 추출
- RPN (Region Proposal Network)
- Selective Search 대신 CNN으로 후보 영역 생성
- Anchor Boxes 사용 → 다양한 크기, 위치 고려
- ROI Pooling + Classifier
- 후보 영역을 바탕으로 클래스 예측 + 박스 조정
⚡ One-Stage Detector 계열
🧠 특징:
- 속도 빠름, 실시간 처리 가능
- 정확도는 Two-Stage보다 낮을 수 있음 (계속 개선 중)
✅ 대표 모델들
모델특징
| YOLO (You Only Look Once) |
이미지를 격자로 나누고, 박스 + 클래스 동시 예측 |
| SSD (Single Shot Multibox Detector) |
다양한 크기의 박스를 여러 계층에서 동시에 예측 |
| RetinaNet |
One-stage인데도 높은 정확도! → Focal Loss 도입 |
📦 핵심 개념 요약
구성 요소설명
| Bounding Box |
객체 위치를 나타내는 사각형 |
| Classification |
객체가 어떤 클래스인지 예측 |
| Anchor Box |
다양한 크기와 비율의 기준 박스 |
| IOU (Intersection over Union) |
예측 박스와 정답 박스의 겹친 정도 |
| RPN |
후보 영역을 CNN으로 뽑는 네트워크 (Faster R-CNN) |
🎯 객체 검출 흐름 요약
[이미지 입력]
↓
[Backbone CNN (ex. ResNet)]
↓
[→ RPN → ROI Align → Classifier] ← Two-Stage 방식
[→ 직접 Class + Box 예측] ← One-Stage 방식 (YOLO, SSD 등)
📚 정리 요약표
구분방식속도정확도대표 모델
| Two-Stage |
Region Proposal → Class |
느림 |
높음 |
R-CNN, Faster R-CNN |
| One-Stage |
바로 예측 |
빠름 |
중~상 |
YOLO, SSD, RetinaNet |