[DL] YOLO v11 모델을 활용하여 동물 Object Detection

Minjeong Kim·2026년 1월 7일

인공지능

목록 보기
48/50

📢 학습 목표

  • 동물 객체 탐지하는 모델 만들기
  • YOLOv11 모델 활용

개념

YOLO 모델의 크기별 종류

  • 크기, 속도를 기반으로 Nano, Tiny, Small, Mediem, Large, XLarge
    • Nano(n)
      • 가장 작은 크기로 초경량모델
      • 빠른속도, 낮은 메모리 사용량, 상대적으로 낮은 정확도
    • Small(s)
      • 중간크기, 속도, 정확도의 균형
    • Medium(m)
    • Large(l)
      • 복잡한 연산, 많은 메모리가 필요로함
    • XLarge(x)
      • 다른 모델에 비해 높은 정확도를 보여줌
      • 매우 큰 연산자원이 필요함

Code

데이터 셋 준비

# 데이터 압축 풀기
!unzip './YOLOv11/animal.zip' -d './data/'
  • data.yaml 파일 절대경로 수정

학습

  1. 라이브러리 설치

    !pip -q install ultralytics
  2. 모델 로딩

    # 모델 객체 생성
    from ultralytics import YOLO
    
    model = YOLO('yolo11n.pt')
  3. 학습

    # 학습
    result = model.train(data = './data/animal/data.yaml',
                         epochs = 100,
                         imgsz = 640,
                         patience = 15)
    • patience : 조기학습 중단

예측

# 예측
my_model = YOLO('./runs/detect/train/weights/best.pt')
source = 'https://dimg.donga.com/wps/NEWS/IMAGE/2022/09/01/115259050.2.jpg'
result_img = my_model(source = source, save = True)

import matplotlib.pyplot as plt
plt.imshow(result_img[0].plot())
plt.axis('off')

예측 결과

  • 코끼리, mucca, pecora 이렇게 비슷한 3개 학습했는데,
    • 코끼리는 잘 찾는데
    • 다른 애들은 잘 못찾고, 코끼리라고 함 → 코끼리한테 과적합된 듯! ㅠㅠ

0개의 댓글