🛣️

Classification, Detection, Segmentation. 나만의 공부 로드맵.

Date
2020/07/30
Tags
Comp. Vision
Tutorial
ML/DL
Created by
Table of Contents

Classification, Detection, Segmentation

컴퓨터 비전에서 자주 다루는 태스크를 크게 세 가지로 분류해볼 수 있다.
Classification은 단순한 이미지 분류. 이미지가 어떤 클래스인지 판별한다.
Object Detection은 객체 검출을 말한다. Classification보다는 좀 더 고차원의 Task라고 볼 수 있다. 이미지 속에 어떠한 Class가 어디에 위치해 있는지까지 판별.
Instance Segmentation은 Object Detection에서 박스(Bounding box)로 구별하는 대신 Segmentation까지 수행해야 한다. 픽셀별로 어떤 카테고리에 속하는지, 어느 Instance인지 구분할 수 있어야 한다. (Cat 1인지 Cat 2인지 등등...)

대표적인 딥러닝 모델들

사실 위에서 설명한 태스크들은 꼭 딥러닝이 아니더라도, 이미지 프로세싱 분야의 전통적인 방법으로도 연구되어온 알고리즘들이나 메소드들이 많다. 상황에 따라, 꼭 딥러닝을 수행해야 하는 것은 아니다. 딥러닝만이 무조건 답이 아니라는 것을 꼭 짚고 넘어가면 좋겠다.
Classification
CNN을 필두로 한 모델들이 대부분이다.
LeNet, AlexNet.
Inception 구조를 가지는 GoogleNet
VGGNet, ResNet.
Object Detection
2 Step Models (Two-Shot Method): R-CNN 계열 모델들(R-CNN, Fast R-CNN, Faster R-CNN, SPPNet, ...)이 이에 해당한다. Region Proposal 과정이 수반된다.
1 Step Models (Unified Detection, Single-Shot Method): 대표적으로 YOLOSSD가 이에 해당한다. Region Proposal을 아예 거치지 않고 Detection을 수행한다.

공부 순서

나는 아래 순서대로 공부했지만, 이것이 꼭 절대적인 공부 순서는 아니다.
Classification
VGGnet → Googlenet → Resnet → Inceptionv3 → Densenet → WRN → MobileNet → ResNext
Object Detection
R-CNN → (SPPNet) → Fast-RCNN → Faster-RCNN → YOLO v1 → SSD → FPN

Reference