[Object Detection] Faster R-CNN

2025. 8. 6. 13:18·Computer Vision1/Paper reviews

이번에는 Selective Search 시간이 너무 오래 걸리는 Fast RCNN을 NN으로 바꿔서 속도를 줄여보자는 아이디어에서 나온 Faster R-CNN에 대해 리뷰하여 볼것이다.

 

2025.07.17 - [분류 전체보기] - [Object Detection] SPPNet과 Fast R-CNN

 

[Object Detection] SPPNet과 Fast R-CNN

오늘은 Two-Stage Object Detection 모델중 저번 R-CNN에 이어서 SPPNet과 Fast RCNN에 대해 알아보려고 한다.2025.07.10 - [Computer Vision1/Paper reviews] - [Object Detection] Two-Stage Object Detection – R-CNN (Rich feature hierarchies

c0mputermaster.tistory.com

 

https://arxiv.org/abs/1506.01497

 

Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks

State-of-the-art object detection networks depend on region proposal algorithms to hypothesize object locations. Advances like SPPnet and Fast R-CNN have reduced the running time of these detection networks, exposing region proposal computation as a bottle

arxiv.org

Faster R-CNN

 

RCNN, Fast R-CNN (recap)

  • R-CNN
    • 이미지를 입력받아 Selective Search로 Region Proposal(후보 영역)을 먼저 찾음 (~2000개).
    • 각 후보 영역을 CNN에 넣어 특징 추출 → SVM으로 분류, 박스 회귀 수행.
    • 단점: 느림 (한 장 50초 이상). 후보 영역별로 CNN을 돌려야 했기 때문.
  • Fast R-CNN
    • 이미지 전체를 CNN에 한 번 통과 → Feature Map 추출.
    • Selective Search로 얻은 후보 영역을 Feature Map에 투영하여 ROI Pooling 수행.
    • 이후 Fully Connected Layer → Classification + Bounding Box Regression.
    • 장점: End-to-End 학습, 속도 개선.
    • 단점: 여전히 Selective Search가 느림.

Faster R-CNN의 아이디어

  • Selective Search 대신 Region Proposal Network (RPN)을 사용.
  • 즉, 후보 영역을 뽑는 과정도 신경망으로 학습
  • Faster R-CNN = Fast R-CNN + RPN => 같은 백본을 공유하고 Selective Search 빼고는 다 똑같음

Region Proposal Network (RPN)?

 

  • 예: 640×480 이미지 입력 → CNN(VGG) → 20×16 Feature Map (512채널).
  • Feature Map의 각 위치를 Anchor라고 부름 (20×16 = 320개 Anchor).

 

 

각 Anchor마다 다양한 크기/비율의 Anchor Box(기본 박스)를 미리 정의.

  • 예: 9개(3 scales × 3 aspect ratios).
  • 따라서 Anchor Box 총 개수 = 20×16×9 = 2880개.

RPN의 예측

각 Anchor Box에 대해 두 가지를 예측

  1. Objectness Score (객체인지 배경인지 → Binary Classification).
    • 1×1 Conv → 채널 수 18 (= 9 anchors × 2 클래스).
  2. Bounding Box Regression (좌표 보정).
    • 1×1 Conv → 채널 수 36 (= 9 anchors × 4 좌표(x, y, w, h)).

 

 

최종적으로 RPN은 각 Anchor Box에 대해 "이 위치에 객체가 있을 확률" + "Anchor Box가 얼마나 이동/확대/축소되어야 하는가" 를 동시에 예측한다.

 

 

  • 모든 Anchor Box에 대해 Objectness(가장 확률이 높은 박스) + 좌표 보정(얼마나 이동해야하나) → Region Proposal 생성.
  • Confidence 높은 일부만 선택 (나머지 제거).
  • NMS를 통해 겹치는 후보 제거 → 최종 Proposal만 Fast R-CNN으로 전달.

NMS

 

한 객체에 대해 여러 박스가 중첩될 수 있다 그렇게 때문에 겹치는 박스를 제거하는 과정이 필요

  1. Confidence Score 가장 높은 박스 선택.
  2. 나머지 박스와 IOU 계산.
  3. IOU > 0.5 같은 임계치 이상인 박스는 제거.
  4. 남은 박스 중 다음 높은 Score 선택 → 반복.

학습 방식

RPN도 Loss가 필요

총 네 가지 Loss로 학습:

  1. RPN Classification Loss (객체/배경 → Binary Cross Entropy).
  2. RPN Bounding Box Regression Loss (Smooth L1 Loss).
  3. Fast R-CNN Classification Loss (Cross Entropy).
  4. Fast R-CNN Bounding Box Regression Loss (Smooth L1 Loss).

참고) 초기에는 학습이 조금 복잡했다 (원 논문): Alternative Training (4-step)

 

  • Pretrained CNN으로 RPN 학습.
  • 얻은 Proposal로 Fast R-CNN 학습.
  • 다시 고정된 CNN Feature로 RPN Fine-tuning.
  • 최종적으로 Fast R-CNN Fine-tuning.

- 여러번 학습과 frozen을 사용

 

RCNN → Fast RCNN → Faster RCNN의 발전

summary

 

'Computer Vision > Paper reviews' 카테고리의 다른 글

[ILSVRC 논문 정리해 보기] DenseNet, SENet과 대회 그 이후  (0) 2025.09.05
[ILSVRC 논문 정리해 보기] VGGNet, GoogleNet, ResNet  (0) 2025.09.05
[Object Detection] SPPNet과 Fast R-CNN  (0) 2025.07.17
[Object Detection] Two-Stage Object Detection – R-CNN  (0) 2025.07.10
[ILSVRC 논문 정리해 보기] AlexNet (ImageNet Classification with Deep Convolutional Neural Networks)  (0) 2025.05.07
'Computer Vision1/Paper reviews' 카테고리의 다른 글
  • [ILSVRC 논문 정리해 보기] DenseNet, SENet과 대회 그 이후
  • [ILSVRC 논문 정리해 보기] VGGNet, GoogleNet, ResNet
  • [Object Detection] SPPNet과 Fast R-CNN
  • [Object Detection] Two-Stage Object Detection – R-CNN
임승택
임승택
"Hello, I am Lim Seungtaek, a computer engineering student. Nice to meet you!"
  • Lim's Technology
    임승택
    임승택
    "Welcome to Lim's Technology!"
  • 누적 조회수
    총 회
    구독하기
    • 분류 전체보기 (102)
      • Blog (10)
      • Computer Vision (44)
        • Computer Vision (4)
        • Paper reviews (24)
        • Project (8)
        • Basic (8)
      • LLM (8)
        • Paper reviews (3)
        • Project (3)
        • Basic (2)
      • Data Analysis (11)
        • Basic (8)
        • Project (3)
      • Computer Graphics (2)
        • Basic (2)
      • Robotics (5)
        • Paper reviews (3)
        • Basic (2)
      • Technology Notes (15)
      • Memo (5)
  • 인기 글

  • 최근 댓글

  • 최근 글

임승택
[Object Detection] Faster R-CNN
상단으로

티스토리툴바