μ½˜ν…μΈ λ‘œ κ±΄λ„ˆλ›°κΈ°

YOLOv5

κ°œμš”

YOLOv5u represents an advancement in object detection methodologies. Originating from the foundational architecture of the YOLOv5 model developed by Ultralytics, YOLOv5u integrates the anchor-free, objectness-free split head, a feature previously introduced in the YOLOv8 models. This adaptation refines the model's architecture, leading to an improved accuracy-speed tradeoff in object detection tasks. Given the empirical results and its derived features, YOLOv5u provides an efficient alternative for those seeking robust solutions in both research and practical applications.

Ultralytics YOLOv5

μ£Όμš” κΈ°λŠ₯

  • 액컀 프리 λΆ„ν•  Ultralytics ν—€λ“œ: 기쑴의 객체 감지 λͺ¨λΈμ€ 사전 μ •μ˜λœ 액컀 λ°•μŠ€μ— μ˜μ‘΄ν•˜μ—¬ 객체 μœ„μΉ˜λ₯Ό μ˜ˆμΈ‘ν•©λ‹ˆλ‹€. ν•˜μ§€λ§Œ YOLOv5uλŠ” μ΄λŸ¬ν•œ μ ‘κ·Ό 방식을 ν˜„λŒ€ν™”ν•©λ‹ˆλ‹€. 액컀 프리 λΆ„ν•  Ultralytics ν—€λ“œλ₯Ό μ±„νƒν•¨μœΌλ‘œμ¨ 보닀 μœ μ—°ν•˜κ³  적응적인 감지 λ©”μ»€λ‹ˆμ¦˜μ„ 보μž₯ν•˜μ—¬ 결과적으둜 λ‹€μ–‘ν•œ μ‹œλ‚˜λ¦¬μ˜€μ—μ„œ μ„±λŠ₯을 ν–₯μƒμ‹œν‚΅λ‹ˆλ‹€.

  • μ΅œμ ν™”λœ 정확도-속도 νŠΈλ ˆμ΄λ“œ μ˜€ν”„: 속도와 μ •ν™•λ„λŠ” μ’…μ’… μ„œλ‘œ λ°˜λŒ€ λ°©ν–₯으둜 μ›€μ§μž…λ‹ˆλ‹€. ν•˜μ§€λ§Œ YOLOv5uλŠ” 이 νŠΈλ ˆμ΄λ“œμ˜€ν”„μ— λ„μ „ν•©λ‹ˆλ‹€. 이 μ œν’ˆμ€ λ³΄μ •λœ 밸런슀λ₯Ό μ œκ³΅ν•˜μ—¬ 정확도 μ €ν•˜ 없이 μ‹€μ‹œκ°„ 감지λ₯Ό 보μž₯ν•©λ‹ˆλ‹€. 이 κΈ°λŠ₯은 특히 자율 μ£Όν–‰ μ°¨λŸ‰, λ‘œλ΄‡ 곡학, μ‹€μ‹œκ°„ λΉ„λ””μ˜€ 뢄석과 같이 μ‹ μ†ν•œ 응닡을 μš”κ΅¬ν•˜λŠ” μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ— 맀우 μœ μš©ν•©λ‹ˆλ‹€.

  • 사전 ν•™μŠ΅λœ λ‹€μ–‘ν•œ λͺ¨λΈ: μž‘μ—…λ§ˆλ‹€ λ‹€λ₯Έ νˆ΄μ…‹μ΄ ν•„μš”ν•˜λ‹€λŠ” 점을 μ΄ν•΄ν•œ YOLOv5uλŠ” λ‹€μ–‘ν•œ 사전 ν•™μŠ΅λœ λͺ¨λΈμ„ μ œκ³΅ν•©λ‹ˆλ‹€. μΆ”λ‘ , 검증, ꡐ윑 쀑 μ–΄λ–€ 뢄야에 μ§‘μ€‘ν•˜λ“  λ§žμΆ€ν˜• λͺ¨λΈμ΄ μ—¬λŸ¬λΆ„μ„ 기닀리고 μžˆμŠ΅λ‹ˆλ‹€. μ΄λŸ¬ν•œ 닀양성을 톡해 천편일λ₯ μ μΈ μ†”λ£¨μ…˜μ΄ μ•„λ‹ˆλΌ κ³ μœ ν•œ κ³Όμ œμ— 맞게 νŠΉλ³„νžˆ λ―Έμ„Έ μ‘°μ •λœ λͺ¨λΈμ„ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

μ§€μ›λ˜λŠ” μž‘μ—… 및 λͺ¨λ“œ

