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

YOLOv3, YOLOv3-Ultralytics, YOLOv3u

κ°œμš”

이 λ¬Έμ„œμ—μ„œλŠ” μ„œλ‘œ λ°€μ ‘ν•˜κ²Œ κ΄€λ ¨λœ μ„Έ 가지 객체 감지 λͺ¨λΈ, 즉 YOLOv3, YOLOv3-Ultralytics, YOLOv3u에 λŒ€ν•œ κ°œμš”λ₯Ό μ„€λͺ…ν•©λ‹ˆλ‹€.

  1. YOLOv3: You Only Look Once(YOLO) 객체 감지 μ•Œκ³ λ¦¬μ¦˜μ˜ μ„Έ 번째 λ²„μ „μž…λ‹ˆλ‹€. μ›λž˜ Joseph Redmon이 κ°œλ°œν•œ YOLOv3λŠ” λ©€ν‹°μŠ€μΌ€μΌ 예츑과 μ„Έ 가지 크기의 감지 컀널과 같은 κΈ°λŠ₯을 λ„μž…ν•˜μ—¬ 이전 버전보닀 κ°œμ„ λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

  2. YOLOv3-Ultralytics: Ultralytics ' YOLOv3 λͺ¨λΈμ„ κ΅¬ν˜„ν•œ κ²ƒμž…λ‹ˆλ‹€. μ›λž˜μ˜ YOLOv3 μ•„ν‚€ν…μ²˜λ₯Ό μž¬ν˜„ν•˜κ³  더 λ§Žμ€ 사전 ν•™μŠ΅λœ λͺ¨λΈ 지원 및 더 μ‰¬μš΄ μ‚¬μš©μž μ •μ˜ μ˜΅μ…˜κ³Ό 같은 μΆ”κ°€ κΈ°λŠ₯을 μ œκ³΅ν•©λ‹ˆλ‹€.

  3. YOLOv3u: YOLOv8 λͺ¨λΈμ— μ‚¬μš©λœ 액컀가 μ—†κ³  물체가 μ—†λŠ” λΆ„ν•  ν—€λ“œλ₯Ό ν†΅ν•©ν•œ YOLOv3-Ultralytics 의 μ—…λ°μ΄νŠΈ λ²„μ „μž…λ‹ˆλ‹€. YOLOv3uλŠ” YOLOv3와 λ™μΌν•œ λ°±λ³Έ 및 λ„₯ μ•„ν‚€ν…μ²˜λ₯Ό μœ μ§€ν•˜μ§€λ§Œ YOLOv8 μ—μ„œ μ—…λ°μ΄νŠΈλœ 감지 ν—€λ“œλ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€.

Ultralytics YOLOv3

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

  • YOLOv3: μ„Έ 가지 크기의 탐지 컀널을 ν™œμš©ν•˜μ—¬ μ„Έ 가지 μŠ€μΌ€μΌμ„ μ‚¬μš©ν•˜μ—¬ νƒμ§€ν•˜λŠ” κΈ°λŠ₯을 λ„μž…ν–ˆμŠ΅λ‹ˆλ‹€: 13x13, 26x26, 52x52. 이λ₯Ό 톡해 λ‹€μ–‘ν•œ 크기의 물체에 λŒ€ν•œ 감지 정확도가 크게 ν–₯μƒλ˜μ—ˆμŠ΅λ‹ˆλ‹€. λ˜ν•œ YOLOv3λŠ” 각 경계 μƒμžμ— λŒ€ν•œ 닀쀑 λ ˆμ΄λΈ” 예츑과 더 λ‚˜μ€ νŠΉμ§• μΆ”μΆœκΈ° λ„€νŠΈμ›Œν¬μ™€ 같은 κΈ°λŠ₯을 μΆ”κ°€ν–ˆμŠ΅λ‹ˆλ‹€.

  • YOLOv3-Ultralytics: Ultralytics YOLOv3의 κ΅¬ν˜„μ€ μ›λž˜ λͺ¨λΈκ³Ό λ™μΌν•œ μ„±λŠ₯을 μ œκ³΅ν•˜μ§€λ§Œ 더 λ§Žμ€ 사전 ν›ˆλ ¨λœ λͺ¨λΈ, μΆ”κ°€ ν›ˆλ ¨ 방법 및 더 μ‰¬μš΄ μ‚¬μš©μž 지정 μ˜΅μ…˜μ„ μΆ”κ°€λ‘œ μ§€μ›ν•©λ‹ˆλ‹€. λ”°λΌμ„œ μ‹€μ œ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ— λ”μš± λ‹€μ–‘ν•˜κ³  μ‚¬μš©μž μΉœν™”μ μœΌλ‘œ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

  • YOLOv3u: 이 μ—…λ°μ΄νŠΈλœ λͺ¨λΈμ—λŠ” YOLOv8 의 액컀가 ν•„μš” μ—†λŠ” λΆ„ν•  ν—€λ“œκ°€ ν†΅ν•©λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. 이 감지 ν—€λ“œ μ„€κ³„λŠ” 사전 μ •μ˜λœ 액컀 λ°•μŠ€ 및 물체 μ μˆ˜κ°€ ν•„μš”ν•˜μ§€ μ•ŠμœΌλ―€λ‘œ λ‹€μ–‘ν•œ 크기와 λͺ¨μ–‘μ˜ 물체λ₯Ό κ°μ§€ν•˜λŠ” λͺ¨λΈμ˜ λŠ₯λ ₯을 ν–₯μƒμ‹œν‚¬ 수 μžˆμŠ΅λ‹ˆλ‹€. λ”°λΌμ„œ YOLOv3uλŠ” 물체 감지 μž‘μ—…μ„ λ”μš± κ°•λ ₯ν•˜κ³  μ •ν™•ν•˜κ²Œ μˆ˜ν–‰ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

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

