R-CNN 논문 리뷰
R-CNN은 기존의 슬라이딩 윈도우 기반 탐지 방식을 대체하며, CNN과 Region Proposal의 결합을 통해 객체 탐지의 성능과 효율성을 동시에 개선하며 딥러닝을 기반으로 한 객체 탐지 알고리즘의 새로운 표준을 제시한 연구로 평가는 모델이다.
R-CNN의 전체 구조

-
Region Proposal 생성:
- Selective Search를 통해 약 2000개의 후보 영역을 생성.
- 각 영역은 객체가 있을 가능성이 있는 사각형으로 표현.
-
CNN 특징 추출:
- 각 Region Proposal에서 CNN을 사용해 고수준 특징(Feature)을 추출.
- AlexNet의 CNN 아키텍처를 기반으로 설계.
-
Bounding-Box Regression:
- 초기 경계 상자를 보정하여 더 정확한 위치로 조정.
- CNN에서 추출된 특징을 사용해 선형 회귀 모델 학습.
-
SVM 분류:
- 각 Region Proposal을 클래스별 SVM으로 분류.
- 배경(Background)과 객체를 구분.
-
결과 통합 (Non-Maximum Suppression):
- 중복된 경계 상자를 제거하고 최종 탐지 결과 생성.

Figure4 여섯 개의 pool₅ 유닛에서 활성화된 주요 영역
이 그림은 CNN이 입력 이미지를 분석할 때, 특정 유닛이 어떤 특징에 주로 반응하는지 쉽게 이해할 수 있도록 만들어졌다.
흰색으로 표시된 부분은 각 유닛이 반응한 영역(수용 영역)과 활성화 값(얼마나 강하게 반응했는지)을 보여준다.
일부 유닛은 사람 얼굴(1행)이나 텍스트(4행) 같은 특정 개념에 반응하며, 다른 유닛은 점 배열(2행)이나 빛의 반사(6행)처럼 질감이나 물질의 특성을 감지한다.
주요 용어
1. IoU (Intersection over Union)
- 예측 경계 상자와 실제 경계 상자가 얼마나 겹치는지 나타내는 지표.
- 초기 경계 상자(Predicted Box)와 Ground의 합집합 분의 교집합
IoU=Area of UnionArea of Overlap
2. Selective Search
- 이미지에서 색상, 텍스처, 크기 등의 유사성을 기반으로 후보 영역(Region Proposals)을 생성하는 알고리즘.
3. mAP (Mean Average Precision)
- 모든 클래스에 대해 평균 정밀도를 계산한 값.
mAP=N1i=1∑NAPi
N:클래스의 개수
APi:클래스 i의 Average Precision
4. Region Proposal
- 이미지에서 객체가 있을 가능성이 높은 후보 영역(사각형 박스).
5. CNN (Convolutional Neural Network)
- 이미지의 특징(Feature)을 추출하는 딥러닝 모델.
6. Bounding-Box
7. Non-Maximum Suppression (NMS)
- 중복된 경계 상자를 제거하여 최종 탐지 결과를 개선하는 알고리즘.
8. Precision (정밀도)
- 탐지된 객체 중 실제로 정확한 비율.
Precision=TP+FPTP
9. Recall (재현율)
- 실제 객체 중 탐지된 비율.
Recall=TP+FNTP
10. SVM (Support Vector Machine)
- 분류(Classification)를 수행하는 머신러닝 모델. R-CNN에서 객체 분류에 사용.
11. Bounding-Box Regression
- 경계 상자 위치를 보정하는 알고리즘.
t∗=(wx∗−x,hy∗−y,logww∗,loghh∗)
(x,y,w,h):초기 경계 상자의 중심 좌표와 폭/높이
(x∗,y∗,w∗,h∗):Ground Truth 경계 상자의 중심 좌표와 폭/높이
12. OverFeat
- CNN 기반의 슬라이딩 윈도우 방식 탐지 모델로, 모든 위치에서 CNN을 반복 수행.
13. Intersection over Union (IoU)
- 경계 상자의 겹침 정도를 나타내는 값. IoU ≥ 0.5일 때 올바른 탐지로 간주.
14. AP (Average Precision)
- Precision-Recall 곡선의 면적(AUC)을 계산하여 특정 클래스의 탐지 성능을 평가. $$
\text{AP} = \int_{0}^{1} P(R) \, dR P(R): \text{정밀도와 재현율의 관계 함수}
$$
15. Hard Negative Mining
- 잘못 탐지된 부정 예제(Negative Examples)를 반복적으로 학습에 포함시켜 성능을 개선하는 기법.
주요 수식 정리
1. IoU 계산
- 두 사각형 ( A )와 ( B )의 IoU:
IoU=∣A∪B∣∣A∩B∣
2. Precision과 Recall
- Precision:
Precision=TP+FPTP
- Recall:
Recall=TP+FNTP
3. Bounding-Box Regression
-
후보 영역을 보정하는 회귀 모델:
tx=wax−xa,ty=hay−ya,tw=logwaw,th=loghah
(xa,ya,wa,ha):제안된 후보 영역의 좌표
-
예측된 경계 상자:
x′=txwa+xa,y′=tyha+ya,w′=waetw,h′=haeth
4. mAP 계산
- 모든 클래스의 평균 정밀도:
mAP=N1i=1∑NAPi
N:클래스의 개수
APi:클래스 i의 Average Precision
R-CNN의 주요 성과
- PASCAL VOC 2012:
- mAP 53.3% 기록 (기존 최고 성능 대비 30% 이상 향상).
- ILSVRC 2013:
- OverFeat 대비 우수한 mAP 31.4%.