YOLO v5를 이용한 실시간 객체 탐지
Hands-on-Lab
동의과학대학교
김 종 현 교수
jhkim@dit.ac.kr
2022.7.
• 이미지 전체를 단 한번만 본다 : You Only Look Once
- YOLO 이전의 모델 중 대표적인 R-CNN 처럼 이미지를 여러장으로 분할해 해석
하지 않는다.
- YOLO는 이미지 전체를 말 그대로 한 번만 본다.
• 통합된 모델을 사용 : one-stage-detection
- 다른 객체 탐지 모델들은 다양한 전처리 모델과 인공 신경망을 결합하여 사용한
다.
- YOLO는 단 하나의 인공 신경망을 사용하여 처리한다.
• 실시간 객체 탐지 모델
- 기존 모델보다 빠른 성능으로 실시간 객체 탐지가 가능하다.
- 작은 객체에 정확도가 낮다.
Quick Start Examples
• 오픈 소스 저장소
• https://github.com/ultralytics/yolov5
• 설치
% git clone https://github.com/ultralytics/yolov5 # clone
% cd yolov5
% pip install -r requirements.txt # install
Pre-trained 모델 추론
import torch
# Model
model = torch.hub.load('ultralytics/yolov5', 'yolov5s') # or yolov5n - y
olov5x6, custom
# Images
img = 'https://ultralytics.com/images/zidane.jpg' # or file, Path, PIL,
OpenCV, numpy, list
# Inference
results = model(img)
# Results
results.show() # or .print(), .save(), .crop(), .pandas(), etc.
Yolo v5 Pre-trained 모델
Pre-trained 모델 추론
Pre-trained 모델 추론 : detect.py
% python detect.py --source 0 # webcam
img.jpg # image
vid.mp4 # video
path/ # directory
path/*.jpg # glob
'https://youtu.be/Zgi9g1ksQHc' # YouTube
'rtsp://example.com/media.mp4' # RTSP, RTMP, HTTP stream
커스텀 데이터 학습 : Custom Data Training
• https://github.com/ultralytics/yolov5/wiki/Train-Custom-Data
데이터 수집 및 전처리
• roboflow
• https://roboflow.com
• 계정 생성 : Sign up for free
Worksapce/ Project 만들기
데이터 수집 : 구글 이미지 검색
• Chome 웹 스토어 : Download All Images
• https://chrome.google.com/webstore/search/download%20all%20ima
ges
데이터 수집 : 구글 이미지 검색
데이터 수집 : 구글 이미지 검색
데이터 수집 : 구글 이미지 검색
Workspace -> Project 만들기
데이터 업로드
데이터 업로드
Annotate :데이터 라벨링, 바운딩
Annotate :데이터 라벨링, 바운딩
Annotate :데이터 라벨링, 바운딩
Annotate : 데이터 라벨링, 바운딩
Annotate :데이터 라벨링, 바운딩
데이터 셋 생성
데이터 전처리, 증강
데이터 전처리, 증강
데이터 셋 생성
데이터 셋 내보내기
커스텀 데이터 학습 : Custom Data Training
• https://github.com/ultralytics/yolov5/wiki/Train-Custom-Data
• Open in Colab
• https://colab.research.google.com/github/roboflow-ai/yolov5-
custom-training-tutorial/blob/main/yolov5-custom-training.ipynb
roboflow 데이터 셋 import
roboflow 데이터 셋 import
데이터 학습
모델 크기, 속도
data.yaml
Custom YOLOv5 Detector 성능 검증
Trained Weights 추론
Trained Weights 추론
학습 모델 다운로드
모델 사용하기
• yolov5를 clone 한 local PC 디렉토리에 모델(best.pt) 저장 및
이동
• git clone https://github.com/ultralytics/yolov5 # clone cd yolov5 pip
install -r requirements.txt # install
• detection 실행
%
실시간 객체(facial mask) 탐지
참고
• https://github.com/ultralytics/yolov5
• https://roboflow.com/
• https://www.v7labs.com/blog/object-detection-guide

Real-time Object Detection with YOLO v5, Hands-on-Lab