YOLOv3, YOLOv3-Ultralytics, YOLOv3uλ₯Ό ν¬ν•¨ν•œ YOLOv3 μ‹œλ¦¬μ¦ˆλŠ” 물체 감지 μž‘μ—…μ„ μœ„ν•΄ νŠΉλ³„νžˆ μ„€κ³„λ˜μ—ˆμŠ΅λ‹ˆλ‹€. 이 λͺ¨λΈλ“€μ€ λ‹€μ–‘ν•œ μ‹€μ œ μ‹œλ‚˜λ¦¬μ˜€μ—μ„œ 정확도와 속도 μ‚¬μ΄μ˜ κ· ν˜•μ„ μœ μ§€ν•˜λ©΄μ„œ 효과적으둜 μž‘λ™ν•˜λŠ” κ²ƒμœΌλ‘œ 유λͺ…ν•©λ‹ˆλ‹€. 각 λ³€ν˜•μ€ κ³ μœ ν•œ κΈ°λŠ₯κ³Ό μ΅œμ ν™”λ₯Ό μ œκ³΅ν•˜λ―€λ‘œ λ‹€μ–‘ν•œ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ— μ ν•©ν•©λ‹ˆλ‹€.

μ„Έ 가지 λͺ¨λΈ λͺ¨λ‘ 포괄적인 λͺ¨λ“œ μ„ΈνŠΈλ₯Ό μ§€μ›ν•˜μ—¬ λͺ¨λΈ 배포 및 개발의 λ‹€μ–‘ν•œ λ‹¨κ³„μ—μ„œ λ‹€μš©λ„λ‘œ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€. μ΄λŸ¬ν•œ λͺ¨λ“œμ—λŠ” μΆ”λ‘ , 검증, ν›ˆλ ¨ 및 내보내기가 ν¬ν•¨λ˜μ–΄ μžˆμ–΄ μ‚¬μš©μžμ—κ²Œ 효과적인 객체 탐지λ₯Ό μœ„ν•œ μ™„λ²½ν•œ νˆ΄ν‚·μ„ μ œκ³΅ν•©λ‹ˆλ‹€.

λͺ¨λΈ μœ ν˜• μ§€μ›λ˜λŠ” μž‘μ—… μΆ”λ‘  μœ νš¨μ„± 검사 ꡐ윑 내보내기
YOLOv3 물체 감지 βœ… βœ… βœ… βœ…
YOLOv3-Ultralytics 물체 감지 βœ… βœ… βœ… βœ…
YOLOv3u 물체 감지 βœ… βœ… βœ… βœ…

이 ν‘œλŠ” 각 YOLOv3 λ³€ν˜•μ˜ κΈ°λŠ₯을 ν•œλˆˆμ— λ³Ό 수 있으며, 객체 감지 μ›Œν¬ν”Œλ‘œμš°μ˜ λ‹€μ–‘ν•œ μž‘μ—… 및 운영 λͺ¨λ“œμ— λŒ€ν•œ λ‹€μš©λ„μ„±κ³Ό 적합성을 κ°•μ‘°ν•©λ‹ˆλ‹€.

μ‚¬μš© 예

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

예

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

from ultralytics import YOLO

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

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

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

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

인용 및 감사

