Phát hiện đối tượng hộp giới hạn định hướng
Phát hiện vật thể định hướng tiến xa hơn một bước so với phát hiện vật thể và đưa ra góc bổ sung để xác định vị trí vật thể chính xác hơn trong hình ảnh.
Đầu ra của một bộ phát hiện đối tượng định hướng là một tập hợp các hộp giới hạn xoay bao quanh chính xác 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ó.
Mẹo
YOLO11 Các mô hình OBB sử dụng -obb
hậu tố, tức là yolo11n-obb.pt
và được đào tạo trước về DOTAv1.
Đồng hồ: Phát hiện đối tượng bằng cách sử dụng Ultralytics YOLO Hộp giới hạn định hướng ( YOLO (OBB)
Mẫu hình ảnh
Phát hiện tàu bằng OBB | Phát hiện xe bằng OBB |
---|---|
Mô hình
YOLO11 Các mô hình OBB được đào tạo trước được hiển thị ở đây, được đào tạo trước trên tập dữ liệu DOTAv1 .
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) |
kiểm tra mAP 50 |
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-obb | 1024 | 78.4 | 117,6 ± 0,8 | 4,4 ± 0,0 | 2.7 | 17.2 |
YOLO11s-obb | 1024 | 79.5 | 219,4 ± 4,0 | 5,1 ± 0,0 | 9.7 | 57.5 |
YOLO11m-obb | 1024 | 80.9 | 562,8 ± 2,9 | 10,1 ± 0,4 | 20.9 | 183.5 |
YOLO11l-obb | 1024 | 81.0 | 712,5 ± 5,0 | 13,5 ± 0,6 | 26.2 | 232.0 |
YOLO11x-obb | 1024 | 81.3 | 1408,6 ± 7,7 | 28,6 ± 1,0 | 58.8 | 520.2 |
- kiểm tra mAP các giá trị dành cho mô hình đơn đa thang đo trên DOTAv1 tập dữ liệu.
Sao chép bởiyolo val obb data=DOTAv1.yaml device=0 split=test
và gửi kết quả đã hợp nhất tới Đánh giá DOTA. - Tốc độ trung bình trên các hình ảnh DOTAv1 val sử dụng một Amazon EC2 P4d ví dụ.
Sao chép bởiyolo val obb data=DOTAv1.yaml batch=1 device=0|cpu
Xe lửa
Huấn luyện YOLO11n-obb trên tập dữ liệu DOTA8 trong 100 kỷ nguyên ở kích thước hình ả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-obb.yaml") # build a new model from YAML
model = YOLO("yolo11n-obb.pt") # load a pretrained model (recommended for training)
model = YOLO("yolo11n-obb.yaml").load("yolo11n.pt") # build from YAML and transfer weights
# Train the model
results = model.train(data="dota8.yaml", epochs=100, imgsz=640)
# Build a new model from YAML and start training from scratch
yolo obb train data=dota8.yaml model=yolo11n-obb.yaml epochs=100 imgsz=640
# Start training from a pretrained *.pt model
yolo obb train data=dota8.yaml model=yolo11n-obb.pt epochs=100 imgsz=640
# Build a new model from YAML, transfer pretrained weights to it and start training
yolo obb train data=dota8.yaml model=yolo11n-obb.yaml pretrained=yolo11n-obb.pt epochs=100 imgsz=640
Đồng hồ: Cách luyện tập Ultralytics YOLO -Các mô hình OBB (Hộp giới hạn định hướng) trên Bộ dữ liệu DOTA sử dụng Ultralytics TRUNG TÂM
Định dạng tập dữ liệu
Định dạng tập dữ liệu OBB có thể được tìm thấy chi tiết trong Hướng dẫn tập dữ liệu .
Giá trị
Xác thực mô hình YOLO11n-obb đã được đào tạo sự chính xác trên tập dữ liệu DOTA8. 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-obb.pt") # load an official model
model = YOLO("path/to/best.pt") # load a custom model
# Validate the model
metrics = model.val(data="dota8.yaml") # no arguments needed, dataset and settings remembered
metrics.box.map # map50-95(B)
metrics.box.map50 # map50(B)
metrics.box.map75 # map75(B)
metrics.box.maps # a list contains map50-95(B) of each category
Dự đoán
Sử dụng mô hình YOLO11n-obb đã được đào tạo để chạy dự đoán trên hình ảnh.
Ví dụ
Đồng hồ: Cách phát hiện và theo dõi các bồn chứa bằng cách sử dụng Ultralytics YOLO -OBB | Hộp giới hạn định hướng | DOTA
Xem đầy đủ predict
chi tiết chế độ trong Dự đoán trang.
Xuất khẩu
Xuất mô hình YOLO11n-obb sang một định dạng khác như ONNX , CoreML , vân vân.
Ví dụ
Có sẵn YOLO11 -obb đị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-obb.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-obb.pt |
✅ | - |
TorchScript | torchscript |
yolo11n-obb.torchscript |
✅ | imgsz , optimize , batch |
ONNX | onnx |
yolo11n-obb.onnx |
✅ | imgsz , half , dynamic , simplify , opset , batch |
OpenVINO | openvino |
yolo11n-obb_openvino_model/ |
✅ | imgsz , half , int8 , batch |
TensorRT | engine |
yolo11n-obb.engine |
✅ | imgsz , half , dynamic , simplify , workspace , int8 , batch |
CoreML | coreml |
yolo11n-obb.mlpackage |
✅ | imgsz , half , int8 , nms , batch |
TF SavedModel | saved_model |
yolo11n-obb_saved_model/ |
✅ | imgsz , keras , int8 , batch |
TF GraphDef | pb |
yolo11n-obb.pb |
❌ | imgsz , batch |
TF Nhẹ | tflite |
yolo11n-obb.tflite |
✅ | imgsz , half , int8 , batch |
TF Bờ rìa TPU | edgetpu |
yolo11n-obb_edgetpu.tflite |
✅ | imgsz |
TF .js | tfjs |
yolo11n-obb_web_model/ |
✅ | imgsz , half , int8 , batch |
PaddlePaddle | paddle |
yolo11n-obb_paddle_model/ |
✅ | imgsz , batch |
MNN | mnn |
yolo11n-obb.mnn |
✅ | imgsz , batch , int8 , half |
NCNN | ncnn |
yolo11n-obb_ncnn_model/ |
✅ | imgsz , half , batch |
IMX500 | imx |
yolo11n-obb_imx_model/ |
✅ | imgsz , int8 |
Xem đầy đủ export
chi tiết trong Xuất khẩu trang.
CÂU HỎI THƯỜNG GẶP
Hộp giới hạn định hướng (OBB) là gì và chúng khác với hộp giới hạn thông thường như thế nào?
Hộp giới hạn định hướng (OBB) bao gồm một góc bổ sung để tăng cường độ chính xác định vị đối tượng trong hình ảnh. Không giống như các hộp giới hạn thông thường, là các hình chữ nhật căn chỉnh theo trục, OBB có thể xoay để phù hợp hơn với hướng của đối tượng. Điều này đặc biệt hữu ích cho các ứng dụng yêu cầu vị trí đối tượng chính xác, chẳng hạn như hình ảnh trên không hoặc vệ tinh ( Hướng dẫn về bộ dữ liệu ).
Làm thế nào để đào tạo mô hình YOLO11n-obb bằng cách sử dụng tập dữ liệu tùy chỉnh?
Để đào tạo mô hình YOLO11n-obb với tập dữ liệu tùy chỉnh, hãy làm theo ví dụ bên dưới bằng cách sử dụng Python hoặc CLI :
Ví dụ
Để biết thêm thông tin về đào tạo, hãy kiểm tra phần Cấu hình .
Tôi có thể sử dụng những tập dữ liệu nào để đào tạo YOLO11 -Mô hình OBB?
YOLO11 -Các mô hình OBB được đào tạo trước trên các tập dữ liệu như DOTAv1 nhưng bạn có thể sử dụng bất kỳ tập dữ liệu nào được định dạng cho OBB. Thông tin chi tiết về các định dạng tập dữ liệu OBB có thể được tìm thấy trong Hướng dẫn tập dữ liệu .
Làm thế nào tôi có thể xuất khẩu một YOLO11 -Mô hình OBB để ONNX định dạng?
Xuất khẩu một YOLO11 -Mô hình OBB để ONNX định dạng là đơn giản bằng cách sử dụng một trong hai Python hoặc CLI :
Ví dụ
Để biết thêm thông tin chi tiết và định dạng xuất, hãy tham khảo trang Xuất .
Làm thế nào để xác thực độ chính xác của mô hình YOLO11n-obb?
Để xác thực mô hình YOLO11n-obb, bạn có thể sử dụng Python hoặc CLI lệnh như hiển thị bên dưới:
Ví dụ
Xem đầy đủ thông tin xác thực trong phần Val .