ObjectDetection이란? 기술, 알고리즘 연혁 알아보기
DataScience/ComputerVision

ObjectDetection이란? 기술, 알고리즘 연혁 알아보기

728x90

ObjectDetection이란

ObjectDetection은 컴퓨터비전 분야의 대표적인 기술로 이미지 내에 물체를 인식하고 그 물체가 무엇인지 분류하기 위한 기술이다.

아래 그림으로 자세히 알아보자

이미지를 학습해서 단순히 고양이인지, 강아지인지 구분해주는 모델을 만들면 image Classification 모델을 만든것이고,

두번째와 세번째 사진처럼 물체의 위치를 찾아서 박스(Bounding Box)를 그리고 그 박스 이미지가 어떤건지 Classification해주는 모델을 Object Detection이라고 한다. 

 

그리고 마지막 사진처럼 Bounding Box가 아닌 이미지를 곡선에 맞춰서 자르는 기술은 Image Segmentation 기술이라고 부른다.

1. Bounding Box

Bounding Box란 아래 이미지처럼 하나의 객체 전체를 포함하는 가장 작은 직사각형을 의미한다. 학습데이터로 라벨링된 Bounding Box 값을 학습시키는데, 이 때 값은 (xmin, ymin, xmax, ymax) 혹은 (centerX, centerY, w, h)의 형태로 학습된다. 

주로 R-CNN (xmin, ymin, xmax, ymax), YOLO모델 (centerX, centerY, w, h)로 학습하기때문에 값을 모델에 맞게 맞춰줘야한다.

 

2. RPN(Region proposal Network)

위에서 설명한 Bounding Box는 RPN기술로 학습해서 위치를 찾아낸다. RPN은 객체가 있을 만한 영역들의 후보군(Object Score, Object Proposal)을 여러 개 추출해주는 것을 의미한다. 대부분의 이미지들은 모든 픽셀에 객체를 설명하고 있지 않다. 따라서 객체들을 나타내는 픽셀들만을 찾고 탐지하기 위해 Region Proposal은 객체가 있을 법한 픽셀의 영역을 추출해 추천해주는 방식이라고 볼 수 있다.

Region Proposal 방식에는 대표적으로 'Sliding Window', 'Selective Search' 두 가지 방법이 존재하는데 추후 기회가 있으면 자세하게 포스팅 하겠다.

3. Anchor Box

앵커박스라고도 불리는데 미리 정의된 형태를 가진 경계박스 수를 뜻한다. 아래 연혁에서 다시 확인할 수 있지만  ObjectDetection 모델은 Anchor Based와 Anchor Free 두 가지 방법으로 모델을 만들 수 있다. 이 부분에 대한 설명은 다음 포스팅에서 자세하게 다뤄볼 예정이다.

IoU를 계산해서 가장 높은 IoU를 가지는 box를 선택한다.

4. 모델 아키텍처

위 이미지는 Object Detection의 기본 아키텍처이다. Object Detection Network에서 Feature Map과 Region Proposal이 적절히 매핑을 이룬다. 이 Network에는 R-CNN, Fast RCNN, SSP 등 다양한 모델이 존재한다.  

5. 모델 연혁

Object Detection 모델 연혁을 살펴보면 크게 Anchor Free모델과 Anchor Based 모델로 나뉘어진다. 그리고 Anchor Based모델에서는 One-stage와 Two-stage모델로 나뉘는데, One-stage에서는 Yolo모델이 기본 모델로 사용되고, Two-stage에서는 RCNN기반 모델이 주로 사용되는것을 볼 수 있다.

 

이 부분에 대한 자세한 내용은 추후 포스팅 업로드 예정이다. 

 

Reference

- https://deepbaksuvision.github.io/Modu_ObjectDetection/posts/01_00_What_is_Object_Detection.html

- https://velog.io/@suminwooo/RPNRegion-Proposal-Network-%EC%A0%95%EB%A6%AC

- https://techblog-history-younghunjo1.tistory.com/178

 

728x90