콘텐츠로 건너뛰기

Meituan YOLOv6

개요

Meituan YOLOv6는 속도와 정확성 간의 놀라운 균형을 제공하는 최첨단 객체 감지기로 실시간 애플리케이션에 널리 사용됩니다. 이 모델은 Bi-directional Concatenation (BiC) 모듈, 앵커 지원 훈련 (AAT) 전략 및 COCO 데이터 세트에서 최첨단 정확도를 위한 개선된 백본 및 Neck 디자인을 포함하여 아키텍처 및 훈련 체계에 대한 몇 가지 주목할만한 개선 사항을 도입했습니다.

Meituan YOLOv6 모델 예시 이미지 YOLOv6 개요. 상당한 성능 향상을 가져온 재설계된 네트워크 구성 요소 및 학습 전략을 보여주는 모델 아키텍처 다이어그램입니다. (a) YOLOv6의 neck 부분입니다(N 및 S가 표시됨). M/L의 경우 RepBlocks는 CSPStackRep로 대체됩니다. (b) BiC 모듈의 구조입니다. (c) SimCSPSPPF 블록입니다.소스)입니다.

주요 기능

  • 양방향 연결 (BiC) 모듈: YOLOv6는 감지기의 neck에 BiC 모듈을 도입하여 로컬라이제이션 신호를 향상시키고 속도 저하를 무시하면서 성능 향상을 제공합니다.
  • Anchor-Aided Training (AAT) 전략: 이 모델은 추론 효율성을 저해하지 않으면서 anchor-기반anchor-free 패러다임의 이점을 모두 누릴 수 있도록 AAT를 제안합니다.
  • 향상된 백본 및 넥 디자인: YOLOv6를 심화시켜 백본과 넥에 또 다른 단계를 포함함으로써 이 모델은 고해상도 입력에서 COCO 데이터 세트에 대한 최첨단 성능을 달성합니다.
  • 자체 증류 전략: 새로운 자체 증류 전략이 구현되어 YOLOv6의 더 작은 모델의 성능을 향상시키고, 훈련 중 보조 회귀 분기를 강화하고 추론 시 속도 저하를 방지하기 위해 제거합니다.

성능 지표

YOLOv6는 다양한 스케일의 사전 훈련된 모델을 제공합니다.

  • YOLOv6-N: NVIDIA T4 GPU를 사용하여 1187 FPS에서 COCO val2017에 대해 37.5% AP를 달성했습니다.
  • YOLOv6-S: 484 FPS에서 45.0% AP입니다.
  • YOLOv6-M: 226 FPS에서 50.0% AP입니다.
  • YOLOv6-L: 116 FPS에서 52.8% AP입니다.
  • YOLOv6-L6: 실시간 환경에서 최첨단 정확도를 제공합니다.

YOLOv6는 다양한 정밀도에 대해 양자화된 모델과 모바일 플랫폼에 최적화된 모델도 제공합니다.

사용 예시

이 예제는 간단한 YOLOv6 학습 및 추론 예제를 제공합니다. 이러한 모드 및 기타 모드에 대한 전체 문서는 예측, 학습, 검증내보내기 문서 페이지를 참조하십시오.

예시

YOLOv6 *.yaml 파일을 다음으로 전달하여 YOLO() Python에서 해당 모델을 빌드하는 클래스:

from ultralytics import YOLO

# Build a YOLOv6n model from scratch
model = YOLO("yolov6n.yaml")

# 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 YOLOv6n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")

모델을 직접 실행하는 데 사용할 수 있는 CLI 명령은 다음과 같습니다.

# Build a YOLOv6n model from scratch and train it on the COCO8 example dataset for 100 epochs
yolo train model=yolov6n.yaml data=coco8.yaml epochs=100 imgsz=640

# Build a YOLOv6n model from scratch and run inference on the 'bus.jpg' image
yolo predict model=yolov6n.yaml source=path/to/bus.jpg

지원되는 작업 및 모드

YOLOv6 시리즈는 고성능 객체 감지에 최적화된 다양한 모델을 제공합니다. 이러한 모델은 다양한 컴퓨팅 요구 사항과 정확도 요구 사항을 충족하므로 광범위한 애플리케이션에 다용도로 사용할 수 있습니다.

모델 파일 이름 태스크 추론 검증 훈련 내보내기
YOLOv6-N yolov6n.yaml 객체 감지
YOLOv6-S yolov6s.yaml 객체 감지
YOLOv6-M yolov6m.yaml 객체 감지
YOLOv6-L yolov6l.yaml 객체 감지
YOLOv6-X yolov6x.yaml 객체 감지

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