사전 ν•™μŠ΅λœ λ‹€μ–‘ν•œ κ°€μ€‘μΉ˜λ₯Ό κ°–μΆ˜ YOLOv5u λͺ¨λΈμ€ 물체 감지 μž‘μ—…μ— νƒμ›”ν•©λ‹ˆλ‹€. 포괄적인 λͺ¨λ“œλ₯Ό μ§€μ›ν•˜λ―€λ‘œ κ°œλ°œλΆ€ν„° λ°°ν¬κΉŒμ§€ λ‹€μ–‘ν•œ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ— μ ν•©ν•©λ‹ˆλ‹€.

λͺ¨λΈ μœ ν˜• 사전 ν•™μŠ΅λœ κ°€μ€‘μΉ˜ μž‘μ—… μΆ”λ‘  μœ νš¨μ„± 검사 ꡐ윑 내보내기
YOLOv5u yolov5nu, yolov5su, yolov5mu, yolov5lu, yolov5xu, yolov5n6u, yolov5s6u, yolov5m6u, yolov5l6u, yolov5x6u 물체 감지 βœ… βœ… βœ… βœ…

이 ν‘œμ—μ„œλŠ” 객체 감지 μž‘μ—…μ—μ„œμ˜ 적용 κ°€λŠ₯μ„±κ³Ό μΆ”λ‘ , 검증, ν›ˆλ ¨, 내보내기 λ“± λ‹€μ–‘ν•œ 운영 λͺ¨λ“œμ— λŒ€ν•œ 지원을 κ°•μ‘°ν•˜λŠ” YOLOv5u λͺ¨λΈ λ³€ν˜•μ— λŒ€ν•œ μžμ„Έν•œ κ°œμš”λ₯Ό μ œκ³΅ν•©λ‹ˆλ‹€. μ΄λŸ¬ν•œ 포괄적인 지원을 톡해 μ‚¬μš©μžλŠ” λ‹€μ–‘ν•œ 물체 감지 μ‹œλ‚˜λ¦¬μ˜€μ—μ„œ YOLOv5u λͺ¨λΈμ˜ κΈ°λŠ₯을 μ΅œλŒ€ν•œ ν™œμš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

μ„±λŠ₯ μ§€ν‘œ

μ„±λŠ₯

사전 ν•™μŠ΅λœ 80개의 클래슀λ₯Ό ν¬ν•¨ν•˜μ—¬ COCOμ—μ„œ ν•™μŠ΅λœ μ΄λŸ¬ν•œ λͺ¨λΈμ˜ μ‚¬μš© μ˜ˆμ œλŠ” 탐지 λ¬Έμ„œλ₯Ό μ°Έμ‘°ν•˜μ„Έμš”.

λͺ¨λΈ YAML 크기
(ν”½μ…€)
mAPval
50-95
속도
CPU ONNX
(ms)
속도
A100 TensorRT
(ms)
λ§€κ°œλ³€μˆ˜
(M)
FLOPs
(B)
yolov5nu.pt yolov5n.yaml 640 34.3 73.6 1.06 2.6 7.7
yolov5su.pt yolov5s.yaml 640 43.0 120.7 1.27 9.1 24.0
yolov5mu.pt yolov5m.yaml 640 49.0 233.9 1.86 25.1 64.2
yolov5lu.pt yolov5l.yaml 640 52.2 408.4 2.50 53.2 135.0
yolov5xu.pt yolov5x.yaml 640 53.2 763.2 3.81 97.2 246.4
yolov5n6u.pt yolov5n6.yaml 1280 42.1 211.0 1.83 4.3 7.8
yolov5s6u.pt yolov5s6.yaml 1280 48.6 422.6 2.34 15.3 24.6
yolov5m6u.pt yolov5m6.yaml 1280 53.6 810.9 4.36 41.2 65.7
yolov5l6u.pt yolov5l6.yaml 1280 55.7 1470.9 5.47 86.1 137.4
yolov5x6u.pt yolov5x6.yaml 1280 56.8 2436.5 8.98 155.4 250.7

μ‚¬μš© 예

이 μ˜ˆλŠ” κ°„λ‹¨ν•œ YOLOv5 ν•™μŠ΅ 및 μΆ”λ‘  예제λ₯Ό μ œκ³΅ν•©λ‹ˆλ‹€. μ΄λŸ¬ν•œ λͺ¨λ“œ 및 기타 λͺ¨λ“œμ— λŒ€ν•œ 전체 μ„€λͺ…μ„œλŠ” 예츑, ν•™μŠ΅, Val 및 내보내기 λ¬Έμ„œ νŽ˜μ΄μ§€λ₯Ό μ°Έμ‘°ν•˜μ„Έμš”.

