YOLOv3 및 YOLOv3u
개요
이 문서는 서로 밀접하게 관련된 세 가지 객체 감지 모델, 즉 YOLOv3, YOLOv3-Ultralytics, YOLOv3u에 대한 개요를 제공합니다.
-
YOLOv3: You Only Look Once(YOLO) 객체 감지 알고리즘의 세 번째 버전입니다. 원래 Joseph Redmon이 개발한 YOLOv3은 멀티스케일 예측과 세 가지 크기의 감지 커널 등의 기능을 도입하여 이전 버전을 개선했습니다.
-
YOLOv3u: YOLOv8 모델에서 사용하는 앵커 프리(anchor-free), 객체성 프리(objectness-free) 분리 헤드를 통합한 YOLOv3-Ultralytics의 업데이트 버전입니다. YOLOv3u는 YOLOv3과 동일한 백본 및 넥 아키텍처를 유지하지만, YOLOv8의 업데이트된 감지 헤드를 적용합니다.

주요 기능
-
YOLOv3: 13x13, 26x26, 52x52의 세 가지 크기의 감지 커널을 활용하여 세 가지 다른 스케일을 감지에 도입했습니다. 이를 통해 다양한 크기의 객체에 대한 감지 정확도가 크게 향상되었습니다. 또한 YOLOv3는 각 바운딩 박스에 대한 멀티 레이블 예측 및 더 나은 특징 추출 네트워크와 같은 기능도 추가했습니다.
-
YOLOv3u: 이 업데이트된 모델은 YOLOv8의 앵커 프리, 객체성 프리 분리 헤드를 통합합니다. 사전 정의된 앵커 박스와 객체성 점수의 필요성을 제거함으로써, 이 감지 헤드 설계는 다양한 크기와 형태의 객체를 감지하는 모델의 능력을 향상시킬 수 있습니다. 이를 통해 YOLOv3u는 객체 감지 작업에서 더욱 견고하고 정확해집니다.
지원되는 작업 및 모드
YOLOv3는 특히 객체 감지 작업을 위해 설계되었습니다. Ultralytics는 YOLOv3의 세 가지 변형을 지원합니다: yolov3u, yolov3-tinyu, yolov3-sppu. 이름의 u는 앵커 기반인 원래 아키텍처와 달리 YOLOv8의 앵커 프리 헤드를 활용함을 나타냅니다. 이러한 모델들은 정확도와 속도의 균형을 맞추며 다양한 실세계 시나리오에서 효과적인 것으로 알려져 있습니다. 각 변형은 고유한 기능과 최적화를 제공하여 다양한 응용 프로그램에 적합합니다.
세 모델 모두 포괄적인 모드 세트를 지원하여 모델 배포 및 개발의 다양한 단계에서 유연성을 보장합니다. 이러한 모드에는 추론, 검증, 학습, 내보내기가 포함되어 있어 효과적인 객체 감지를 위한 완전한 툴킷을 사용자에게 제공합니다.
| 모델 유형 | 사전 학습 가중치 | 지원 작업 | 추론 | 검증 | 학습 | 내보내기 |
|---|---|---|---|---|---|---|
| YOLOv3(u) | yolov3u.pt | 객체 감지 | ✅ | ✅ | ✅ | ✅ |
| YOLOv3-Tiny(u) | yolov3-tinyu.pt | 객체 감지 | ✅ | ✅ | ✅ | ✅ |
| YOLOv3u-SPP(u) | yolov3-sppu.pt | 객체 감지 | ✅ | ✅ | ✅ | ✅ |
이 표는 각 YOLOv3 변형의 기능을 한눈에 볼 수 있도록 제공하며, 객체 감지 워크플로의 다양한 작업 및 운영 모드에 대한 다재다능함과 적합성을 강조합니다.
사용 예제
이 예제는 간단한 YOLOv3 학습 및 추론 예제를 제공합니다. 이 모드 및 기타 모드에 대한 전체 문서는 예측, 학습, 검증, 내보내기 문서 페이지를 참조하십시오.
PyTorch 사전 학습된 *.pt 모델 및 구성 *.yaml 파일을 YOLO() 클래스에 전달하여 Python에서 모델 인스턴스를 생성할 수 있습니다:
from ultralytics import YOLO
# COCO 사전 학습된 YOLOv3u 모델 로드
model = YOLO("yolov3u.pt")
# 모델 정보 표시 (선택 사항)
model.info()
# COCO8 예제 데이터셋으로 100 에포크 동안 모델 학습
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# 'bus.jpg' 이미지에 YOLOv3u 모델로 추론 실행
results = model("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는 Joseph Redmon이 개발한 YOLO(You Only Look Once) 객체 감지 알고리즘의 세 번째 버전으로, 감지에 세 가지 다른 스케일(13x13, 26x26, 52x52)을 활용하여 정확도와 속도의 균형으로 알려져 있습니다. YOLOv3-Ultralytics는 더 많은 사전 학습 모델에 대한 지원을 추가하고 더 쉬운 모델 커스터마이징을 가능하게 하는 Ultralytics의 YOLOv3 어댑테이션입니다. YOLOv3u는 YOLOv8의 앵커 프리, 객체성 프리 분리 헤드를 통합하여 다양한 객체 크기에 대한 감지 견고성과 정확도를 향상시킨 YOLOv3-Ultralytics의 업그레이드 변형입니다. 변형에 대한 자세한 내용은 YOLOv3 시리즈를 참조하십시오.
Ultralytics로 YOLOv3 모델을 어떻게 학습합니까?
Ultralytics로 YOLOv3 모델을 학습하는 것은 간단합니다. Python 또는 CLI를 사용하여 모델을 학습할 수 있습니다:
from ultralytics import YOLO
# COCO 사전 학습된 YOLOv3u 모델 로드
model = YOLO("yolov3u.pt")
# COCO8 예제 데이터셋으로 100 에포크 동안 모델 학습
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)더 포괄적인 학습 옵션과 지침은 학습 모드 문서를 방문하십시오.
YOLOv3u가 객체 감지 작업에서 더 정확한 이유는 무엇입니까?
YOLOv3u는 YOLOv8 모델에서 사용하는 앵커 프리, 객체성 프리 분리 헤드를 통합하여 YOLOv3 및 YOLOv3-Ultralytics를 개선합니다. 이 업그레이드는 사전 정의된 앵커 박스와 객체성 점수의 필요성을 제거하여 다양한 크기와 형태의 객체를 더 정밀하게 감지하는 능력을 향상시킵니다. 이로 인해 YOLOv3u는 복잡하고 다양한 객체 감지 작업에 더 나은 선택이 됩니다. 자세한 내용은 주요 기능 섹션을 참조하십시오.
YOLOv3 모델을 추론에 어떻게 사용합니까?
Python 스크립트 또는 CLI 명령어를 사용하여 YOLOv3 모델로 추론을 수행할 수 있습니다:
from ultralytics import YOLO
# COCO 사전 학습된 YOLOv3u 모델 로드
model = YOLO("yolov3u.pt")
# 'bus.jpg' 이미지에 YOLOv3u 모델로 추론 실행
results = model("path/to/bus.jpg")YOLO 모델 실행에 대한 자세한 내용은 추론 모드 문서를 참조하십시오.
YOLOv3 및 그 변형이 지원하는 작업은 무엇입니까?
YOLOv3, YOLOv3-Tiny, YOLOv3-SPP는 주로 객체 감지 작업을 지원합니다. 이러한 모델들은 추론, 검증, 학습, 내보내기와 같은 모델 배포 및 개발의 다양한 단계에 사용할 수 있습니다. 지원되는 작업의 포괄적인 세트와 더 자세한 내용은 객체 감지 작업 문서를 방문하십시오.
연구에서 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}
}더 많은 인용 세부 정보는 인용 및 감사의 글 섹션을 참조하십시오.