자율주행

Day 67: YOLO v5 설치 및 실행

Tech Knowledge Note 2025. 11. 2. 21:00
반응형

🚀 YOLO v5 — 가볍고 빠른 객체 탐지의 표준

YOLO v5는 Ultralytics가 개발한 PyTorch 기반 객체 탐지 모델로, YOLO 계열 중에서도 가장 널리 사용되는 버전입니다.
YOLO v3 대비 속도와 정확도 모두 향상되었으며, 설치·학습·추론 과정이 간단하여 초보자부터 연구자까지 폭넓게 활용되고 있습니다.

이번 글에서는 YOLO v5 설치부터 실제 이미지 탐지 실행까지 단계를 따라가며, 자율주행차·CCTV·AI 비전 시스템의 핵심 기술을 직접 체험해보겠습니다.

YOLO v5 설치 및 실행


⚙️ 1. YOLO v5의 주요 특징

YOLO v5는 단순한 버전 업그레이드가 아니라, 전체 구조와 워크플로우가 개선된 모델입니다.

  • PyTorch 기반 → TensorFlow보다 가볍고 유연함
  • Pre-trained 모델 제공 → 즉시 테스트 가능
  • 다양한 크기 지원 (v5s, v5m, v5l, v5x)
    → 사용 환경에 따라 속도·정확도 조절 가능
  • AutoAnchor, Mosaic augmentation, Hyperparameter evolution 등 최신 기법 적용

💻 2. YOLO v5 설치 방법

(1) 환경 준비

  • Python 3.8 이상
  • PyTorch 설치 (GPU 권장)
  • Git, pip 최신 버전 유지

(2) 설치 절차

터미널 또는 Anaconda Prompt에서 다음 명령어를 실행합니다.

⚡ 참고: GPU 환경에서는 PyTorch 설치 시 CUDA 버전을 반드시 확인하세요.

(3) 설치 확인

 
python detect.py --source data/images/bus.jpg

위 명령어를 실행하면, 예시 이미지(bus.jpg)에서 객체 탐지가 이루어지고 결과가 runs/detect/exp 폴더에 저장됩니다.


🧠 3. YOLO v5의 모델 구조 요약

YOLO v5는 3개의 주요 구성요소로 이루어져 있습니다.

구성 요소역할예시 구성
Backbone 이미지 특징 추출 CSPDarknet53
Neck 다중 스케일 피처 통합 PANet (Path Aggregation Network)
Head 객체 위치 및 클래스 예측 YOLO detection layers

YOLO v3가 FPN을 사용했다면, YOLO v5는 PANet을 채택해 더 풍부한 피처 정보를 제공합니다.


🧩 4. 테스트 이미지로 실행해보기

(1) 이미지 파일로 탐지

 
python detect.py --weights yolov5s.pt --source data/images/
  • --weights: 사용할 가중치 파일 지정
  • --source: 탐지할 이미지 또는 동영상 경로

(2) 웹캠 실시간 탐지

 
python detect.py --weights yolov5s.pt --source 0

‘source 0’은 기본 웹캠을 의미합니다. 실제 카메라를 연결해 실시간 객체 탐지를 시도할 수 있습니다.

(3) 동영상 파일 분석

 
python detect.py --weights yolov5m.pt --source sample_video.mp4

📊 5. 결과 해석 및 저장 경로

탐지 결과는 기본적으로 runs/detect/ 폴더에 저장됩니다.
폴더 내부에는 각 객체의 Bounding Box, Confidence Score, Class Name이 표시된 이미지가 저장됩니다.

예시:

 
runs/detect/exp/bus.jpg

결과 이미지를 열어보면 ‘bus’, ‘person’ 등의 태그와 함께 박스가 시각적으로 표시되어 있을 것입니다.


🔍 6. YOLO v5 실행 시 유용한 팁

목적 명령어 옵션 설명
특정 클래스만 탐지 --classes 0 1 ex. 사람(0), 자동차(1)
결과 이미지 크기 조정 --img 640 이미지 입력 크기 변경
Confidence threshold 조정 --conf-thres 0.4 낮출수록 탐지 민감도 증가

💡 객체 탐지의 성능은 데이터 품질 + 하이퍼파라미터 설정의 조합에 크게 의존합니다.


🧠 7. YOLO v3 → v5의 발전 포인트

구분 YOLO v3 YOLO v5
프레임워크 Darknet (C) PyTorch (Python)
특징 결합 FPN PANet
데이터 증강 수동 Mosaic, AutoAnchor
배포 편의성 낮음 높음
정확도 (COCO 기준) 57.9 mAP 64.1 mAP

YOLO v5는 개발 효율성과 확장성이 크게 향상되어, 연구용·산업용 모두에 최적화된 객체 탐지 모델로 평가받고 있습니다.


🚀 8. 마무리

이제 YOLO v5를 설치하고 직접 실행해보며, 객체 탐지의 세계를 체험해보았습니다.
다음 단계에서는 직접 데이터셋(보행자, 차량 등)을 이용해 학습시키는 과정으로 넘어갑니다.


반응형

📘 다음 글 예고

👉 [Day 68: 보행자/차량 데이터셋으로 학습]
다음 글에서는 YOLO v5를 실제 데이터셋에 학습시키는 방법을 다룹니다.

  • 데이터셋 구조 설정
  • YAML 파일 구성
  • 학습 명령어와 파라미터 설명
  • 학습 결과 시각화

직접 자신만의 객체 탐지 모델을 만들어보며, AI 비전 기술을 수익화할 수 있는 실질적인 기반을 다져봅시다.

반응형