Bỏ qua nội dung

Phát hiện đối tượng

Ví dụ phát hiện đối tượng

Phát hiện đối tượng là nhiệm vụ liên quan đến việc xác định vị trí và loại đối tượng trong luồng hình ảnh hoặc video.

Đầu ra của một bộ phát hiện đối tượng là một tập hợp các hộp giới hạn bao quanh các đối tượng trong hình ảnh, cùng với các nhãn lớp và điểm tin cậy cho mỗi hộp. Phát hiện đối tượng là một lựa chọn tốt khi bạn cần xác định các đối tượng quan tâm trong một cảnh, nhưng không cần biết chính xác vị trí của đối tượng hoặc hình dạng chính xác của nó.



Đồng hồ: Phát hiện đối tượng với đào tạo trước Ultralytics YOLO Người mẫu.

Mẹo

YOLO11 Phát hiện các mô hình là mặc định YOLO11 mô hình, tức là yolo11n.pt và được đào tạo trước về COCO.

Mô hình

YOLO11 Các mô hình Detect được đào tạo trước được hiển thị ở đây. Các mô hình Detect, Segment và Pose được đào tạo trước trên tập dữ liệu COCO , trong khi các mô hình Classify được đào tạo trước trên tập dữ liệu ImageNet .

Các mô hình tải xuống tự động từ mới nhất Ultralytics phát hành ngay lần sử dụng đầu tiên.

