일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 언리얼엔진
- 딜러닝
- 욜로
- ctypes
- Detectron2
- 이터널리턴
- 논문
- 언어모델
- 논문리뷰
- python
- 파이썬
- TensorFlow
- 헬스케어
- NPY
- 개발자
- connx
- C언어
- yolo
- 텐서플로우
- 리뷰
- pyqt5
- 파워셀
- 호흡분석
- 딥러닝
- V3
- 게임개발
- CycleGAN
- ChatGPT
- 프로그래머
- 설치
- Today
- Total
사냥꾼의 IT 노트
[딥러닝]Object Detection은 대체 무엇인가 본문
Object Detection을 이해하기 위해서는 먼저 컴퓨터 비전을 알아야 한다.
컴퓨터 비전(Computer Vision)이란?
- 정의: 인간의 시각과 관련된 부분을 컴퓨터 알고리즘을 이용해서 구현하는 방법을 연구하는 분야
이 컴퓨터 비전이란 큰 틀안에 존재하는 문제 분야 중 하나를 물체 검출, Object Detection이라고 한다. Object Detection은 아래 사진처럼 여러 물체를 검출할 수 있다.
Object Detection
- 정의: 물체가 있는 영역의 위치 정보를 bounding box로 찾고 bounding box 내에 존재하는 사물의 label을 분류하는 문제 영역
Object Detection의 일반적인 출력값은 다음과 같다.
- x_min: 물체의 bounding box의 Left-Top x좌표
- y_min: 물체의 bounding box의 Left-Top y좌표
- x_max: 물체의 bounding box의 Right-Bottom x좌표
- y_max: 물체의 bounding box의 Right-Bottom y좌표
- class: bounding box에 속한 물체의 class
- confidence: bounding box에 실체 물체가 있을 것이라고 확신하는 정도를 나타내는 값 (0.0~1.0)
위 사진이 대표적인 Object Detection의 출력 예시이다. person과 cat을 분류했으며, 각 x좌표와 y좌표의 최대값과 최소값, 신뢰도인 confidence가 괄호안에 표시 되어있다.
Open Image Dataset Ground Truth
Object Detection 문제 영역의 Ground Truth 데이터는 사람이 지정한 bounding box와 class label이다. 이 정답 영역과 예측하기 위해서 정량적인 지표들이 필요하다.
Intersectino Over Union(IOU)
가장 대표적인 도구는 IOU다. 이는 아래 포스팅에서 다룬다.
https://it-the-hunter.tistory.com/29
Precision, Recall, F1, Average Precision(AP)
IOU는 하나의 이미지들만 비교하는 단점이 존재한다. 따라서 이를 보완하기 위해 다음과 같은 도구들이 필요하다.
- precision: 정밀도라 한다. 이는 검색된 결과들 중 관련 있는 것들로 분류된 결과물의 비율이다.
- recall: 재현율이라 한다. 관련 있는 것으로 분류된 항목들 중 실제 검색된 항목들의 비율이다.
- F1: precision과 recall 조화 평균이다. 즉, precision과 recall을 한번에 비교할 수가 있다.
- Average Precision(AP): recall별 precision의 평균이다. 이는 Confidence가 높은 예측 결과 순으로 내림차순 정렬했을 때 몇번째 이미지까지를 비교 대상으로 삼을 것인지 결정하는 지표다.
▶Positive 판단 기준: 일정 임계치의 IOU를 넘기면, 확신된 것으로 간주한다.
mean Average Precision(mAP)
- 정의: class들의 Average Precision의 평균
MS COCO Metric
- 좀 더 엄밀한 측정을 위해 다음과 같은 다양한 평가 지표를 제안한 Metric
Object Detection Datasets
Object Detection 문제를 학습시키기 위해 정답 bounding box와 label이 지정된 이미지들이 필요하다. 대표적인 데이터셋은 다음과 같다.
Pascal VOC Dataset
20개의 클래스로 구성된 데이터셋으로, 2007과 2012 두 가지 버전이 존재한다.
- VOC 2007: 총 9,963장의 이미지와 24,460개의 bounding box를 포함한다.
- VOC 2012: 총 11,530장의 이미지와 27,450개의 bounding box를 포함한다.
yolo v1을 구현할 때 쓸 데이터 셋이다. 오래된 데이터셋이어서 하나의 이미지에 여러 가지 오브젝트가 많이 들어있지는 않다. 하지만 가장 표준적인 데이터셋이며 가져오기도 쉽기 때문에 이를 사용할 것이다.
MS-COCO(MicroSoft-Common Objects in Context)
마이크로소프트에서 만든 Object Detection용 데이터셋이다. 80,000장의 train image, 40,000장의 validation image, 20,000장의 test image와 80개의 label을 포함한다. 우리에게 친숙한 이미지의 데이터셋을 제공한다.
Open Datasets 3 - KITTI
자율 주행 연구를 위한 이미지로 구성된 데이터셋이다. 깊게 알아볼 필요는 없다.
Open Images Dataset v4
구글에서 만든 데이터셋으로 가장 최근에 만들어진 데이터셋이다. 1,743,042장의 train image, 41,620장의 validation 이미지, 125,436장의 test image, 14,610,229개의 bounding box와 600개의 label을 포함한다. 아래 링크로 들어가 다운로드가 가능하다.
'딥러닝' 카테고리의 다른 글
[딥러닝]mmWave 센서를 이용한 호흡 분석 - 센서 연결 (0) | 2023.03.06 |
---|---|
[딥러닝]정확한 객체 검출을 위한 NMS (0) | 2022.09.27 |
[딥러닝]Detectron 2에 대해서 알아보자 (0) | 2022.07.15 |
[딥러닝]논문에 자주 등장하는 validation이 대체 뭘까? (0) | 2022.07.08 |
[딥러닝]IOU에 대해서 이해해보자 (0) | 2022.07.07 |