연ꡬ에 YOLOv3λ₯Ό μ‚¬μš©ν•˜λŠ” 경우 원본 YOLO λ…Όλ¬Έκ³Ό Ultralytics YOLOv3 리포지토리λ₯Ό μΈμš©ν•΄ μ£Όμ„Έμš”:

@article{redmon2018yolov3,
  title={YOLOv3: An Incremental Improvement},
  author={Redmon, Joseph and Farhadi, Ali},
  journal={arXiv preprint arXiv:1804.02767},
  year={2018}
}

μ˜€λ¦¬μ§€λ„ YOLOv3λ₯Ό κ°œλ°œν•΄ μ£Όμ‹  Joseph Redmonκ³Ό Ali Farhadiμ—κ²Œ κ°μ‚¬λ“œλ¦½λ‹ˆλ‹€.

자주 λ¬»λŠ” 질문

YOLOv3, YOLOv3-Ultralytics, YOLOv3u의 차이점은 λ¬΄μ—‡μΈκ°€μš”?

YOLOv3λŠ” μ‘°μ…‰ λ ˆλ“œλͺ¬μ΄ κ°œλ°œν•œ YOLO (You Only Look Once) 객체 감지 μ•Œκ³ λ¦¬μ¦˜μ˜ μ„Έ 번째 반볡으둜, μ„Έ 가지 μŠ€μΌ€μΌ(13x13, 26x26, 52x52)을 μ‚¬μš©ν•˜μ—¬ 정확도와 속도가 κ· ν˜•μ„ μ΄λ£¨λŠ” κ²ƒμœΌλ‘œ 유λͺ…ν•©λ‹ˆλ‹€. YOLOv3-Ultralytics λŠ” Ultralytics' 사전 ν•™μŠ΅λœ λͺ¨λΈμ— λŒ€ν•œ 지원을 μΆ”κ°€ν•˜κ³  λͺ¨λΈμ„ 더 μ‰½κ²Œ μ‚¬μš©μž 지정할 수 μžˆλ„λ‘ ν•˜λŠ” YOLOv3의 λ³€ν˜•μž…λ‹ˆλ‹€. YOLOv3uλŠ” YOLOv3-Ultralytics 의 μ—…κ·Έλ ˆμ΄λ“œ λ²„μ „μœΌλ‘œ, 액컀가 μ—†κ³  물체가 μ—†λŠ” λΆ„ν•  ν—€λ“œ( YOLOv8)λ₯Ό ν†΅ν•©ν•˜μ—¬ λ‹€μ–‘ν•œ 물체 크기에 λŒ€ν•œ 감지 견고성과 정확도λ₯Ό ν–₯μƒμ‹œν‚΅λ‹ˆλ‹€. λ³€ν˜• μ œν’ˆμ— λŒ€ν•œ μžμ„Έν•œ λ‚΄μš©μ€ YOLOv3 μ‹œλ¦¬μ¦ˆλ₯Ό μ°Έμ‘°ν•˜μ„Έμš”.

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

Ultralytics 으둜 YOLOv3 λͺ¨λΈμ„ ν›ˆλ ¨ν•˜λŠ” 방법은 κ°„λ‹¨ν•©λ‹ˆλ‹€. Python λ˜λŠ” CLI 을 μ‚¬μš©ν•˜μ—¬ λͺ¨λΈμ„ ν›ˆλ ¨ν•  수 μžˆμŠ΅λ‹ˆλ‹€:

예

from ultralytics import YOLO

# Load a COCO-pretrained YOLOv3n model
model = YOLO("yolov3n.pt")

# 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 YOLOv3n model and train it on the COCO8 example dataset for 100 epochs
yolo train model=yolov3n.pt data=coco8.yaml epochs=100 imgsz=640

보닀 포괄적인 ꡐ윑 μ˜΅μ…˜κ³Ό κ°€μ΄λ“œλΌμΈμ€ ꡐ윑 λͺ¨λ“œ λ¬Έμ„œλ₯Ό μ°Έμ‘°ν•˜μ„Έμš”.

물체 감지 μž‘μ—…μ—μ„œ YOLOv3uκ°€ 더 μ •ν™•ν•œ μ΄μœ λŠ” λ¬΄μ—‡μΈκ°€μš”?