Người mẫu kích cỡ
(điểm ảnh)
giá trị mAP
50-95
Tốc độ
CPU ONNX
(bệnh đa xơ cứng)
Tốc độ
T4 TensorRT10
(bệnh đa xơ cứng)
tham số
(Nam)
Thất bại
(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
  • giá trị mAP giá trị dành cho mô hình đơn lẻ đơn lẻ trên COCO val2017 tập dữ liệu.
    Sao chép bởi yolo val detect data=coco.yaml device=0
  • Tốc độ trung bình trên các hình ảnh COCO val sử dụng một Amazon EC2 P4d ví dụ.
    Sao chép bởi yolo val detect data=coco.yaml batch=1 device=0|cpu

Xe lửa

Huấn luyện YOLO11n trên tập dữ liệu COCO8 trong 100 kỷ nguyên ở kích thước ảnh 640. Để biết danh sách đầy đủ các đối số khả dụng, hãy xem trang Cấu hình .

Ví dụ

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

Định dạng tập dữ liệu

YOLO định dạng tập dữ liệu phát hiện có thể được tìm thấy chi tiết trong Hướng dẫn tập dữ liệu . Để chuyển đổi tập dữ liệu hiện tại của bạn từ các định dạng khác (như COCO, v.v.) sang YOLO định dạng, vui lòng sử dụng công cụ JSON2YOLO bằng Ultralytics .

Giá trị

Xác thực mô hình YOLO11n đã được đào tạo sự chính xác trên tập dữ liệu COCO8. Không cần đối số vì model giữ lại sự đào tạo của mình data và các đối số như các thuộc tính mô hình.

Ví dụ

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

Dự đoán

Sử dụng mô hình YOLO11n đã được đào tạo để chạy dự đoán trên hình ảnh.

Ví dụ

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
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

Xem đầy đủ predict chi tiết chế độ trong Dự đoán trang.

Xuất khẩu

Xuất mô hình YOLO11n sang một định dạng khác như ONNX , CoreML , vân vân.

Ví dụ

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

Có sẵn YOLO11 định dạng xuất khẩu nằm trong bảng dưới đây. Bạn có thể xuất khẩu sang bất kỳ định dạng nào bằng cách sử dụng format lập luận, tức là format='onnx' hoặc format='engine'. Bạn có thể dự đoán hoặc xác thực trực tiếp trên các mô hình đã xuất, tức là yolo predict model=yolo11n.onnx. Các ví dụ sử dụng sẽ được hiển thị cho mô hình của bạn sau khi quá trình xuất hoàn tất.

Định dạng format Lý lẽ Người mẫu Siêu dữ liệu Lập luận
PyTorch - yolo11n.pt -
TorchScript torchscript yolo11n.torchscript imgsz, optimize, batch
ONNX onnx yolo11n.onnx imgsz, half, dynamic, simplify, opset, batch
OpenVINO openvino yolo11n_openvino_model/ imgsz, half, int8, batch
TensorRT engine yolo11n.engine imgsz, half, dynamic, simplify, workspace, int8, batch
CoreML coreml yolo11n.mlpackage imgsz, half, int8, nms, batch
TF SavedModel saved_model yolo11n_saved_model/ imgsz, keras, int8, batch
TF GraphDef pb yolo11n.pb imgsz, batch
TF Nhẹ tflite yolo11n.tflite imgsz, half, int8, batch
TF Bờ rìa TPU edgetpu yolo11n_edgetpu.tflite imgsz
TF .js tfjs yolo11n_web_model/ imgsz, half, int8, 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

Xem đầy đủ export chi tiết trong Xuất khẩu trang.

CÂU HỎI THƯỜNG GẶP

Làm thế nào để tôi đào tạo một YOLO11 mô hình trên tập dữ liệu tùy chỉnh của tôi?

Đào tạo một YOLO11 mô hình trên một tập dữ liệu tùy chỉnh bao gồm một vài bước:

  1. Chuẩn bị Bộ dữ liệu : Đảm bảo bộ dữ liệu của bạn nằm trong YOLO định dạng. Để được hướng dẫn, hãy tham khảo Hướng dẫn bộ dữ liệu của chúng tôi.
  2. Tải mô hình : Sử dụng Ultralytics YOLO thư viện để tải mô hình đã được đào tạo trước hoặc tạo mô hình mới từ tệp YAML.
  3. Đào tạo mô hình: Thực hiện train phương pháp trong Python hoặc yolo detect train lệnh trong CLI .

Ví dụ

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

Để biết các tùy chọn cấu hình chi tiết, hãy truy cập trang Cấu hình .

Những mô hình được đào tạo trước nào có sẵn trong YOLO11 ?

Ultralytics YOLO11 cung cấp nhiều mô hình được đào tạo trước để phát hiện đối tượng, phân đoạn và ước tính tư thế. Các mô hình này được đào tạo trước trên tập dữ liệu COCO hoặc ImageNet cho các tác vụ phân loại. Sau đây là một số mô hình có sẵn:

Để biết danh sách chi tiết và số liệu hiệu suất, hãy tham khảo phần Mô hình .

Làm thế nào tôi có thể xác nhận độ chính xác của đào tạo của tôi YOLO người mẫu?

Để xác nhận độ chính xác của đào tạo của bạn YOLO11 mô hình, bạn có thể sử dụng .val() phương pháp trong Python hoặc yolo detect val lệnh trong CLI . Điều này sẽ cung cấp các số liệu như mAP50-95, mAP50, v.v.

Ví dụ

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

Để biết thêm thông tin chi tiết về xác thực, hãy truy cập trang Val .

Tôi có thể xuất những định dạng nào? YOLO11 mô hình để?

Ultralytics YOLO11 cho phép xuất mô hình sang nhiều định dạng khác nhau như ONNX , TensorRT , CoreML và nhiều tính năng khác để đảm bảo khả năng tương thích trên nhiều nền tảng và thiết bị khác nhau.

Ví dụ

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

Kiểm tra danh sách đầy đủ các định dạng được hỗ trợ và hướng dẫn trên trang Xuất .

Tại sao tôi nên sử dụng Ultralytics YOLO11 để phát hiện vật thể?

Ultralytics YOLO11 được thiết kế để cung cấp hiệu suất tiên tiến nhất cho việc phát hiện đối tượng, phân đoạn và ước tính tư thế. Sau đây là một số lợi thế chính:

  1. Mô hình được đào tạo trước : Sử dụng các mô hình được đào tạo trước trên các tập dữ liệu phổ biến như COCO và ImageNet để phát triển nhanh hơn.
  2. Độ chính xác cao : Đạt được điểm mAP ấn tượng, đảm bảo phát hiện vật thể đáng tin cậy.
  3. Tốc độ : Được tối ưu hóa cho suy luận thời gian thực, lý tưởng cho các ứng dụng yêu cầu xử lý nhanh.
  4. Tính linh hoạt : Xuất mô hình sang nhiều định dạng khác nhau như ONNX Và TensorRT để triển khai trên nhiều nền tảng.

Khám phá Blog của chúng tôi để biết các trường hợp sử dụng và câu chuyện thành công được giới thiệu YOLO11 đang hoạt động.

📅 Được tạo ra cách đây 1 năm ✏️ Đã cập nhật cách đây 2 tháng

Bình luận