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

تصنيف الصور

أمثلة على تصنيف الصور

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

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



شاهد: استكشف Ultralytics YOLO المهام: تصنيف الصور باستخدام Ultralytics HUB

نصيحة

YOLO11 تستخدم نماذج التصنيف -cls اللاحقة، أي yolo11n-cls.pt ويتم تدريبهم مسبقًا على إيمدج نت.

النماذج

YOLO11 تظهر هنا نماذج التصنيف التي تم تدريبها مسبقًا. يتم تدريب نماذج الكشف والقطاع والوضعية مسبقًا على مجموعة بيانات COCO، بينما يتم تدريب نماذج التصنيف مسبقًا على مجموعة بيانات ImageNet.

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

الطراز الحجم
(بكسل)
اعتماد
توب 1

أعلى 5
السرعة
CPU ONNX
(مللي ثانية)
السرعة
T4 T4TensorRT10
(مللي ثانية)
بارامز
(م)

(ب) عند 640 (ب) في 640
YOLO11n-cls 224 70.0 89.4 5.0 ± 0.3 1.1 ± 0.0 1.6 3.3
YOLO11s-cls 224 75.4 92.7 7.9 ± 0.2 1.3 ± 0.0 5.5 12.1
YOLO11m-cls 224 77.3 93.9 17.2 ± 0.4 2.0 ± 0.0 10.4 39.3
YOLO11l-cls 224 78.3 94.3 23.2 ± 0.3 2.8 ± 0.0 12.9 49.4
YOLO11x-cls 224 79.5 94.9 41.4 ± 0.9 3.8 ± 0.0 28.4 110.4
  • acc قيم دقة النموذج على إيمدج نت مجموعة التحقق من صحة مجموعة البيانات.
    إعادة الإنتاج بواسطة yolo val classify data=path/to/ImageNet device=0
  • السرعة تم حساب متوسطها على صور ImageNet val باستخدام أمازون إي سي 2 بي 4 دي على سبيل المثال.
    إعادة الإنتاج بواسطة yolo val classify data=path/to/ImageNet batch=1 device=0|cpu

القطار

قم بتدريب YOLO11n-cls على مجموعة بيانات MNIST160 ل 100 حلقة زمنية بحجم صورة 64. للحصول على قائمة كاملة بالوسائط المتاحة، راجع صفحة التهيئة.

مثال على ذلك

from ultralytics import YOLO

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

# Train the model
results = model.train(data="mnist160", epochs=100, imgsz=64)
# Build a new model from YAML and start training from scratch
yolo classify train data=mnist160 model=yolo11n-cls.yaml epochs=100 imgsz=64

# Start training from a pretrained *.pt model
yolo classify train data=mnist160 model=yolo11n-cls.pt epochs=100 imgsz=64

# Build a new model from YAML, transfer pretrained weights to it and start training
yolo classify train data=mnist160 model=yolo11n-cls.yaml pretrained=yolo11n-cls.pt epochs=100 imgsz=64

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

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

فال

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

مثال على ذلك

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n-cls.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.top1  # top1 accuracy
metrics.top5  # top5 accuracy
yolo classify val model=yolo11n-cls.pt  # val official model
yolo classify val model=path/to/best.pt  # val custom model

التنبؤ

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

مثال على ذلك

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n-cls.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 classify predict model=yolo11n-cls.pt source='https://ultralytics.com/images/bus.jpg'  # predict with official model
yolo classify predict model=path/to/best.pt source='https://ultralytics.com/images/bus.jpg'  # predict with custom model

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

التصدير

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

مثال على ذلك

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n-cls.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-cls.pt format=onnx  # export official model
yolo export model=path/to/best.pt format=onnx  # export custom trained model

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