예

PyTorch pretrained *.pt λͺ¨λΈ 및 ꡬ성 *.yaml νŒŒμΌμ„ YOLO() 클래슀λ₯Ό μ‚¬μš©ν•˜μ—¬ python μ—μ„œ λͺ¨λΈ μΈμŠ€ν„΄μŠ€λ₯Ό μƒμ„±ν•©λ‹ˆλ‹€:

from ultralytics import YOLO

# Load a COCO-pretrained YOLOv5n model
model = YOLO("yolov5n.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 YOLOv5n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")

CLI λͺ…령을 μ‚¬μš©ν•˜μ—¬ λͺ¨λΈμ„ 직접 μ‹€ν–‰ν•  수 μžˆμŠ΅λ‹ˆλ‹€:

# Load a COCO-pretrained YOLOv5n model and train it on the COCO8 example dataset for 100 epochs
yolo train model=yolov5n.pt data=coco8.yaml epochs=100 imgsz=640

# Load a COCO-pretrained YOLOv5n model and run inference on the 'bus.jpg' image
yolo predict model=yolov5n.pt source=path/to/bus.jpg

인용 및 감사

연ꡬ에 YOLOv5 λ˜λŠ” YOLOv5uλ₯Ό μ‚¬μš©ν•˜λŠ” 경우 Ultralytics YOLOv5 리포지토리λ₯Ό λ‹€μŒκ³Ό 같이 μΈμš©ν•΄ μ£Όμ„Έμš”:

