콘텐츠로 건너뛰기

물체 감지

물체 감지 예시

객체 감지는 이미지 또는 동영상 스트림에서 객체의 위치와 클래스를 식별하는 작업입니다.

객체 감지기의 출력은 이미지에서 객체를 둘러싸는 경계 상자 집합과 각 상자에 대한 클래스 레이블 및 신뢰도 점수로 구성됩니다. 객체 감지는 장면에서 관심 있는 객체를 식별해야 하지만 객체의 정확한 위치나 모양을 정확히 알 필요는 없는 경우에 적합한 선택입니다.



Watch: 사전 학습된 Ultralytics YOLO 모델을 사용한 객체 감지.

YOLO11 감지 모델은 기본값인 YOLO11 모델입니다. yolo11n.pt 에 대해 사전 교육을 받았으며 COCO.

모델

YOLO11 사전 학습된 감지 모델이 여기에 표시됩니다. 감지, 세그먼트 및 포즈 모델은 COCO 데이터 세트에서 사전 학습된 모델이며, 분류 모델은 ImageNet 데이터 세트에서 사전 학습된 모델입니다.

모델은 처음 사용할 때 최신 Ultralytics 릴리스에서 자동으로 다운로드됩니다.

모델 크기
(픽셀)
mAPval
50-95
속도
CPU ONNX
(ms)
속도
T4TensorRT10
(ms)
매개변수
(M)
FLOPs
(B)
YOLO11n 640 39.5 56.1 ± 0.8 1.5 ± 0.0 2.6 6.5
YOLO11s 640 47.0 90.0 ± 1.2 2.5 ± 0.0 9.4 21.5
YOLO11m 640 51.5 183.2 ± 2.0 4.7 ± 0.1 20.1 68.0
YOLO11l 640 53.4 238.6 ± 1.4 6.2 ± 0.1 25.3 86.9
YOLO11x 640 54.7 462.8 ± 6.7 11.3 ± 0.2 56.9 194.9
  • mAPval 값은 단일 모델 단일 스케일에 대한 것입니다. COCO val2017 데이터 세트.
    복제 대상 yolo val detect data=coco.yaml device=0
  • 속도 를 사용하여 COCO 값 이미지에 대한 평균을 구합니다. Amazon EC2 P4d 인스턴스입니다.
    복제 대상 yolo val detect data=coco.yaml batch=1 device=0|cpu

기차

이미지 크기 640에서 100개의 에포크에 대해 COCO8 데이터 세트에서 YOLO11n을 훈련합니다. 사용 가능한 인수의 전체 목록은 구성 페이지를 참조하세요.

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n.yaml")  # build a new model from YAML
model = YOLO("yolo11n.pt")  # load a pretrained model (recommended for training)
model = YOLO("yolo11n.yaml").load("yolo11n.pt")  # build from YAML and transfer weights

# Train the model
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Build a new model from YAML and start training from scratch
yolo detect train data=coco8.yaml model=yolo11n.yaml epochs=100 imgsz=640

# Start training from a pretrained *.pt model
yolo detect train data=coco8.yaml model=yolo11n.pt epochs=100 imgsz=640

# Build a new model from YAML, transfer pretrained weights to it and start training
yolo detect train data=coco8.yaml model=yolo11n.yaml pretrained=yolo11n.pt epochs=100 imgsz=640

데이터 집합 형식

YOLO 탐지 데이터 세트 형식은 데이터 세트 가이드에서 자세히 확인할 수 있습니다. 기존 데이터셋을 다른 형식(예: COCO 등)에서 YOLO 형식으로 변환하려면 JSON2YOLO 도구( Ultralytics)를 사용하세요.

Val

학습된 YOLO11n 모델 검증하기 정확성 로 설정할 수 있습니다. 인수가 필요하지 않으므로 model 교육 유지 data 및 인수를 모델 속성으로 사용합니다.

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n.pt")  # load an official model
model = YOLO("path/to/best.pt")  # load a custom model

