Kim Seon Deok

1. Object detection의 이해 본문

AI/Computer Vision

1. Object detection의 이해

seondeok 2022. 3. 16. 02:52

하나의 object

classification : 분류

localization : 하나의 이미지 내에서 하나의 object의 위치를 bounding box로 지정하여 찾음 > 바운딩 박스 내의 오브젝트를 판별.

 

여러 개의 object들

object detection : 하나의 이미지 안에 있는 여러 object들의 위치를 bounding box로 지정해 찾음

segmentation : 개별 픽셀 값 단위로 classification해 판단. detection보다 더 발전된 형태로 pixel 레벨 detection 수행

 

object detection의 주요 구성요소

detection을 위한 deep learning 네트워크 구성

1.feature extraction(backbone)

2.fpn(neck)

3.network prediction(head)

 

detection 을 구성하는 기타요소 : IOU, NMS, mAP, Anchor box

 

일반적인 object detection 모델

backbone - neck - head

 

 

 

object detection의 난제

1.classification, regression동시 수행

classificatinon, regression에 대한 loss의 최적화가 잘 되어야 한다.

이미지에서 여러 개의 물체를 classification함과 동시에 위치를 찾아야 한다.

 

2.다양한 크기와 유형의 object가 섞여있다.

크기가 서로 다르고, 생김새가 다양한 오브젝트가 섞여있는 이미지에서 이들을 detect해야함.

 

3.중요한 detect 시간

detect 시간이 중요한 실시간 영상 기반에서 detect해야하는 요구사항 증대

 

4.명확하지 않은 이미지

오브젝트 이미지가 명확하지 않은 경우가 많음. 또한 전체 이미지에서 detect할 오브젝트가 차지하는 비중이 높지 않음.

 

5.데이터 세트의 부족

훈련 가능한 데이터 세트가 부족하며, annotation을 만들어야 하므로 훈련 데이터 세트를 생성하기가 상대적으로 어려움

 

object localization의 개요

원본 이미지 - feature extractor - feature map - fc layer - softmax class score

 

1.Sliding window 방식

window를 왼쪽 상단에서부터 오른쪽 하단으로 이동시키면서 object를 detection하는 방식 

object 기법의 초기 기법으로 활용

오브젝트 없는 영역도 무조건 슬라이딩 해야 하며 여러 형태의 window와 여러 scale을 가진 이미지를 스캔해서 검출하여야 하므로 수행시간이 오래걸리고 검출성능이 상대적으로 낮음

방법1.다양한 형태의 window를 각각 sliding시키는 방식

방법2.window scale은 고정하고 scale을 변경한 여러 이미지를 사용한는 방식

 

2.Region proposal(영역 추정)방식

object 가 있을 만한 후보 영역을 찾기

원본 이미지 - 후보 Bounding Box 선택 - 최종 Object Detection

1.selective search법

빠른 detection과 높은 recall 예측 성능을 동시에 만족하는 알고리즘

컬러, 무늬, 크기, 형태에 따라 유사한 region을 계층적 그룹핑 방법으로 계산

 

Selective Search의 수행 프로세스

1.개별 Segment된 모든 부분들을 Bounding box로 만들어 Region Proposal 리스트로 추가

2.컬러 무늬(Texture), 크기(Size), 형태(Size)에 따라 유사도가 비슷한 Segment들을 그룹핑

3.다시 1번 Step Region Proposal 리스트 추가, 2번 Segment들 그룹핑을 계속 반복 하면서 Region Proposal을 수행

 

Object Detection 성능 평가 Metric-IoU

IoU : Intersection over Union

모델이 예측한 결과의 실측(Ground Truth) Box가 얼마나 정확하게 겹치는가를 나타내는 지표

개별 box가 서로 겹치는 영역 / 전체 box의 합집합 영역

 

NMS(Non Max Suppression)

Object Detection 알고리즘은 Object가 있을 만한 위치에 많은 Detection를 수행하는 경향이 강함.

-object가 있는 곳을 놓치면 안되기 때문에, 정확하게 object의 위치를 반환하는 것이 아니라 object가 있을만한 위치를 반환

 

NMS는 Detected된 Object의 Bounding box 중 비슷한 위치에 있는 box를 제거하고 가장 적합한 box를 선택하는 기법

1.Detected된 bounding box별로 특정 confidence threshold이하 bounding box는 먼저 제거(confidence < 0.5)

2.가장 높은 confidence score를 가진 box 순으로 내림차순 정렬하고 아래 로직을 모든 box에 순차적으로 적용

-높은 confidence score를 가진 box와 겹치는 다른 box를 모두 조사해 iou가 특정 threshold 이상인 box를 모두 제거

3.남아있는 box만 선택

>> confidence score가 높을수록, iou threshold가 낮을수록 많은 box가 제거된다.

- 클래스가 다른 것들이 있으므로 max값을 고르지 않는다.

 

Object Detection 성능평가 Metric - mAP

mAP(mean Average Precision)

실제 Object가 Detected된 재현율(Recall)의 변화에 따른 정밀도(Presion)의 값을 평균한 성능 수치

-IOU

-Precision-Recall Curve, Average Precision

-Confidence threshold

AP : 하나의 오브젝트에 대한 성능 수치

mAP : 여러 오브젝트들의 AP를 평균한 값

 

정밀도(Precision)와 재현율(Recall)

이진 분류(Binary Classification)에서 사용되는 성능 지표

정밀도(Precision) : 예측을 Positive로 한 대상 중에 예측과 실제 값이 Positive로 일치한 데이터의 비율

Object Detection에서는 검출 알고리즘이 검출 예측한 결과가 실제 Object들과 얼마나 일치하는지를 나타내는 지표

재현율(Recall)  : 실제 값이 Positive인 대상 중 예측과 실제 값이 Positive로 일치한 데이터의 비율

Object Detection에서는 검출 알고리즘이 실제 Object들을 빠뜨리지 않고 얼마나 정확히 검출 예측하는지를 나타내는 지표

좋은 알고리즘 - precision과 recall 모두 좋아야 한다.

 

Object Detection에서 개별 Object에 대한 검출 예측이 성공하였는지의 여부를 IOU로 결정

 

오차 행렬(Confusion Matrix)

이진 분류의 예측 오류가 얼마인지와 더불어 어떠한 유형의 예측 오류가 발생하고 있는지를 함꼐 나타내는 지표

정밀도 = TP / (FP + TP)

재현율 = TP / (FN + TP)

Confidence 임곗값에 따른 정밀도-재현율 변화

confidence임곗값이 낮을 수록 더 많은 예측 bbox를 만들게 되어 정밀도는 낮아지고 재현율은 높아진다.

confidence임곗값이 높을 수록 예측 bbox를 만드는데 매우 신중하게 되어 정밀도는 높아지고 재현율은 낮아짐.

 

정밀도 / 재현율의 트레이드 오프(trade-off)

정밀도와 재현율은 상호 보완적인 평가지표이다. 어느 한 쪽을 강제로 높이면 다른 하나의 수치는 떨어지기 쉽다.

 

정밀도 재현율 곡선(precision recall curve)

recall값의 변화에 따른 precision값을 나타낸 곡선

얻어진 Precision값의 평균을 AP라 하며 정밀도 재현율 곡선의 면적값으로 계산된다.

 

 

'AI > Computer Vision' 카테고리의 다른 글

5.Faster R-CNN  (0) 2022.03.20
4.Fast-R-CNN  (0) 2022.03.19
3.RCNN  (0) 2022.03.19
2.Object Detection과 Segmentation을 위한 주요 Dataset  (0) 2022.03.19
Comments