Yolo

ssonjh·2021년 5월 8일
0

You Only Look Once:

yolo의 특징

  1. 딱 한번만 본다(You Only Look Once)
  2. 지금까지 있던 것들을 합쳤다. (Unified)
  3. 실시간이다.(Real-Time Object Detection)


Faster R-CNN에서 성능을 줄이더라도 속도를 높이자!

Main Concept

  1. Object Detection

    • Regression problem(회귀 분석) : 기대되는 목적값이 continuous 한 연속성을 가지고 있을 때 사용
  2. Yolo

    • Only One Feedforward
    • Global context
  3. Unified (Real-time detection)

    • YOLO : 45FPS
    • Fast YOLO : 155FPS
  4. General representation (없어도될듯..?)

    • Robust on various background
    • Other domain

Object Detection as Regression Problem

Previous : Repurpose classifiers to perform detection

Deformable Parts Models (DPM)

  • sliding window

R-CNN based methods
1. generate potential bounding boxes.
2. run classifiers on these proposed boxes
3. post-processing (refinement, elimination, rescore)

  • 물체가 있을 법한, 혹은 아무데나 bb를 뿌려두고 그것들을 detection하고 classifier한 다음 post-processing을 통해 지우고, rescore하여 합치는 방식

YOLO : Single Regression Problem (한번만 보자!)

  1. 이미지를 보고 resizing을 하고
  2. convolutional net-work를 한번만 거치고
  3. non maxium supperation을 통해 한번만 추리면
  4. 물체가 튀어나온다!

image -> bounding box coordinate and class probability. (Extremely Fast)

Unified Detection

All BBox, All classes에 대해 한번에 고려


S X S X (B X 5 + C) tensor -> 7x7x30의 tensor

  1. image -> S X S grids
    이미지를 S X S의 grid로 나눈다.
  2. grid cell
    B : BBoxes and Confidence score(BB가 얼마나 물체를 포함하고 있는지)
    score가 큰 부분은 진한 box로 표현한다.
    C : class probabilities w.r.t #classes
    (class 개수에 맞춰서, 각 class가 얼마나 나타날 수 있는지를 probabilities에 대한 벡터로 표현)

predict(예측) :
1. 하나의 class probabilities만을 grid에 대해서 계산
2. 계산된 것을 BB에 대해서 같이 계산을 한다.
3. test time에서는 각 BB 별로 class에 대한 Confidence prediction score가 나오게 된다.
4. 해당하는 BB가 어떤 클래스인지 최종적으로 detection 하는걸로 마지막 결과가 나오게 된다.

731

0개의 댓글