인용 및 감사의 말씀

실시간 객체 감지 분야에 크게 기여해 주신 다음 제작자들에게 감사를 표합니다.

@misc{li2023yolov6,
      title={YOLOv6 v3.0: A Full-Scale Reloading},
      author={Chuyi Li and Lulu Li and Yifei Geng and Hongliang Jiang and Meng Cheng and Bo Zhang and Zaidan Ke and Xiaoming Xu and Xiangxiang Chu},
      year={2023},
      eprint={2301.05586},
      archivePrefix={arXiv},
      primaryClass={cs.CV}
}

원본 YOLOv6 논문은 arXiv에서 찾을 수 있습니다. 저자들은 그들의 연구 결과를 공개적으로 이용할 수 있도록 했으며, 코드베이스는 GitHub에서 액세스할 수 있습니다. 우리는 이 분야를 발전시키고 그들의 연구 결과를 더 넓은 커뮤니티에서 액세스할 수 있도록 노력한 그들의 노고에 감사드립니다.

FAQ

Meituan YOLOv6는 무엇이며 무엇이 독특하게 만듭니까?

Meituan YOLOv6는 속도와 정확도의 균형을 맞춘 최첨단 객체 감지기로, 실시간 애플리케이션에 이상적입니다. Bi-directional Concatenation (BiC) 모듈 및 Anchor-Aided Training (AAT) 전략과 같은 주목할 만한 아키텍처 개선 사항이 특징입니다. 이러한 혁신은 속도 저하를 최소화하면서 상당한 성능 향상을 제공하여 YOLOv6를 객체 감지 작업에 경쟁력 있는 선택으로 만듭니다.

YOLOv6의 Bi-directional Concatenation (BiC) 모듈은 성능을 어떻게 향상시키나요?

YOLOv6의 Bi-directional Concatenation (BiC) 모듈은 감지기 neck 부분에서 위치 신호를 강화하여 속도에 거의 영향을 주지 않으면서 성능을 향상시킵니다. 이 모듈은 다양한 특징 맵을 효과적으로 결합하여 객체를 정확하게 감지하는 모델의 능력을 향상시킵니다. YOLOv6의 기능에 대한 자세한 내용은 주요 기능 섹션을 참조하십시오.

Ultralytics를 사용하여 YOLOv6 모델을 어떻게 훈련할 수 있습니까?

간단한 Python 또는 CLI 명령을 사용하여 Ultralytics로 YOLOv6 모델을 훈련할 수 있습니다. 예를 들어:

예시

from ultralytics import YOLO

# Build a YOLOv6n model from scratch
model = YOLO("yolov6n.yaml")

# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
yolo train model=yolov6n.yaml data=coco8.yaml epochs=100 imgsz=640

자세한 내용은 Train 페이지를 참조하십시오.

YOLOv6의 다양한 버전과 성능 지표는 무엇인가요?

YOLOv6는 다양한 성능 요구 사항에 맞춰 최적화된 여러 버전을 제공합니다.

  • YOLOv6-N: 1187 FPS에서 37.5% AP
  • YOLOv6-S: 484 FPS에서 45.0% AP
  • YOLOv6-M: 226 FPS에서 50.0% AP
  • YOLOv6-L: 116 FPS에서 52.8% AP
  • YOLOv6-L6: 실시간 환경에서 최첨단 정확도 제공

이러한 모델은 NVIDIA T4 GPU를 사용하여 COCO 데이터 세트에서 평가됩니다. 성능 지표에 대한 자세한 내용은 성능 지표 섹션을 참조하십시오.

Anchor-Aided Training (AAT) 전략은 YOLOv6에 어떤 이점을 제공합니까?

YOLOv6의 AAT(Anchor-Aided Training)는 앵커 기반 및 앵커 프리 방식의 요소를 결합하여 추론 효율성을 저해하지 않으면서 모델의 감지 기능을 향상시킵니다. 이 전략은 훈련 중에 앵커를 활용하여 경계 상자 예측을 개선하여 YOLOv6가 다양한 객체 감지 작업에서 효과적으로 작동하도록 합니다.

Ultralytics의 YOLOv6 모델에서 지원하는 작동 모드는 무엇입니까?

YOLOv6는 추론, 유효성 검사, 훈련 및 내보내기를 포함한 다양한 작동 모드를 지원합니다. 이러한 유연성을 통해 사용자는 다양한 시나리오에서 모델의 기능을 최대한 활용할 수 있습니다. 각 모드에 대한 자세한 개요는 지원되는 작업 및 모드 섹션을 확인하십시오.



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

댓글