تخطي إلى المحتوى

الكشف عن كائنات المربعات المحدودة الموجهة

يذهب الاكتشاف الموجه للأجسام خطوة أبعد من اكتشاف الأجسام ويقدم زاوية إضافية لتحديد موقع الأجسام بدقة أكبر في الصورة.

يكون ناتج كاشف الأجسام الموجّهة عبارة عن مجموعة من المربعات المحدّدة المدوّرة التي تحيط بالأجسام الموجودة في الصورة بالضبط، بالإضافة إلى تسميات الفئات ودرجات الثقة لكل مربع. يُعد اكتشاف الكائنات خيارًا جيدًا عندما تحتاج إلى تحديد الكائنات ذات الأهمية في المشهد، ولكنك لا تحتاج إلى معرفة مكان الكائن أو شكله بالضبط.

نصيحة

YOLO11 تستخدم طرازات OBB -obb اللاحقة، أي yolo11n-obb.pt ويتم تدريبهم مسبقًا على DOTAv1.



شاهد: الكشف عن الكائنات باستخدام Ultralytics YOLO المربعات المحدودة الموجهة (YOLO-OBB)

العينات المرئية

اكتشاف السفن باستخدام OBB اكتشاف المركبات باستخدام OBB
اكتشاف السفن باستخدام OBB اكتشاف المركبات باستخدام OBB

النماذج

YOLO11 تظهر نماذج OBB المُدرَّبة مسبقًا هنا، والتي تم تدريبها مسبقًا على مجموعة بيانات DOTAv1.

يتم تنزيل النماذج تلقائياً من أحدثإصدار Ultralytics عند الاستخدام الأول.

الطراز الحجم
(بكسل)
اختبار mAPtest
50
السرعة
CPU ONNX
(مللي ثانية)
السرعة
T4 T4TensorRT10
(مللي ثانية)
بارامز
(م)

(ب)
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
  • اختبار mAPtest هي قيم للنموذج الواحد متعدد النماذج على DOTAv1 مجموعة البيانات.
    إعادة الإنتاج بواسطة yolo val obb data=DOTAv1.yaml device=0 split=test وإرسال النتائج المدمجة إلى تقييم DOTA.
  • السرعة تم حساب متوسطها على صور DOTAv1 val باستخدام أمازون إي سي 2 بي 4 دي على سبيل المثال.
    إعادة الإنتاج بواسطة yolo val obb data=DOTAv1.yaml batch=1 device=0|cpu

القطار

قم بتدريب YOLO11n-obb على مجموعة بيانات DOTA8 ل 100 حقبة زمنية بحجم صورة 640. للاطلاع على قائمة كاملة بالوسائط المتاحة انظر صفحة التهيئة.

مثال على ذلك

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



شاهد: كيفية تدريب النماذج Ultralytics YOLO -OBB (المربعات المحدودة الموجهة) على مجموعة بيانات DOTA DOTA باستخدام Ultralytics HUB

تنسيق مجموعة البيانات

يمكن الاطلاع على تنسيق مجموعة بيانات OBB بالتفصيل في دليل مجموعة البيانات.

فال

التحقق من صحة نموذج YOLO11n-obb المدرّب الدقة على مجموعة بيانات DOTA8. لا حاجة لوسائط لأن model تحتفظ بتدريبها data والوسائط كسمات نموذجية.

مثال على ذلك

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
yolo obb val model=yolo11n-obb.pt data=dota8.yaml  # val official model
yolo obb val model=path/to/best.pt data=path/to/data.yaml  # val custom model

التنبؤ

استخدم نموذج YOLO11n-obb المدرّب لتشغيل التنبؤات على الصور.

مثال على ذلك

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

# Predict with the model
results = model("https://ultralytics.com/images/boats.jpg")  # predict on an image
yolo obb predict model=yolo11n-obb.pt source='https://ultralytics.com/images/boats.jpg'  # predict with official model
yolo obb predict model=path/to/best.pt source='https://ultralytics.com/images/boats.jpg'  # predict with custom model