التنسيق format الجدال الطراز البيانات الوصفية الحجج
PyTorch - yolo11n-cls.pt -
TorchScript torchscript yolo11n-cls.torchscript imgsz, optimize, batch
ONNX onnx yolo11n-cls.onnx imgsz, half, dynamic, simplify, opset, batch
OpenVINO openvino yolo11n-cls_openvino_model/ imgsz, half, int8, batch
TensorRT engine yolo11n-cls.engine imgsz, half, dynamic, simplify, workspace, int8, batch
CoreML coreml yolo11n-cls.mlpackage imgsz, half, int8, nms, batch
TF SavedModel saved_model yolo11n-cls_saved_model/ imgsz, keras, int8, batch
TF GraphDef pb yolo11n-cls.pb imgsz, batch
TF لايت tflite yolo11n-cls.tflite imgsz, half, int8, batch
TF إيدج TPU edgetpu yolo11n-cls_edgetpu.tflite imgsz
TF.js tfjs yolo11n-cls_web_model/ imgsz, half, int8, batch
PaddlePaddle paddle yolo11n-cls_paddle_model/ imgsz, batch
MNN mnn yolo11n-cls.mnn imgsz, batch, int8, half
NCNN ncnn yolo11n-cls_ncnn_model/ imgsz, half, batch
IMX500 imx yolo11n-cls_imx_model/ imgsz, int8

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

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

ما هو الغرض من YOLO11 في تصنيف الصور؟

YOLO11 النماذج، مثل yolo11n-cls.ptمصممة لتصنيف الصور بكفاءة. فهي تقوم بتعيين تسمية فئة واحدة لصورة كاملة مع درجة ثقة. هذا مفيد بشكل خاص للتطبيقات التي تكون فيها معرفة الفئة المحددة للصورة كافية، بدلاً من تحديد موقع أو شكل الكائنات داخل الصورة.

كيف يمكنني تدريب نموذج YOLO11 لتصنيف الصور؟

لتدريب نموذج YOLO11 ، يمكنك استخدام الأمرين Python أو CLI . على سبيل المثال، لتدريب نموذج yolo11n-cls نموذج على مجموعة بيانات MNIST160 لمجموعة بيانات MNIST160 ل 100 حلقة تدريبية بحجم صورة 64:

مثال على ذلك

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n-cls.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="mnist160", epochs=100, imgsz=64)
yolo classify train data=mnist160 model=yolo11n-cls.pt epochs=100 imgsz=64

لمزيد من خيارات التهيئة، قم بزيارة صفحة التهيئة.

أين يمكنني العثور على نماذج التصنيف YOLO11 المدربة مسبقاً؟

يمكن العثور على نماذج التصنيف YOLO11 التي تم تدريبها مسبقًا في النماذج القسم. نماذج مثل yolo11n-cls.pt, yolo11s-cls.pt, yolo11m-cls.ptوما إلى ذلك، يتم تدريبهم مسبقًا على إيمدج نت مجموعة البيانات ويمكن تنزيلها بسهولة واستخدامها في مهام تصنيف الصور المختلفة.

كيف يمكنني تصدير نموذج مدرب YOLO11 إلى تنسيقات مختلفة؟

يمكنك تصدير نموذج مدرب YOLO11 إلى تنسيقات مختلفة باستخدام الأوامر Python أو CLI . على سبيل المثال، لتصدير نموذج إلى تنسيق ONNX :

مثال على ذلك

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n-cls.pt")  # load the trained model

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

للاطلاع على خيارات التصدير التفصيلية، راجع صفحة التصدير.

كيف يمكنني التحقق من صحة نموذج التصنيف YOLO11 المدرّب؟

للتحقق من دقة النموذج المُدرّب على مجموعة بيانات مثل MNIST160، يمكنك استخدام الأوامر التالية Python أو CLI :

مثال على ذلك

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n-cls.pt")  # load the trained model

# Validate the model
metrics = model.val()  # no arguments needed, uses the dataset and settings from training
metrics.top1  # top1 accuracy
metrics.top5  # top5 accuracy
yolo classify val model=yolo11n-cls.pt  # validate the trained model

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

📅 تم إنشاؤها منذ 1 سنة مضت ✏️ تم التحديث منذ 2 شهر

التعليقات