본문 바로가기

Capstone/2018-2 Capstone

③ YOLO란?

YOLO(You only look once) ﹤누르면 공식홈페이지로 이동합니다



Introduction

사용하기전 YOLO가 무엇인지 알아보겠습니다.

물체 탐지로 사용되는 YOLO 알고리즘은 You Only Look Once의 약자입니다.



How It Works?

이전 탐지 시스템은 classifier나 localizer를 사용해 탐지를 수행합니다.

하지만 YOLO는 하나의 신경망을 전체 이미지에 적용합니다. 

이 신경망은 이미지를 영역으로 분할하고 각 영역의 Bounding Box와 확률을 예측합니다.

이런 Bounding Box는 예측된 확률에 의해 가중치가 적용됩니다.


Advantage

테스트할 때 이미지의 전체를 보고 예측정보를 알려줍니다.

수천개의 이미지가 필요한 R-CNN와 달리 하나의 네트워크 평가로 예측할 수 있습니다.

R-CNN보다는 1000배 이상 빠르고, Fast R-CNN보다는 100배 빠릅니다.



현재 YOLOv3까지 나왔습니다.

이번에 저도 YOLOv3를 사용했습니다.


일단 커스텀하기 전에 YOLO 홈페이지에 있는 사용법을 따라해 보겠습니다.

이는 사전에 훈련이 되어 있는 모델을 사용합니다.

저는 mac mini를 사용했습니다.


터미널을 켜고 아래를 입력해 darknet을 설치합니다.

git clone https://github.com/pjreddie/darknet
cd darknet
make


그 다음 사전에 훈련된 weight 파일을 다운로드 합니다.

wget https://pjreddie.com/media/files/yolov3.weights


이제 실행시킵니다.

./darknet detect cfg/yolov3.cfg yolov3.weights data/dog.jpg


실행시키면 테스트 하고 있는 모습을 볼 수 있습니다.



이렇게 정확도가 출력됩니다.


예측된 사진을 보면 class에 맞게 Bounding Box로 보여줍니다.


사진을 화면에 출력하기 위해 opencv<=3.4.0버전을 설치합니다.

하지만 darknet에서 opencv가 없는 경우 예측한 사진을 저장해주는 기능을 제공해줍니다.


간단하게 YOLO와 사용법을 알아봤습니다.



반응형

'Capstone > 2018-2 Capstone' 카테고리의 다른 글

⑥ Yolov3 on raspberry pi 3 B+  (3) 2018.12.23
⑤ Yolo_mark  (0) 2018.12.22
④ YOLO Custom  (0) 2018.12.14
② 이미지 부풀리기  (11) 2018.12.09
① 이미지 크롤링  (0) 2018.12.01