딥러닝/컴퓨터비전

[컴퓨터비전10] 자율주행자동차의 핵심 알고리즘, 객체 인식(Object Detection) 기본 개념 정리

데이터요리사 2021. 12. 13. 13:24

안녕하세요. 데이터 요리사, 루나 입니다.

자율주행 자동차는

실시간으로 주변의 객체를 인지하고, 상황을 판단해서, 차량을 제어하는

엄청난 기술의 총 집합체라고 할 수 있습니다.

 

이번 글에서는 주변의 객체를 인지하는 기술인

'객체인식(Object Detection) 알고리즘'에 대해서 정리해봅시다.

 

 

1 객체인식(Obeject Detection)이란?
  • Multiple object + Classification + Localization
    • 객체인식은 결국 2 category classification 문제: O(찾고자 하는 객체),  X(찾고자하는 객체가 아닌 경우)

컴퓨터 비전의 다양한 문제

 

 

  • 객체인식 분야의 주요 알고리즘
    • Proposal 단계 有: RCNN(Region CNN), Fast RCNN, Faster RCNN, RFCNN, Mask RCNN
    • Proposal 단계 無: YOLO, SSD(Single Short Detection)

출처: https://www.v7labs.com/blog/yolo-object-detection

 

 

  • 객체인식 문제에서 사용하는 평가 지표
    • MAP(Mean Average Precision)
    • 추론시간(ms)
    • IoU(Intersection Over Union)
      • 0.5 보다 클 경우에만 제대로 객체 인식을 했다고(TP) 판단

 

2 객체인식 분야의 꽃! YOLO(You Only Look Once) 알고리즘
  • 구조: 24 Conv. Layer + 2 FC Layer
  • 입력: SxS 그리드가 포함된 이미지(사이즈: 448 x 448)
  • 출력
    • 각 그리드에 해당하는 바운딩 박스: x, y, w, h, confidence
    • S x S x C 클래스일 확률

 

YOLO Architecture

  • 학습
    • ImageNet 데이터로 사전학습(pretrain) 진행 후, 본 학습 진행
    • Hyperparamete: 135 epochs, 62 batch size, 0.9 momentum, 0.0005 weight decay, 0.001~0.1 learning rate
    • NMS(Non Maximal Suppression): 각 그리드에서 생성하는 바운딩 박스를 하나만 선택하는 과정
      • 수많은 객체 인식 결과에 대해 확률 점수를 보고 가장 큰 점수를 선택하는 과정을 반복

NMS - 확률 점수가 낮은 모든 경계 상자를 제거하는 과정

 

 

 

3 YOLO의 변천사

출처: https://www.v7labs.com/blog/yolo-object-detection

 

 

함께 보면 좋은 글

https://hackernoon.com/understanding-yolo-f5a74bbc7967

https://www.v7labs.com/blog/yolo-object-detection


※ 이 글의 내용을 상업적으로 무단 활용, 편집하는 것은 금지하고 있습니다. 강의, 출판 등 상업적 이용이 필요하신 경우, 문의 바랍니다.

728x90