YOLOv8
κ°μ
YOLOv8 λ μ νλμ μλ λ©΄μμ μ΅μ²¨λ¨ μ±λ₯μ μ 곡νλ μ€μκ° λ¬Όμ²΄ μΈμκΈ° YOLO μ리μ¦μ μ΅μ λ²μ μ λλ€. μ΄μ YOLO λ²μ μ λ°μ λ κΈ°λ₯μ λ°νμΌλ‘ YOLOv8 μ μλ‘μ΄ κΈ°λ₯κ³Ό μ΅μ νλ₯Ό λμ νμ¬ λ€μν μ ν리μΌμ΄μ μ λ€μν 물체 κ°μ§ μμ μ μ΄μμ μΈ μ νμ΄ λ κ²μ λλ€.
Watch: Ultralytics YOLOv8 λͺ¨λΈ κ°μ
μ£Όμ κΈ°λ₯
- κ³ κΈ λ°±λ³Έ λ° λ₯ μν€ν μ²: YOLOv8 μ μ΅μ²¨λ¨ λ°±λ³Έ λ° λ₯ μν€ν μ²λ₯Ό μ¬μ©νμ¬ νΉμ§ μΆμΆ λ° κ°μ²΄ κ°μ§ μ±λ₯μ ν₯μμν΅λλ€.
- μ΅μ»€ ν리 μ€νλ¦Ώ Ultralytics ν€λ: YOLOv8 μ΅μ»€ ν리 μ€νλ¦Ώ Ultralytics ν€λλ₯Ό μ±ννμ¬ μ΅μ»€ κΈ°λ° μ κ·Ό λ°©μμ λΉν΄ λ λμ μ νλμ ν¨μ¨μ μΈ νμ§ νλ‘μΈμ€μ κΈ°μ¬ν©λλ€.
- μ΅μ νλ μ νλ-μλ νΈλ μ΄λμ€ν: μ νλμ μλ κ°μ μ΅μ μ κ· νμ μ μ§νλ λ° μ€μ μ λ YOLOv8 μ λ€μν μ ν리μΌμ΄μ μμμ μ€μκ° λ¬Όμ²΄ κ°μ§ μμ μ μ ν©ν©λλ€.
- λ€μν μ¬μ νμ΅ λͺ¨λΈ: YOLOv8 μμλ λ€μν μμ λ° μ±λ₯ μꡬ μ¬νμ μΆ©μ‘±νλ λ€μν μ¬μ νμ΅ λͺ¨λΈμ μ 곡νλ―λ‘ νΉμ μ¬μ© μ¬λ‘μ μ ν©ν λͺ¨λΈμ μ½κ² μ°Ύμ μ μμ΅λλ€.
μ§μλλ μμ λ° λͺ¨λ
YOLOv8 μ리μ¦λ μ»΄ν¨ν° λΉμ μ νΉμ μμ μ νΉνλ λ€μν λͺ¨λΈμ μ 곡ν©λλ€. μ΄λ¬ν λͺ¨λΈμ κ°μ²΄ κ°μ§λΆν° μΈμ€ν΄μ€ λΆν , ν¬μ¦/ν€ν¬μΈνΈ κ°μ§, λ°©ν₯μ± κ°μ²΄ κ°μ§ λ° λΆλ₯μ κ°μ λ³΄λ€ λ³΅μ‘ν μμ κΉμ§ λ€μν μꡬ μ¬νμ μΆ©μ‘±νλλ‘ μ€κ³λμμ΅λλ€.
YOLOv8 μ리μ¦μ κ° λ³νμ κ° μμ μ μ΅μ νλμ΄ μμ΄ λμ μ±λ₯κ³Ό μ νμ±μ 보μ₯ν©λλ€. λν μ΄λ¬ν λͺ¨λΈμ μΆλ‘ , κ²μ¦, κ΅μ‘, λ΄λ³΄λ΄κΈ° λ± λ€μν μ΄μ λͺ¨λμ νΈνλλ―λ‘ λ°°ν¬ λ° κ°λ°μ μ¬λ¬ λ¨κ³μμ μ½κ² μ¬μ©ν μ μμ΅λλ€.
λͺ¨λΈ | νμΌ μ΄λ¦ | μμ | μΆλ‘ | μ ν¨μ± κ²μ¬ | κ΅μ‘ | λ΄λ³΄λ΄κΈ° |
---|---|---|---|---|---|---|
YOLOv8 | yolov8n.pt yolov8s.pt yolov8m.pt yolov8l.pt yolov8x.pt |
νμ§ | β | β | β | β |
YOLOv8-seg | yolov8n-seg.pt yolov8s-seg.pt yolov8m-seg.pt yolov8l-seg.pt yolov8x-seg.pt |
μΈμ€ν΄μ€ μΈλΆν | β | β | β | β |
YOLOv8-pose | yolov8n-pose.pt yolov8s-pose.pt yolov8m-pose.pt yolov8l-pose.pt yolov8x-pose.pt yolov8x-pose-p6.pt |
ν¬μ¦/ν€ν¬μΈνΈ | β | β | β | β |
YOLOv8-obb | yolov8n-obb.pt yolov8s-obb.pt yolov8m-obb.pt yolov8l-obb.pt yolov8x-obb.pt |
λ°©ν₯ νμ§ | β | β | β | β |
YOLOv8-cls | yolov8n-cls.pt yolov8s-cls.pt yolov8m-cls.pt yolov8l-cls.pt yolov8x-cls.pt |
λΆλ₯ | β | β | β | β |
μ΄ νλ YOLOv8 λͺ¨λΈ λ³νμ λν κ°μλ₯Ό μ 곡νλ©°, νΉμ μμ μμμ μ μ© κ°λ₯μ±κ³Ό μΆλ‘ , κ²μ¦, νλ ¨, λ΄λ³΄λ΄κΈ° λ± λ€μν μλ λͺ¨λμμ νΈνμ±μ κ°μ‘°ν©λλ€. μ»΄ν¨ν° λΉμ μ λ€μν μ ν리μΌμ΄μ μ μ ν©ν YOLOv8 μ리μ¦μ λ€λͺ©μ μ±κ³Ό κ²¬κ³ ν¨μ 보μ¬μ€λλ€.
μ±λ₯ μ§ν
μ±λ₯
μ¬μ νμ΅λ 80κ°μ ν΄λμ€λ₯Ό ν¬ν¨νμ¬ COCOμμ νμ΅λ μ΄λ¬ν λͺ¨λΈμ μ¬μ© μμ λ νμ§ λ¬Έμλ₯Ό μ°Έμ‘°νμΈμ.
λͺ¨λΈ | ν¬κΈ° (ν½μ ) |
mAPval 50-95 |
μλ CPU ONNX (ms) |
μλ A100 TensorRT (ms) |
맀κ°λ³μ (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
YOLOv8n | 640 | 37.3 | 80.4 | 0.99 | 3.2 | 8.7 |
YOLOv8s | 640 | 44.9 | 128.4 | 1.20 | 11.2 | 28.6 |
YOLOv8m | 640 | 50.2 | 234.7 | 1.83 | 25.9 | 78.9 |
YOLOv8l | 640 | 52.9 | 375.2 | 2.39 | 43.7 | 165.2 |
YOLOv8x | 640 | 53.9 | 479.1 | 3.53 | 68.2 | 257.8 |
600κ°μ μ¬μ νμ΅λ ν΄λμ€κ° ν¬ν¨λ Open Image V7μμ νμ΅λ μ΄λ¬ν λͺ¨λΈμ μ¬μ© μμ λ νμ§ λ¬Έμλ₯Ό μ°Έμ‘°νμΈμ.
λͺ¨λΈ | ν¬κΈ° (ν½μ ) |
mAPval 50-95 |
μλ CPU ONNX (ms) |
μλ A100 TensorRT (ms) |
맀κ°λ³μ (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
YOLOv8n | 640 | 18.4 | 142.4 | 1.21 | 3.5 | 10.5 |
YOLOv8s | 640 | 27.7 | 183.1 | 1.40 | 11.4 | 29.7 |
YOLOv8m | 640 | 33.6 | 408.5 | 2.26 | 26.2 | 80.6 |
YOLOv8l | 640 | 34.9 | 596.9 | 2.43 | 44.1 | 167.4 |
YOLOv8x | 640 | 36.3 | 860.6 | 3.56 | 68.7 | 260.6 |
μΈλΆν λ¬Έμμμ 80κ°μ μ¬μ νλ ¨λ ν΄λμ€λ₯Ό ν¬ν¨νμ¬ COCOμμ νλ ¨λ μ΄λ¬ν λͺ¨λΈμ μ¬μ© μμλ₯Ό νμΈνμΈμ.
λͺ¨λΈ | ν¬κΈ° (ν½μ ) |
mAPbox 50-95 |
mAPmask 50-95 |
μλ CPU ONNX (ms) |
μλ A100 TensorRT (ms) |
맀κ°λ³μ (M) |
FLOPs (B) |
---|---|---|---|---|---|---|---|
YOLOv8n-seg | 640 | 36.7 | 30.5 | 96.1 | 1.21 | 3.4 | 12.6 |
YOLOv8s-seg | 640 | 44.6 | 36.8 | 155.7 | 1.47 | 11.8 | 42.6 |
YOLOv8m-seg | 640 | 49.9 | 40.8 | 317.0 | 2.18 | 27.3 | 110.2 |
YOLOv8l-seg | 640 | 52.3 | 42.6 | 572.4 | 2.79 | 46.0 | 220.5 |
YOLOv8x-seg | 640 | 53.4 | 43.4 | 712.1 | 4.02 | 71.8 | 344.1 |
1000κ°μ μ¬μ νμ΅λ ν΄λμ€κ° ν¬ν¨λ ImageNetμμ νμ΅λ μ΄λ¬ν λͺ¨λΈμ μ¬μ© μλ λΆλ₯ λ¬Έμλ₯Ό μ°Έμ‘°νμΈμ.
λͺ¨λΈ | ν¬κΈ° (ν½μ ) |
acc top1 |
ACC TOP5 |
μλ CPU ONNX (ms) |
μλ A100 TensorRT (ms) |
맀κ°λ³μ (M) |
FLOPs (B) at 640 |
---|---|---|---|---|---|---|---|
YOLOv8n-cls | 224 | 69.0 | 88.3 | 12.9 | 0.31 | 2.7 | 4.3 |
YOLOv8s-cls | 224 | 73.8 | 91.7 | 23.4 | 0.35 | 6.4 | 13.5 |
YOLOv8m-cls | 224 | 76.8 | 93.5 | 85.4 | 0.62 | 17.0 | 42.7 |
YOLOv8l-cls | 224 | 76.8 | 93.5 | 163.0 | 0.87 | 37.5 | 99.7 |
YOLOv8x-cls | 224 | 79.0 | 94.6 | 232.0 | 1.01 | 57.4 | 154.8 |
μ¬μ νμ΅λ ν΄λμ€μΈ 'μ¬λ' 1κ°λ₯Ό ν¬ν¨νμ¬ COCOμμ νμ΅λ μ΄λ¬ν λͺ¨λΈμ μ¬μ© μλ ν¬μ¦ μΆμ λ¬Έμλ₯Ό μ°Έμ‘°νμΈμ.
λͺ¨λΈ | ν¬κΈ° (ν½μ ) |
mAPpose 50-95 |
mAPpose 50 |
μλ CPU ONNX (ms) |
μλ A100 TensorRT (ms) |
맀κ°λ³μ (M) |
FLOPs (B) |
---|---|---|---|---|---|---|---|
YOLOv8n-pose | 640 | 50.4 | 80.1 | 131.8 | 1.18 | 3.3 | 9.2 |
YOLOv8s-pose | 640 | 60.0 | 86.2 | 233.2 | 1.42 | 11.6 | 30.2 |
YOLOv8m-pose | 640 | 65.0 | 88.8 | 456.3 | 2.00 | 26.4 | 81.0 |
YOLOv8l-pose | 640 | 67.6 | 90.0 | 784.5 | 2.59 | 44.4 | 168.6 |
YOLOv8x-pose | 640 | 69.2 | 90.2 | 1607.1 | 3.73 | 69.4 | 263.2 |
YOLOv8x-pose-p6 | 1280 | 71.6 | 91.2 | 4088.7 | 10.04 | 99.1 | 1066.4 |
μ¬μ νμ΅λ 15κ°μ ν΄λμ€κ° ν¬ν¨λ DOTAv1μμ νμ΅λ μ΄λ¬ν λͺ¨λΈμ μ¬μ© μμ λ μ§ν₯ νμ§ λ¬Έμλ₯Ό μ°Έμ‘°νμΈμ.
λͺ¨λΈ | ν¬κΈ° (ν½μ ) |
mAPtest 50 |
μλ CPU ONNX (ms) |
μλ A100 TensorRT (ms) |
맀κ°λ³μ (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
YOLOv8n-obb | 1024 | 78.0 | 204.77 | 3.57 | 3.1 | 23.3 |
YOLOv8s-obb | 1024 | 79.5 | 424.88 | 4.07 | 11.4 | 76.3 |
YOLOv8m-obb | 1024 | 80.5 | 763.48 | 7.61 | 26.4 | 208.6 |
YOLOv8l-obb | 1024 | 80.7 | 1278.42 | 11.83 | 44.5 | 433.8 |
YOLOv8x-obb | 1024 | 81.36 | 1759.10 | 13.23 | 69.5 | 676.7 |
μ¬μ© μ
μ΄ μλ κ°λ¨ν YOLOv8 νμ΅ λ° μΆλ‘ μμ λ₯Ό μ 곡ν©λλ€. μ΄λ¬ν λͺ¨λ λ° κΈ°ν λͺ¨λμ λν μ 체 μ€λͺ μλ μμΈ‘, νμ΅, Val λ° λ΄λ³΄λ΄κΈ° λ¬Έμ νμ΄μ§λ₯Ό μ°Έμ‘°νμΈμ.
μλ μλ YOLOv8 κ°μ²΄ κ°μ§λ₯Ό μν λͺ¨λΈκ°μ§μ© μμ μ λλ€. μΆκ°λ‘ μ§μλλ μμ μ μΈκ·Έλ¨ΌνΈ, λΆλ₯, OBB λ¬Έμ λ° ν¬μ¦ λ¬Έμλ₯Ό μ°Έμ‘°νμΈμ.
μ
PyTorch μ¬μ κ΅μ‘ *.pt
λͺ¨λΈ λ° κ΅¬μ± *.yaml
νμΌμ YOLO()
ν΄λμ€λ₯Ό μ¬μ©νμ¬ python μμ λͺ¨λΈ μΈμ€ν΄μ€λ₯Ό μμ±ν©λλ€:
from ultralytics import YOLO
# Load a COCO-pretrained YOLOv8n model
model = YOLO('yolov8n.pt')
# Display model information (optional)
model.info()
# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data='coco8.yaml', epochs=100, imgsz=640)
# Run inference with the YOLOv8n model on the 'bus.jpg' image
results = model('path/to/bus.jpg')
CLI λͺ λ Ήμ μ¬μ©νμ¬ λͺ¨λΈμ μ§μ μ€νν μ μμ΅λλ€:
μΈμ© λ° κ°μ¬
YOLOv8 λͺ¨λΈ λλ μ΄ λ¦¬ν¬μ§ν 리μ λ€λ₯Έ μννΈμ¨μ΄λ₯Ό μμ μ μ¬μ©νλ κ²½μ° λ€μ νμμ μ¬μ©νμ¬ μΈμ©ν΄ μ£ΌμΈμ:
DOIλ 보λ₯ μ€μ΄λ©° μ¬μ© κ°λ₯ν΄μ§λ λλ‘ μΈμ©μ μΆκ°λ μμ μ λλ€. YOLOv8 λͺ¨λΈμ μλμμ μ 곡λ©λλ€. AGPL-3.0 λ° μν°νλΌμ΄μ¦ λΌμ΄μ μ€λ‘ μ 곡λ©λλ€.
μμ± 2023-11-12, μ λ°μ΄νΈ 2024-04-17
μμ±μ: glenn-jocher (12), Laughing-q (2), AyushExel (1), fcakyon (1)