@software{yolov5,
  title = {Ultralytics YOLOv5},
  author = {Glenn Jocher},
  year = {2020},
  version = {7.0},
  license = {AGPL-3.0},
  url = {https://github.com/ultralytics/yolov5},
  doi = {10.5281/zenodo.3908559},
  orcid = {0000-0001-5950-6979}
}

YOLOv5 λͺ¨λΈμ€ λ‹€μŒκ³Ό 같이 μ œκ³΅λ©λ‹ˆλ‹€. AGPL-3.0 및 μ—”ν„°ν”„λΌμ΄μ¦ˆ λΌμ΄μ„ μŠ€λ‘œ μ œκ³΅λ©λ‹ˆλ‹€.

자주 λ¬»λŠ” 질문

Ultralytics YOLOv5uλŠ” 무엇이며 YOLOv5 κ³Ό μ–΄λ–»κ²Œ λ‹€λ₯Έκ°€μš”?

Ultralytics YOLOv5u is an advanced version of YOLOv5, integrating the anchor-free, objectness-free split head that enhances the accuracy-speed tradeoff for real-time object detection tasks. Unlike the traditional YOLOv5, YOLOv5u adopts an anchor-free detection mechanism, making it more flexible and adaptive in diverse scenarios. For more detailed information on its features, you can refer to the YOLOv5 Overview.

액컀가 μ—†λŠ” Ultralytics ν—€λ“œκ°€ YOLOv5uμ—μ„œ 물체 감지 μ„±λŠ₯을 μ–΄λ–»κ²Œ κ°œμ„ ν•˜λ‚˜μš”?

YOLOv5u의 액컀 프리( Ultralytics ) ν—€λ“œλŠ” 사전 μ •μ˜λœ 액컀 λ°•μŠ€μ— λŒ€ν•œ μ˜μ‘΄μ„±μ„ μ œκ±°ν•˜μ—¬ 물체 감지 μ„±λŠ₯을 ν–₯μƒμ‹œν‚΅λ‹ˆλ‹€. κ·Έ κ²°κ³Ό λ‹€μ–‘ν•œ 물체 크기와 λͺ¨μ–‘을 보닀 효율적으둜 μ²˜λ¦¬ν•  수 μžˆλŠ” 보닀 μœ μ—°ν•˜κ³  적응적인 감지 λ©”μ»€λ‹ˆμ¦˜μ΄ νƒ„μƒν–ˆμŠ΅λ‹ˆλ‹€. μ΄λŸ¬ν•œ κ°œμ„ μ€ 정확도와 속도 κ°„μ˜ κ· ν˜• 작힌 νŠΈλ ˆμ΄λ“œμ˜€ν”„μ— μ§μ ‘μ μœΌλ‘œ κΈ°μ—¬ν•˜μ—¬ YOLOv5uλ₯Ό μ‹€μ‹œκ°„ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ— μ ν•©ν•˜κ²Œ λ§Œλ“­λ‹ˆλ‹€. μ£Όμš” κΈ°λŠ₯ μ„Ήμ…˜μ—μ„œ μ•„ν‚€ν…μ²˜μ— λŒ€ν•΄ μžμ„Ένžˆ μ•Œμ•„λ³΄μ„Έμš”.

λ‹€λ₯Έ μž‘μ—…κ³Ό λͺ¨λ“œμ— 사전 ν•™μŠ΅λœ YOLOv5u λͺ¨λΈμ„ μ‚¬μš©ν•  수 μžˆλ‚˜μš”?

예, 객체 감지와 같은 λ‹€μ–‘ν•œ μž‘μ—…μ— 사전 ν•™μŠ΅λœ YOLOv5u λͺ¨λΈμ„ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€. μ΄λŸ¬ν•œ λͺ¨λΈμ€ μΆ”λ‘ , 검증, ν›ˆλ ¨, 내보내기 λ“± μ—¬λŸ¬ λͺ¨λ“œλ₯Ό μ§€μ›ν•©λ‹ˆλ‹€. μ΄λŸ¬ν•œ μœ μ—°μ„± 덕뢄에 μ‚¬μš©μžλŠ” λ‹€μ–‘ν•œ 운영 μš”κ΅¬ 사항에 따라 YOLOv5u λͺ¨λΈμ˜ κΈ°λŠ₯을 ν™œμš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€. μžμ„Έν•œ κ°œμš”λŠ” μ§€μ›λ˜λŠ” μž‘μ—… 및 λͺ¨λ“œ μ„Ήμ…˜μ„ μ°Έμ‘°ν•˜μ„Έμš”.

YOLOv5u λͺ¨λΈμ˜ μ„±λŠ₯ μ§€ν‘œλŠ” λ‹€λ₯Έ ν”Œλž«νΌμ—μ„œ μ–΄λ–»κ²Œ λΉ„κ΅λ˜λ‚˜μš”?

YOLOv5u λͺ¨λΈμ˜ μ„±λŠ₯ λ©”νŠΈλ¦­μ€ μ‚¬μš©λ˜λŠ” ν”Œλž«νΌκ³Ό ν•˜λ“œμ›¨μ–΄μ— 따라 λ‹€λ¦…λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, YOLOv5nu λͺ¨λΈμ€ COCO 데이터 μ„ΈνŠΈμ—μ„œ 34.3mAPλ₯Ό λ‹¬μ„±ν•˜λ©° CPU (ONNX) 및 A100 TensorRT μ—μ„œ 73.6ms의 속도λ₯Ό λ³΄μž…λ‹ˆλ‹€. λ‹€μ–‘ν•œ YOLOv5u λͺ¨λΈμ— λŒ€ν•œ μžμ„Έν•œ μ„±λŠ₯ λ©”νŠΈλ¦­μ€ μ„±λŠ₯ λ©”νŠΈλ¦­ μ„Ήμ…˜μ—μ„œ 확인할 수 있으며, μ—¬κΈ°μ—λŠ” λ‹€μ–‘ν•œ 기기에 λŒ€ν•œ 쒅합적인 비ꡐ가 μ œκ³΅λ©λ‹ˆλ‹€.

Ultralytics Python APIλ₯Ό μ‚¬μš©ν•˜μ—¬ YOLOv5u λͺ¨λΈμ„ ν›ˆλ ¨ν•˜λ €λ©΄ μ–΄λ–»κ²Œ ν•΄μ•Ό ν•˜λ‚˜μš”?

사전 ν•™μŠ΅λœ λͺ¨λΈμ„ λ‘œλ“œν•˜κ³  데이터 μ„ΈνŠΈμ™€ ν•¨κ»˜ ν•™μŠ΅ λͺ…령을 μ‹€ν–‰ν•˜μ—¬ YOLOv5u λͺ¨λΈμ„ ν•™μŠ΅ν•  수 μžˆμŠ΅λ‹ˆλ‹€. λ‹€μŒμ€ κ°„λ‹¨ν•œ μ˜ˆμž…λ‹ˆλ‹€:

예

from ultralytics import YOLO

# Load a COCO-pretrained YOLOv5n model
model = YOLO("yolov5n.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)
# Load a COCO-pretrained YOLOv5n model and train it on the COCO8 example dataset for 100 epochs
yolo train model=yolov5n.pt data=coco8.yaml epochs=100 imgsz=640

μžμ„Έν•œ 지침은 μ‚¬μš© μ˜ˆμ‹œ μ„Ήμ…˜μ„ μ°Έμ‘°ν•˜μ„Έμš”.


πŸ“… Created 11 months ago ✏️ Updated 18 days ago

λŒ“κΈ€