شاهد: كيفية الكشف عن صهاريج التخزين وتتبعها باستخدام Ultralytics YOLO -OBB | صناديق تحديد الاتجاه | DOTA

انظر بالكامل predict تفاصيل الوضع في التنبؤ الصفحة.

التصدير

قم بتصدير نموذج YOLO11n-obb إلى تنسيق مختلف مثل ONNX ، CoreML ، إلخ.

مثال على ذلك

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

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

ترد تنسيقات التصدير المتاحة YOLO11-obb في الجدول أدناه. يمكنك التصدير إلى أي تنسيق باستخدام format الحجة، أي format='onnx' أو format='engine'. يمكنك التنبؤ أو التحقق من الصحة مباشرةً على النماذج المصدرة، أي yolo predict model=yolo11n-obb.onnx. تظهر أمثلة الاستخدام للنموذج الخاص بك بعد اكتمال التصدير.

التنسيق format الجدال الطراز البيانات الوصفية الحجج
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 لايت tflite yolo11n-obb.tflite imgsz, half, int8, batch
TF إيدج 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

انظر بالكامل export التفاصيل في التصدير الصفحة.

الأسئلة الشائعة

ما هي الصناديق المحدودة الموجهة (OBB) وكيف تختلف عن الصناديق المحدودة العادية؟

تتضمن المربعات المحددة الموجهة (OBB) زاوية إضافية لتحسين دقة تحديد موقع الجسم في الصور. على عكس المربعات المحددة العادية، والتي هي عبارة عن مستطيلات محاذاة للمحور، يمكن أن تدور المربعات المحددة الموجهة لتناسب اتجاه الكائن بشكل أفضل. وهذا مفيد بشكل خاص للتطبيقات التي تتطلب تحديد موضع الكائن بدقة، مثل الصور الجوية أو صور الأقمار الصناعية(دليل مجموعة البيانات).

كيف يمكنني تدريب نموذج YOLO11n-obb باستخدام مجموعة بيانات مخصصة؟

لتدريب نموذج YOLO11n-obb باستخدام مجموعة بيانات مخصصة، اتبع المثال أدناه باستخدام Python أو CLI:

مثال على ذلك

from ultralytics import YOLO

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

# Train the model
results = model.train(data="path/to/custom_dataset.yaml", epochs=100, imgsz=640)
yolo obb train data=path/to/custom_dataset.yaml model=yolo11n-obb.pt epochs=100 imgsz=640

لمزيد من الوسائط التدريبية، راجع قسم التهيئة.

ما هي مجموعات البيانات التي يمكنني استخدامها لتدريب نماذج YOLO11-OBB؟

YOLO11-يتم تدريب نماذج OBB مسبقًا على مجموعات بيانات مثل DOTAv1 ولكن يمكنك استخدام أي مجموعة بيانات منسقة لـ OBB. يمكن العثور على معلومات مفصلة عن تنسيقات مجموعة بيانات OBB في دليل مجموعة البيانات.

كيف يمكنني تصدير نموذج YOLO11-OBB إلى تنسيق ONNX ؟

يعد تصدير نموذج YOLO11-OBB إلى تنسيق ONNX أمرًا سهلاً ومباشرًا باستخدام إما Python أو CLI:

مثال على ذلك

from ultralytics import YOLO

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

# Export the model
model.export(format="onnx")
yolo export model=yolo11n-obb.pt format=onnx

لمزيد من تنسيقات التصدير والتفاصيل، راجع صفحة التصدير.

كيف يمكنني التحقق من دقة نموذج YOLO11n-obb؟

للتحقق من صحة نموذج YOLO11n-obb، يمكنك استخدام الأوامر Python أو CLI كما هو موضح أدناه:

مثال على ذلك

from ultralytics import YOLO

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

# Validate the model
metrics = model.val(data="dota8.yaml")
yolo obb val model=yolo11n-obb.pt data=dota8.yaml

راجع تفاصيل التحقق الكاملة في قسم "فال".

📅 تم الإنشاء قبل 10 أشهر ✏️ تم التحديث منذ 1 شهر

التعليقات