R-CNN

Younghwan Cha·2022년 10월 14일
0

ML

목록 보기
15/18

R-CNN

Object Detection 분야에 Deep Learning 을 최초로 적용시킨 모델인 R-CNN 에 대해서 알아보자.

Object Detection?

Object Detection이란 한 물체(single object)가 아닌 여러 물체(Multiple objects)에 대해 어떤 물체인지 클래스를 분류하는 Classification 문제와, 그 물체가 어디 있는지 박스를 (Bounding box) 통해 위치 정보를 나타내는 Localization 문제를 모두 포함한다.

즉, Object Detection 이란 Multiple Object 에 대한 Multi-Labeled Classification + Bounding Box Regression( Localization ) 이라고 할 수 있겠다.

https://velog.io/@whiteamericano/R-CNN-%EC%9D%84-%EC%95%8C%EC%95%84%EB%B3%B4%EC%9E%90

Deep Learning을 이용한 Object Detection은 2014년(실제 논문은 2013년 11월)을 기준으로 나타나기 시작하였으며 크게 1-stage Detector와 2-stage Detector로 구분할 수 있다.

가운데 수평 화살표를 기준으로 위 쪽 논문들이 2-stage Detector 논문들이고,
아래 쪽 논문들이 1-stage Detector 논문들이다.
Object Detection문제는 앞에서 말했듯이 물체를 식별하는 Classification 문제와, 물체의 위치를 찾는 Localization 문제를 합한 것인데,

1-stage Detector는 이 두 가지 task를 동시에 행하는 방법이고,
2-stage Detector는 이 두 문제를 순차적으로 행하는 방법이다.
따라서 1-stage Detector가 비교적으로 빠르지만 정확도가 낮고 2-stage Detector가 비교적으로 느리지만 정확도가 높다.

2-stage Detector에는 R-CNN부터 Fast R-CNN, Faster R-CNN같은 R-CNN 계열이 대표적이다.
1-stage Detector에는 YOLO(You Only Look Once)계열과 SSD 계열 등이 포함된다.

R-CNN 의 구조

R-CNN의 기본적인 구조는 2-stage Detector라고 한 것처럼 전체 task를 두 단계로 나눌 수 있는데, 우선 물체의 위치를 찾는 Region Proposal, 그리고 물체를 분류하는 Region Classification 이다. 이 두 가지 task를 처리하기 위해 수행되는 R-CNN의 구조를 총 네 가지 모듈로 나눠서 살펴볼 것이다.

  1. Region Proposal
  2. (pre-trained) CNN
  3. SVM
  4. Bounding Box Regression
profile
개발 기록

0개의 댓글