콘텐츠로 건너뛰기

Ultralytics YOLOv5

개요

YOLOv5u는 객체 감지 방법론의 발전을 나타냅니다. Ultralytics에서 개발한 YOLOv5 모델의 기본 아키텍처에서 시작된 YOLOv5u는 YOLOv8 모델에서 이전에 소개된 기능인 앵커 프리, 객체성 프리 분할 헤드를 통합합니다. 이 조정은 모델 아키텍처를 개선하여 객체 감지 작업에서 정확도와 속도 간의 균형을 향상시킵니다. 경험적 결과와 파생된 기능을 고려할 때 YOLOv5u는 연구 및 실제 응용 분야 모두에서 강력한 솔루션을 찾는 사람들에게 효율적인 대안을 제공합니다.

Ultralytics YOLOv5

주요 기능

  • 앵커 프리 분할 Ultralytics 헤드: 기존 객체 감지 모델은 객체 위치를 예측하기 위해 미리 정의된 앵커 박스에 의존합니다. 그러나 YOLOv5u는 이러한 접근 방식을 현대화합니다. 앵커 프리 분할 Ultralytics 헤드를 채택함으로써 더욱 유연하고 적응력 있는 감지 메커니즘을 보장하여 결과적으로 다양한 시나리오에서 성능을 향상시킵니다.

  • 최적화된 정확도-속도 균형: 속도와 정확도는 종종 반대 방향으로 작용합니다. 그러나 YOLOv5u는 이러한 균형에 도전합니다. 정확도를 저하시키지 않으면서 실시간 감지를 보장하는 균형 잡힌 기능을 제공합니다. 이 기능은 자율 주행 차량, 로봇 공학 및 실시간 비디오 분석과 같이 빠른 응답이 필요한 애플리케이션에 특히 유용합니다.

  • 다양한 사전 훈련된 모델: 다양한 작업에는 다양한 도구 세트가 필요하다는 것을 이해하고 YOLOv5u는 다양한 사전 훈련된 모델을 제공합니다. 추론, 유효성 검사 또는 훈련에 집중하든 상관없이 사용자를 기다리는 맞춤형 모델이 있습니다. 이러한 다양성을 통해 사용자는 모든 경우에 적합한 단일 솔루션이 아니라 고유한 문제에 맞게 특별히 조정된 모델을 사용하고 있습니다.

지원되는 작업 및 모드

다양한 사전 훈련된 가중치를 가진 YOLOv5u 모델은 객체 감지 작업에서 뛰어납니다. 개발에서 배포에 이르기까지 광범위한 모드를 지원하므로 다양한 애플리케이션에 적합합니다.

모델 유형 사전 훈련된 가중치 작업 추론 검증 훈련 내보내기
YOLOv5u yolov5nu, yolov5su, yolov5mu, yolov5lu, yolov5xu, yolov5n6u, yolov5s6u, yolov5m6u, yolov5l6u, yolov5x6u 객체 감지

이 표는 YOLOv5u 모델 변형에 대한 자세한 개요를 제공하며 객체 감지 작업에서의 적용 가능성과 추론, 유효성 검사, 훈련내보내기와 같은 다양한 작동 모드에 대한 지원을 강조합니다. 이러한 포괄적인 지원을 통해 사용자는 광범위한 객체 감지 시나리오에서 YOLOv5u 모델의 기능을 최대한 활용할 수 있습니다.

성능 지표

성능

감지 문서에서 COCO로 훈련된 이러한 모델의 사용 예시를 참조하십시오. 여기에는 80개의 사전 훈련된 클래스가 포함됩니다.

모델 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 학습 및 추론 예제를 제공합니다. 이러한 모드 및 기타 모드에 대한 전체 설명서는 Predict, Train, ValExport 문서 페이지를 참조하십시오.

예시

PyTorch 사전 훈련된 *.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

인용 및 감사의 말씀

Ultralytics YOLOv5 간행물

Ultralytics는 모델의 빠른 발전으로 인해 YOLOv5에 대한 공식 연구 논문을 발표하지 않았습니다. 저희는 정적인 문서를 만드는 것보다 기술을 발전시키고 사용하기 쉽게 만드는 데 주력하고 있습니다. YOLO 아키텍처, 기능 및 사용법에 대한 최신 정보는 GitHub 저장소문서를 참조하십시오.

연구에 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.0Enterprise 라이선스에 따라 제공됩니다.

FAQ

Ultralytics YOLOv5u는 무엇이며 YOLOv5와 어떻게 다른가요?

Ultralytics YOLOv5u는 YOLOv5의 고급 버전으로, 실시간 객체 감지 작업에서 정확도와 속도 간의 균형을 향상시키는 앵커 프리(anchor-free), 객체성 프리(objectness-free) 분할 헤드를 통합했습니다. 기존 YOLOv5와 달리 YOLOv5u는 앵커 프리 감지 메커니즘을 채택하여 다양한 시나리오에서 보다 유연하고 적응력이 뛰어납니다. 기능에 대한 자세한 내용은 YOLOv5 개요를 참조하십시오.

앵커 프리 Ultralytics 헤드는 YOLOv5u에서 객체 감지 성능을 어떻게 향상시키나요?

YOLOv5u의 앵커 프리 Ultralytics 헤드는 미리 정의된 앵커 박스에 대한 의존성을 제거하여 객체 감지 성능을 향상시킵니다. 이를 통해 다양한 객체 크기와 모양을 보다 효율적으로 처리할 수 있는 보다 유연하고 적응력이 뛰어난 감지 메커니즘이 구현됩니다. 이러한 개선 사항은 정확도와 속도 간의 균형 잡힌 절충에 직접적으로 기여하여 YOLOv5u가 실시간 애플리케이션에 적합하도록 합니다. 아키텍처에 대한 자세한 내용은 주요 기능 섹션을 참조하십시오.

다양한 작업 및 모드에 대해 사전 훈련된 YOLOv5u 모델을 사용할 수 있나요?

예, 객체 감지와 같은 다양한 작업에 사전 훈련된 YOLOv5u 모델을 사용할 수 있습니다. 이러한 모델은 추론, 유효성 검사, 학습내보내기를 포함한 여러 모드를 지원합니다. 이러한 유연성을 통해 사용자는 다양한 운영 요구 사항에 걸쳐 YOLOv5u 모델의 기능을 활용할 수 있습니다. 자세한 개요는 지원되는 작업 및 모드 섹션을 확인하십시오.

YOLOv5u 모델의 성능 지표는 다양한 플랫폼에서 어떻게 비교되나요?

YOLOv5u 모델의 성능 지표는 사용된 플랫폼 및 하드웨어에 따라 다릅니다. 예를 들어 YOLOv5nu 모델은 CPU (ONNX)에서 73.6ms, A100 TensorRT에서 1.06ms의 속도로 COCO 데이터 세트에서 34.3mAP를 달성합니다. 다양한 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

자세한 내용은 사용 예제 섹션을 참조하십시오.



📅 1년 전에 생성됨 ✏️ 5개월 전에 업데이트됨

댓글