콘텐츠로 건너뛰기

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 모델은 물체 감지 작업에 탁월합니다. 포괄적인 모드를 지원하므로 개발부터 배포까지 다양한 애플리케이션에 적합합니다.

모델 유형사전 학습된 가중치작업추론유효성 검사교육내보내기
YOLOv5uyolov5nu, 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.ptyolov5n.yaml64034.373.61.062.67.7
yolov5su.ptyolov5s.yaml64043.0120.71.279.124.0
yolov5mu.ptyolov5m.yaml64049.0233.91.8625.164.2
yolov5lu.ptyolov5l.yaml64052.2408.42.5053.2135.0
yolov5xu.ptyolov5x.yaml64053.2763.23.8197.2246.4
yolov5n6u.ptyolov5n6.yaml128042.1211.01.834.37.8
yolov5s6u.ptyolov5s6.yaml128048.6422.62.3415.324.6
yolov5m6u.ptyolov5m6.yaml128053.6810.94.3641.265.7
yolov5l6u.ptyolov5l6.yaml128055.71470.95.4786.1137.4
yolov5x6u.ptyolov5x6.yaml128056.82436.58.98155.4250.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 28 days ago

댓글