# Validate the model
metrics = model.val()  # no arguments needed, dataset and settings remembered
metrics.box.map  # map50-95
metrics.box.map50  # map50
metrics.box.map75  # map75
metrics.box.maps  # a list contains map50-95 of each category
yolo detect val model=yolo11n.pt      # val official model
yolo detect val model=path/to/best.pt # val custom model

예측

학습된 YOLO11n 모델을 사용하여 이미지에 대한 예측을 실행합니다.

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n.pt")  # load an official model
model = YOLO("path/to/best.pt")  # load a custom model

# Predict with the model
results = model("https://ultralytics.com/images/bus.jpg")  # predict on an image

# Access the results
for result in results:
    xywh = result.boxes.xywh  # center-x, center-y, width, height
    xywhn = result.boxes.xywhn  # normalized
    xyxy = result.boxes.xyxy  # top-left-x, top-left-y, bottom-right-x, bottom-right-y
    xyxyn = result.boxes.xyxyn  # normalized
    names = [result.names[cls.item()] for cls in result.boxes.cls.int()]  # class name of each box
    confs = result.boxes.conf  # confidence score of each box
yolo detect predict model=yolo11n.pt source='https://ultralytics.com/images/bus.jpg'      # predict with official model
yolo detect predict model=path/to/best.pt source='https://ultralytics.com/images/bus.jpg' # predict with custom model

전체 보기 predict 모드 세부 정보에서 예측 페이지로 이동합니다.

내보내기

ONNX, CoreML 등과 같은 다른 형식으로 YOLO11n 모델을 내보냅니다.

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n.pt")  # load an official model
model = YOLO("path/to/best.pt")  # load a custom trained model

# Export the model
model.export(format="onnx")
yolo export model=yolo11n.pt format=onnx      # export official model
yolo export model=path/to/best.pt format=onnx # export custom trained model

사용 가능한 YOLO11 내보내기 형식은 아래 표에 나와 있습니다. 내보내는 형식은 format 인수, 즉 format='onnx' 또는 format='engine'. 내보낸 모델에서 직접 예측하거나 검증할 수 있습니다. yolo predict model=yolo11n.onnx. 내보내기가 완료된 후 모델에 대한 사용 예가 표시됩니다.

형식 format 인수 모델 메타데이터 인수
PyTorch - yolo11n.pt -
TorchScript torchscript yolo11n.torchscript imgsz, optimize, nms, batch
ONNX onnx yolo11n.onnx imgsz, half, dynamic, simplify, opset, nms, batch
OpenVINO openvino yolo11n_openvino_model/ imgsz, half, dynamic, int8, nms, batch, data
TensorRT engine yolo11n.engine imgsz, half, dynamic, simplify, workspace, int8, nms, batch, data
CoreML coreml yolo11n.mlpackage imgsz, half, int8, nms, batch
TF SavedModel saved_model yolo11n_saved_model/ imgsz, keras, int8, nms, batch
TF GraphDef pb yolo11n.pb imgsz, batch
TF Lite tflite yolo11n.tflite imgsz, half, int8, nms, batch, data
TF Edge TPU edgetpu yolo11n_edgetpu.tflite imgsz
TF.js tfjs yolo11n_web_model/ imgsz, half, int8, nms, batch
PaddlePaddle paddle yolo11n_paddle_model/ imgsz, batch
MNN mnn yolo11n.mnn imgsz, batch, int8, half
NCNN ncnn yolo11n_ncnn_model/ imgsz, half, batch
IMX500 imx yolov8n_imx_model/ imgsz, int8, data
RKNN rknn yolo11n_rknn_model/ imgsz, batch, name

전체 보기 export 세부 정보에서 내보내기 페이지로 이동합니다.

자주 묻는 질문

사용자 지정 데이터 집합에서 YOLO11 모델을 학습하려면 어떻게 하나요?