YOLOv3uλŠ” YOLOv8 λͺ¨λΈμ— μ‚¬μš©λœ 액컀가 μ—†κ³  물체가 μ—†λŠ” λΆ„ν•  ν—€λ“œλ₯Ό ν†΅ν•©ν•˜μ—¬ YOLOv3 및 YOLOv3-Ultralytics 을 κ°œμ„ ν–ˆμŠ΅λ‹ˆλ‹€. 이 μ—…κ·Έλ ˆμ΄λ“œλ₯Ό 톡해 사전 μ •μ˜λœ 액컀 λ°•μŠ€ 및 물체 μ μˆ˜κ°€ ν•„μš”ν•˜μ§€ μ•Šμ•„ λ‹€μ–‘ν•œ 크기와 λͺ¨μ–‘μ˜ 물체λ₯Ό 보닀 μ •ν™•ν•˜κ²Œ 감지할 수 μžˆλŠ” κΈ°λŠ₯이 ν–₯μƒλ˜μ—ˆμŠ΅λ‹ˆλ‹€. λ”°λΌμ„œ λ³΅μž‘ν•˜κ³  λ‹€μ–‘ν•œ 물체 감지 μž‘μ—…μ— YOLOv3uκ°€ 더 λ‚˜μ€ 선택이 될 κ²ƒμž…λ‹ˆλ‹€. μžμ„Έν•œ λ‚΄μš©μ€ μ™œ YOLOv3u인가 μ„Ήμ…˜μ„ μ°Έμ‘°ν•˜μ„Έμš”.

좔둠에 YOLOv3 λͺ¨λΈμ„ μ‚¬μš©ν•˜λ €λ©΄ μ–΄λ–»κ²Œ ν•΄μ•Ό ν•˜λ‚˜μš”?

Python 슀크립트 λ˜λŠ” CLI λͺ…λ ΉμœΌλ‘œ YOLOv3 λͺ¨λΈμ„ μ‚¬μš©ν•˜μ—¬ 좔둠을 μˆ˜ν–‰ν•  수 μžˆμŠ΅λ‹ˆλ‹€:

예

from ultralytics import YOLO

# Load a COCO-pretrained YOLOv3n model
model = YOLO("yolov3n.pt")

# Run inference with the YOLOv3n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")
# Load a COCO-pretrained YOLOv3n model and run inference on the 'bus.jpg' image
yolo predict model=yolov3n.pt source=path/to/bus.jpg

YOLO λͺ¨λΈ 싀행에 λŒ€ν•œ μžμ„Έν•œ λ‚΄μš©μ€ μΆ”λ‘  λͺ¨λ“œ μ„€λͺ…μ„œλ₯Ό μ°Έμ‘°ν•˜μ„Έμš”.

YOLOv3와 κ·Έ λ³€ν˜• 버전은 μ–΄λ–€ μž‘μ—…μ„ μ§€μ›ν•˜λ‚˜μš”?

YOLOv3, YOLOv3-Ultralytics, YOLOv3uλŠ” 주둜 객체 탐지 μž‘μ—…μ„ μ§€μ›ν•©λ‹ˆλ‹€. μ΄λŸ¬ν•œ λͺ¨λΈμ€ μΆ”λ‘ , 검증, ν›ˆλ ¨, 내보내기 λ“± λͺ¨λΈ 배포 및 개발의 λ‹€μ–‘ν•œ 단계에 μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€. μ§€μ›λ˜λŠ” μž‘μ—…μ˜ 전체 λͺ©λ‘κ³Ό μžμ„Έν•œ λ‚΄μš©μ€ 객체 감지 μž‘μ—… λ¬Έμ„œλ₯Ό μ°Έμ‘°ν•˜μ„Έμš”.

λ‚΄ μ—°κ΅¬μ—μ„œ YOLOv3λ₯Ό μΈμš©ν•  수 μžˆλŠ” λ¦¬μ†ŒμŠ€λŠ” μ–΄λ””μ—μ„œ 찾을 수 μžˆλ‚˜μš”?

연ꡬ에 YOLOv3λ₯Ό μ‚¬μš©ν•˜λŠ” 경우 원본 YOLO λ…Όλ¬Έκ³Ό Ultralytics YOLOv3 리포지토리λ₯Ό μΈμš©ν•΄ μ£Όμ„Έμš”. BibTeX 인용 μ˜ˆμ‹œ:

@article{redmon2018yolov3,
  title={YOLOv3: An Incremental Improvement},
  author={Redmon, Joseph and Farhadi, Ali},
  journal={arXiv preprint arXiv:1804.02767},
  year={2018}
}

μΈμš©μ— λŒ€ν•œ μžμ„Έν•œ λ‚΄μš©μ€ 인용 및 감사 μ„Ήμ…˜μ„ μ°Έμ‘°ν•˜μ„Έμš”.

πŸ“…1 λ…„ μ „ 생성됨 ✏️ 1κ°œμ›” μ „ μ—…λ°μ΄νŠΈλ¨

λŒ“κΈ€