앞서, YOLO v3를 사용하는 방법을 포스팅 한 적이 있습니다.
최근 더욱 발전된 YOLO v8이 새롭게 출시되어 간단하게 사용하는 방법을 포스팅합니다.
https://github.com/ultralytics/ultralytics
Pytorch로 구성되어 있으며, ultralytics 라이브러리를 통해 매우 쉽게 학습, 추론, 배포까지 가능합니다.
환경 세팅
1. 가상환경 생성
conda를 사용하여 가상환경을 생성합니다. YOLO v8 Docs 에선 python 3.7 버전 이상을 추천합니다.
conda create -n yolov8 python=3.7
conda activate yolov8
2. pip install
pip install ultralytics
학습
train에 적용할 수 있는 argument는 여기에서 확인할 수 있습니다.
from ultralytics import YOLO
# Load Pretrained Model
model = YOLO("yolov8n.pt") # yolov8n, yolov8s, yolov8m, yolov8l, yolov8x
# Train Model
model.train(data="../data/train.yaml", epoch="50", patience="5", batch="16") # 학습에 필요한 argument를 정합니다.
추론
inference에 적용할 수 있는 argument는 여기에서 확인할 수 있습니다.
from ultralytics import YOLO
# Load Trained Model
model = YOLO("./ultralytics/runs/detect/train/weights/best.py")
# Get Result
results = model.predict("./data/test/0001.jpg", conf=0.05, iou=0.65, max_det=300, save=True)
# Check
for result in results:
labels = result.boxes.cls
scores = result.boxes.conf
bboxes = result.boxes.xyxy
print(lables, scores, bboxes)
위와 같이 학습 데이터셋만 구성한다면 정말 간단하고 빠르게 학습 및 추론까지 가능하며, 목적에 맞게 argument를 조정할 수 있습니다.
'Practice' 카테고리의 다른 글
HDF5 (Hierarchical Data Format 5) - h5py 사용 (0) | 2023.05.31 |
---|---|
[MMDetection 2.0] 정리 (0) | 2023.05.16 |
[MMDetection 3.0] 정리 (0) | 2023.05.12 |
[Ubuntu] Pytorch 에서 YOLO v3 사용하기 (ultralytics) (0) | 2022.03.19 |
[Ubuntu] YOLO Darknet(AlexeyAB) 학습 환경 구축 (0) | 2022.01.07 |