사용자 지정 데이터 집합에서 YOLO11 모델을 학습하려면 몇 가지 단계가 필요합니다:

  1. 데이터 집합을 준비합니다: 데이터 세트가 YOLO 형식인지 확인합니다. 지침은 데이터 세트 가이드를 참조하세요.
  2. 모델을 로드합니다: Ultralytics YOLO 라이브러리를 사용하여 사전 학습된 모델을 로드하거나 YAML 파일에서 새 모델을 생성합니다.
  3. 모델 훈련: 실행 train 메서드 또는 Python 또는 yolo detect train 명령으로 CLI.

from ultralytics import YOLO

# Load a pretrained model
model = YOLO("yolo11n.pt")

# Train the model on your custom dataset
model.train(data="my_custom_dataset.yaml", epochs=100, imgsz=640)
yolo detect train data=my_custom_dataset.yaml model=yolo11n.pt epochs=100 imgsz=640

자세한 구성 옵션은 구성 페이지를 참조하세요.

YOLO11 에서 어떤 사전 학습된 모델을 사용할 수 있나요?

Ultralytics YOLO11 는 물체 감지, 분할, 포즈 추정을 위한 다양한 사전 훈련된 모델을 제공합니다. 이러한 모델은 분류 작업을 위해 COCO 데이터 세트 또는 ImageNet에서 사전 학습됩니다. 다음은 사용 가능한 모델 중 일부입니다:

자세한 목록과 성능 지표는 모델 섹션을 참조하세요.

학습된 YOLO 모델의 정확도를 검증하려면 어떻게 해야 하나요?

학습된 YOLO11 모델의 정확성을 검증하려면 다음을 사용할 수 있습니다. .val() 메서드 또는 Python 또는 yolo detect val CLI명령을 실행합니다. 그러면 mAP50-95, mAP50 등과 같은 메트릭이 제공됩니다.

from ultralytics import YOLO

# Load the model
model = YOLO("path/to/best.pt")

# Validate the model
metrics = model.val()
print(metrics.box.map)  # mAP50-95
yolo detect val model=path/to/best.pt

자세한 인증 정보는 Val 페이지에서 확인하세요.

YOLO11 모델을 어떤 형식으로 내보낼 수 있나요?

Ultralytics YOLO11 다음과 같은 다양한 포맷으로 모델을 내보낼 수 있습니다. ONNX, TensorRT, CoreML등을 사용하여 다양한 플랫폼과 기기에서 호환성을 보장합니다.

from ultralytics import YOLO

# Load the model
model = YOLO("yolo11n.pt")

# Export the model to ONNX format
model.export(format="onnx")
yolo export model=yolo11n.pt format=onnx

내보내기 페이지에서 지원되는 형식의 전체 목록과 지침을 확인하세요.

물체 감지에 Ultralytics YOLO11 을 사용해야 하는 이유는 무엇인가요?

Ultralytics YOLO11 는 물체 감지, 세분화, 포즈 추정을 위한 최첨단 성능을 제공하도록 설계되었습니다. 몇 가지 주요 이점은 다음과 같습니다:

  1. 사전 학습된 모델: COCOImageNet과 같은 인기 있는 데이터 세트에서 사전 학습된 모델을 활용하여 더 빠르게 개발할 수 있습니다.
  2. 높은 정확도: 인상적인 맵 점수를 달성하여 신뢰할 수 있는 물체 감지를 보장합니다.
  3. 속도: 실시간 추론에 최적화되어 있어 신속한 처리가 필요한 애플리케이션에 이상적입니다.
  4. 유연성: 여러 플랫폼에 배포할 수 있도록 ONNX , TensorRT 등 다양한 형식으로 모델을 내보낼 수 있습니다.

블로그에서 사용 사례와 성공 사례( YOLO11 )를 살펴보세요.

📅1 년 전 생성됨 ✏️ 업데이트 4 일 전

댓글