본문 바로가기

(인프런)딥러닝 컴퓨터비전 완벽 가이드_권철민

[인프런] 2. Object Detection 의 이해

728x90

1. Object Detection과 Segmentation 개요

  • Localization 은 단 하나의 물체의 위치를 Bounding box로 찾는 것.
  • Object Detection은 여러 물체의 위치를 찾는 것.
  • Segmentation은 픽셀단위로 해당 픽셀이 해당 Object 에 포함되는지 여부를 따지는 것.
  • 앞의 두개는 박스의 위치를 regression을 통해 찾고, 그 물체를 분류하는 2가지 문제가 합쳐진 것.
  • 역사
    • 딥러닝 기반의 Object detection 방법론이 출현하고 RCNN이 선두로 기술이 발전해왔다. RCNN 은 2-stage detector 로서 물체의 위치를 찾기위해 region을 추천하는 과정인 region proposal 과 classification&regression이 순차적으로 이루어진다. 
    • 이는 정확도는 높지만 속도가 느린 단점이 있었고, 실시간 영상분석의 수요가 높아짐에 따라 상기된 2개의 고정을 한번에 실행하는 1-stage 방식인 YOLO, SSD, Retina-Net이 등장했다.  

2. Object Detection의 주요 구성요소 및 왜 Object Detection이 어려운가?

  • 주요구성요소
    • Region Proposal
    • 딥러닝 네트워크 구성
    • 기타 : IOU, Anchor Box 등
  • 난제
    • Classification 과 Regression을 동시에
    • 다양한 크기, 유형의 물체
    • 시간 : 실시간으로 분석해야하는 경우가 있음.
    • 명확하지 않은 이미지
    • 데이터 세트 부족 : 훈련을 위해서는 bounding box 의 위치를 알려주는 annotation text가 필요한데 이를 수작업으로 하는 것은 어마어마한 시간을 요구한다.

3. Object Localization 과 Object Detection 의 이해

  • Object Localization 
    • 우선 classification 은 우리가 알고 있는 것처럼 feature map 을 추출해서 softmax로 분류한다.
    • 그리고 bounding box를 찾는 과정은 박스의 센터값, width, height로 구성되는 4가지 값을 y_label 값으로 하고 가중치를 계속해서 update 하여 적절한 값을 찾아내는 것이다. 
    • 즉, 이미지에서 추출된 피쳐맵을 classification, regression(bounding box를 찾기위한) 2가지 딥러닝 네트워크로 보내서 각각의 가중치를 업데이트 한다.

4. Region Proposal 에 대한 이해와 Sliding Windows 와의 비교

 

누가 적었는지 참 잘 적었다.

jackiechansbigdata.tistory.com/24?category=941594

 

[Week 3] 1. Detection Algorithm

Detection Algorithm 1. Object Localization 2. Landmark Detection 3. Object Detection 4. Convolutional Implementation of Sliding windows 5. Bounding Box Predictions 6. Intersection over Union 7. Non-..

jackiechansbigdata.tistory.com

  • sliding windows 기법은 필연적으로 계산효율이 많이 떨어진다.
  • 코세라 강의에서는 이 문제를 Convolutional Implementation 으로 해결(?)했었는데, 강의에서 이와 관련된 얘기는 나오지 않음.
  • 다만, Region proposal 을 통해 실행속도가 많이 개선되었다고 함. 
  • 그리고 슬라이딩 윈도우 방식을 이용하는 과정에서 앵커박스, 피쳐피라미드 등과 같은 기술들이 발전되었다고 함.

5. Region Proposal(영역추정) - Selective Search 기법

& 6. Selective Search 실습 및 시각화

& 7. IOU 의 이해

  • 개별 segment(이미지에서 비슷한 부분)들을 모두 bounding box로 만든다.
  • 컬러, 무늬, 크기, 형태 등에 따라 고유 알고리즘으로 비슷한 segment들을 그룹핑한다.
  • 즉, segment가 서로 묶여서 커진다.
  • 그 커진 segment 에 맞는 bounding box 를 매핑한다. 

아래 노트북을 참조바람. 

Selective_search와_IOU구하기_colab.ipynb
1.05MB

8. Non Max Suppression 의 이해

  • Object Detection 알고리즘의 특성상 Object 이 있을만한 곳 주변에서 많은 detect 를 수행.
  • bounding box 를 detect 하면 여러 box들이 생기고 각각에 대한 confidence score 가 있음.
1. 먼저 confidence score threshold 를 설정하고 해당 기준 이하의 박스들은 모두 제거

2. 가장 높은 confidence score 를 가진 박스와 겹치는 모든 박스들을 조사하여 IOU 가 특정 threshold 이상인 박스들을 모두 제거

9. Object Detection 의 성능평가지표인 mAP 에 대한 이해

  • confidence 임계값을 낮출 수록 바운딩 박스를 많이 만들게 되고, 이에 따라 정밀도는 내려가고 재현율은 올라간다.
  • 임계값을 올리면 반대
  • 재현율-정밀도 그래프에서 아래 면적부분(정확히는 조금 다르지만)이 AP이다.
  • 각 Object 별로 AP값을 가지게 되는데, 이 값들을 평균한 값이 mAP이다.

 

728x90