λͺ¨λΈ λ²€μΉλ§νΉ Ultralytics YOLO
μκ°
λͺ¨λΈμ΄ νμ΅λκ³ κ²μ¦λλ©΄ λ€μ λ Όλ¦¬μ λ¨κ³λ λ€μν μ€μ μλ리μ€μμ λͺ¨λΈμ μ±λ₯μ νκ°νλ κ²μ λλ€. Ultralytics YOLOv8 μ λ²€μΉλ§ν¬ λͺ¨λλ λ€μν λ΄λ³΄λ΄κΈ° νμμμ λͺ¨λΈμ μλμ μ νμ±μ νκ°ν μ μλ κ°λ ₯ν νλ μμν¬λ₯Ό μ 곡νμ¬ μ΄λ¬ν λͺ©μ μ λ¬μ±ν μ μμ΅λλ€.
Watch: Ultralytics λͺ¨λ νν 리μΌ: λ²€μΉλ§ν¬
λ²€μΉλ§νΉμ΄ μ€μν μ΄μ λ 무μμΈκ°μ?
- μ 보μ κΈ°λ°ν μμ¬ κ²°μ : μλμ μ νμ± μ¬μ΄μ μμΆ© κ΄κ³μ λν μΈμ¬μ΄νΈλ₯Ό μ»μΌμΈμ.
- 리μμ€ ν λΉ: λ€μν νλμ¨μ΄μμ μλ‘ λ€λ₯Έ λ΄λ³΄λ΄κΈ° νμμ΄ μ΄λ»κ² μλνλμ§ μ΄ν΄ν©λλ€.
- μ΅μ ν: νΉμ μ¬μ© μ¬λ‘μ κ°μ₯ μ ν©ν λ΄λ³΄λ΄κΈ° νμμ μμ보μΈμ.
- λΉμ© ν¨μ¨μ±: λ²€μΉλ§ν¬ κ²°κ³Όλ₯Ό κΈ°λ°μΌλ‘ νλμ¨μ΄ 리μμ€λ₯Ό λ³΄λ€ ν¨μ¨μ μΌλ‘ νμ©νμΈμ.
λ²€μΉλ§ν¬ λͺ¨λμ μ£Όμ μ§ν
- mAP50-95: 물체 κ°μ§, μΈλΆν λ° ν¬μ¦ μΆμ μ©.
- μ νλ_top5: μ΄λ―Έμ§ λΆλ₯μ©μ λλ€.
- μΆλ‘ μκ°: κ° μ΄λ―Έμ§μ μμλ μκ°(λ°λ¦¬μ΄)μ λλ€.
μ§μλλ λ΄λ³΄λ΄κΈ° νμ
- ONNX: μ΅μ μ CPU μ±λ₯μ μν΄
- TensorRT: GPU ν¨μ¨μ± κ·Ήλν
- OpenVINO: μΈν νλμ¨μ΄ μ΅μ νμ©
- CoreML, TensorFlow SavedModel , κΈ°ν: λ€μν λ°°ν¬ μꡬμ¬νμ μ ν©ν©λλ€.
ν
- ONNX λλ OpenVINO μΌλ‘ λ΄λ³΄λ΄λ©΄ CPU μλκ° μ΅λ 3λ°°κΉμ§ λΉ¨λΌμ§λλ€.
- TensorRT μΌλ‘ λ΄λ³΄λ΄λ©΄ GPU μλκ° μ΅λ 5λ°°κΉμ§ λΉ¨λΌμ§λλ€.
μ¬μ© μ
ONNX, TensorRT λ± μ§μλλ λͺ¨λ λ΄λ³΄λ΄κΈ° νμμμ YOLOv8n λ²€μΉλ§ν¬λ₯Ό μ€νν©λλ€. λ΄λ³΄λ΄κΈ° μΈμμ μ 체 λͺ©λ‘μ μλμ μΈμ μΉμ μ μ°Έμ‘°νμΈμ.
μ
μΈμ
λ€μκ³Ό κ°μ μΈμ model
, data
, imgsz
, half
, device
λ° verbose
λ μ¬μ©μκ° νΉμ μꡬ μ¬νμ λ§κ² λ²€μΉλ§ν¬λ₯Ό λ―ΈμΈ μ‘°μ νκ³ λ€μν λ΄λ³΄λ΄κΈ° νμμ μ±λ₯μ μ½κ² λΉκ΅ν μ μλ μ μ°μ±μ μ 곡ν©λλ€.
ν€ | κΈ°λ³Έκ° | μ€λͺ |
---|---|---|
model |
None |
λͺ¨λΈ νμΌμ κ²½λ‘λ₯Ό μ§μ ν©λλ€. λ λ€ νμ© .pt κ·Έλ¦¬κ³ .yaml νμ λ±μ μλ‘ λ€ μ μμ΅λλ€, "yolov8n.pt" λ₯Ό μ¬μ©νμ¬ μ¬μ νμ΅λ λͺ¨λΈ λλ κ΅¬μ± νμΌμ μ¬μ©ν μ μμ΅λλ€. |
data |
None |
μΌλ°μ μΌλ‘ μ ν¨μ± κ²μ¬ λ°μ΄ν°μ κ²½λ‘ λ° μ€μ μ ν¬ν¨νμ¬ λ²€μΉλ§νΉμ μν λ°μ΄ν° μ§ν©μ μ μνλ YAML νμΌμ κ²½λ‘μ
λλ€. μμ: "coco8.yaml" . |
imgsz |
640 |
λͺ¨λΈμ μ
λ ₯ μ΄λ―Έμ§ ν¬κΈ°μ
λλ€. μ μ¬κ°ν μ΄λ―Έμ§μ κ²½μ° λ¨μΌ μ μ λλ ννμΌ μ μμ΅λλ€. (width, height) μ μ¬κ°νμ΄ μλ κ²½μ°, μλ₯Ό λ€μ΄, (640, 480) . |
half |
False |
FP16(λ°μ λ°) μΆλ‘ μ νμ±ννμ¬ νΈν νλμ¨μ΄μμ λ©λͺ¨λ¦¬ μ¬μ©λμ μ€μ΄κ³ μλλ₯Ό λμΌ μ μμ΅λλ€. μ¬μ© half=True λ₯Ό ν΄λ¦ν©λλ€. |
int8 |
False |
INT8 μμνλ₯Ό νμ±ννμ¬ μ§μλλ λλ°μ΄μ€μμ μ±λ₯μ λμ± μ΅μ ννλ©°, νΉν μ£μ§ λλ°μ΄μ€μ μ μ©ν©λλ€. Set int8=True λ₯Ό μ¬μ©νμΈμ. |
device |
None |
λ€μκ³Ό κ°μ λ²€μΉλ§νΉμ μν κ³μ° μ₯μΉλ₯Ό μ μν©λλ€. "cpu" , "cuda:0" λλ λ€μκ³Ό κ°μ μ₯μΉ λͺ©λ‘ "cuda:0,1" λ©ν° GPU μ€μ μ κ²½μ°. |
verbose |
False |
λ‘κΉ
μΆλ ₯μ μΈλΆ μμ€μ μ μ΄ν©λλ€. λΆμΈ κ°; μ€μ verbose=True λ₯Ό μ¬μ©νμ¬ μμΈν λ‘κ·Έλ₯Ό νμΈνκ±°λ μκ³κ° μ€λ₯μ λν νλ‘νΈλ₯Ό νμΈν μ μμ΅λλ€. |
λ΄λ³΄λ΄κΈ° νμ
λ²€μΉλ§ν¬λ μλμ λͺ¨λ κ°λ₯ν λ΄λ³΄λ΄κΈ° νμμ λν΄ μλμΌλ‘ μ€νμ μλν©λλ€.
νμ | format μΈμ |
λͺ¨λΈ | λ©νλ°μ΄ν° | μΈμ |
---|---|---|---|---|
PyTorch | - | yolov8n.pt |
β | - |
TorchScript | torchscript |
yolov8n.torchscript |
β | imgsz , optimize , batch |
ONNX | onnx |
yolov8n.onnx |
β | imgsz , half , dynamic , simplify , opset , batch |
OpenVINO | openvino |
yolov8n_openvino_model/ |
β | imgsz , half , int8 , batch |
TensorRT | engine |
yolov8n.engine |
β | imgsz , half , dynamic , simplify , workspace , batch |
CoreML | coreml |
yolov8n.mlpackage |
β | imgsz , half , int8 , nms , batch |
TF SavedModel | saved_model |
yolov8n_saved_model/ |
β | imgsz , keras , int8 , batch |
TF GraphDef | pb |
yolov8n.pb |
β | imgsz , batch |
TF Lite | tflite |
yolov8n.tflite |
β | imgsz , half , int8 , batch |
TF Edge TPU | edgetpu |
yolov8n_edgetpu.tflite |
β | imgsz , batch |
TF.js | tfjs |
yolov8n_web_model/ |
β | imgsz , half , int8 , batch |
PaddlePaddle | paddle |
yolov8n_paddle_model/ |
β | imgsz , batch |
NCNN | ncnn |
yolov8n_ncnn_model/ |
β | imgsz , half , batch |
μ 체 보기 export
μΈλΆ μ 보μμ λ΄λ³΄λ΄κΈ° νμ΄μ§λ‘ μ΄λν©λλ€.
μμ± 2023-11-12, μ λ°μ΄νΈ 2024-04-27
μμ±μ: glenn-jocher (12), Burhan-Q (1), RizwanMunawar (1), Laughing-q (1), maianumerosky (1)