تثبيت Ultralytics#
تقدم Ultralytics مجموعة متنوعة من طرق التثبيت، بما في ذلك pip و conda و Docker. يمكنك تثبيت YOLO عبر حزمة pip ultralytics لأحدث إصدار مستقر، أو عن طريق استنساخ مستودع Ultralytics على GitHub للحصول على النسخة الأحدث. يُعد Docker خياراً أيضاً لتشغيل الحزمة في حاوية معزولة، مما يتجنب التثبيت المحلي.
Watch: Ultralytics YOLO Quick Start Guide
قم بتثبيت أو تحديث حزمة ultralytics باستخدام pip عن طريق تشغيل pip install -U ultralytics. لمزيد من التفاصيل حول حزمة ultralytics، تفضل بزيارة مؤشر حزم Python (PyPI).
# Install or upgrade the ultralytics package from PyPI
pip install -U ultralyticsيمكنك أيضاً تثبيت ultralytics مباشرةً من مستودع Ultralytics على GitHub. يمكن أن يكون هذا مفيداً إذا كنت تريد أحدث إصدار قيد التطوير. تأكد من تثبيت أداة سطر الأوامر Git، ثم قم بتشغيل:
# Install the ultralytics package from GitHub
pip install git+https://github.com/ultralytics/ultralytics.git@mainراجع ملف ultralytics pyproject.toml للحصول على قائمة التبعيات. لاحظ أن جميع الأمثلة أعلاه تقوم بتثبيت جميع التبعيات المطلوبة.
التثبيت على خادم بدون واجهة رسومية (Headless)#
لبيئات الخوادم التي لا تحتوي على شاشة عرض (مثل أجهزة الآلة السحابية الافتراضية، وحوايا Docker، وخطوط CI/CD)، استخدم حزمة ultralytics-opencv-headless. هذه الحزمة مطابقة لحزمة ultralytics القياسية ولكنها تعتمد على opencv-python-headless بدلاً من opencv-python، مما يتجنب تبعيات واجهة المستخدم الرسومية غير الضرورية وأخطاء libGL المحتملة.
pip install ultralytics-opencv-headlessتوفر كلتا الحزمتين نفس الوظائف وAPI. البديل headless يستبعد ببساطة مكونات واجهة المستخدم الرسومية في OpenCV التي تتطلب مكتبات عرض.
التثبيت المتقدم#
بينما تغطي طرق التثبيت القياسية معظم حالات الاستخدام، قد تحتاج إلى إعداد أكثر تخصصاً للتطوير أو التكوينات المخصصة.
إذا كنت بحاجة إلى تعديلات مخصصة ومستمرة، يمكنك عمل فرع (fork) لمستودع Ultralytics، وإجراء تغييرات على pyproject.toml أو شيفرات أخرى، والتثبيت من فرعك.
- انسخ (Fork) مستودع Ultralytics على GitHub إلى حسابك على GitHub.
- قم باستنساخ نسختك محلياً:
git clone https://github.com/YOUR_USERNAME/ultralytics.git cd ultralytics - أنشئ فرعاً جديداً لتغييراتك:
git checkout -b my-custom-branch - أجرِ تعديلاتك على
pyproject.tomlأو الملفات الأخرى حسب الحاجة. - قم بعمل Commit و Push لتغييراتك:
git add . git commit -m "My custom changes" git push origin my-custom-branch - قم بالتثبيت باستخدام pip باستخدام صيغة
git+https، مع الإشارة إلى فرعك:pip install git+https://github.com/YOUR_USERNAME/ultralytics.git@my-custom-branch
استخدام Ultralytics مع CLI#
يتيح واجهة سطر الأوامر (CLI) لـ Ultralytics أوامر بسيطة من سطر واحد دون الحاجة إلى بيئة Python. لا يتطلب سطر الأوامر أي تخصيص أو شيفرة برمجية لـ Python؛ قم بتنفيذ جميع المهام من الطرفية باستخدام أمر yolo. لمزيد من المعلومات حول استخدام YOLO من سطر الأوامر، راجع دليل CLI.
تستخدم أوامر Ultralytics yolo الصيغة التالية:
yolo TASK MODE ARGSTASK(اختياري) هو أحد (detect، segment، semantic، depth، classify، pose، obb)MODE(مطلوب) هو أحد (train، val، predict، export، track، benchmark)ARGS(اختياري) هي أزواجarg=valueمثلimgsz=640التي تتجاوز القيم الافتراضية.
تعرف على جميع قيم ARGS في دليل التكوين الكامل أو باستخدام أمر سطر الأوامر yolo cfg.
يجب تمرير الوسائط كأزواج arg=value، مفصولة بعلامة يساوي = ومحدودة بمسافات. لا تستخدم بادئات الوسائط -- أو الفواصل , بين الوسائط.
yolo predict model=yolo26n.pt imgsz=640 conf=0.25✅yolo predict model yolo26n.pt imgsz 640 conf 0.25❌ (مفقود=)yolo predict model=yolo26n.pt, imgsz=640, conf=0.25❌ (لا تستخدم,)yolo predict --model yolo26n.pt --imgsz 640 --conf 0.25❌ (لا تستخدم--)yolo solution model=yolo26n.pt imgsz=640 conf=0.25❌ (استخدمsolutionsوليسsolution)
استخدام Ultralytics مع Python#
توفر واجهة Python الخاصة بـ Ultralytics YOLO تكاملاً سلساً في مشاريع Python، مما يسهل تحميل وتشغيل ومعالجة مخرجات النموذج. صُممت واجهة Python لتوفر البساطة، وتتيح للمستخدمين تنفيذ كشف الكائنات، وتجزئة النطاق، والتجزئة الدلالية، وتقدير العمق، والتصنيف بسرعة. هذا يجعل واجهة Python الخاصة بـ YOLO أداة لا تُقدر بثمن لدمج هذه الوظائف في مشاريع Python.
على سبيل المثال، يمكن للمستخدمين تحميل نموذج، وتدريبه، وتقييم أدائه، وتصديره إلى صيغة ONNX باستخدام بضعة أسطر برمجية فقط. استكشف دليل Python لمعرفة المزيد حول استخدام YOLO ضمن مشاريع Python الخاصة بك.
from ultralytics import YOLO
# Create a new YOLO model from scratch
model = YOLO("yolo26n.yaml")
# Load a pretrained YOLO model (recommended for training)
model = YOLO("yolo26n.pt")
# Train the model using the 'coco8.yaml' dataset for 3 epochs
results = model.train(data="coco8.yaml", epochs=3)
# Evaluate the model's performance on the validation set
results = model.val()
# Perform object detection on an image using the model
results = model("https://ultralytics.com/images/bus.jpg")
# Export the model to ONNX format
success = model.export(format="onnx")إعدادات Ultralytics#
تتضمن مكتبة Ultralytics عنصراً SettingsManager للتحكم الدقيق في التجارب، مما يتيح للمستخدمين الوصول إلى الإعدادات وتعديلها بسهولة. يتم تخزين هذه الإعدادات في ملف JSON داخل دليل تكوين المستخدم الخاص بالبيئة، ويمكن عرضها أو تعديلها في بيئة Python أو عبر واجهة سطر الأوامر (CLI).
فحص الإعدادات#
لعرض التكوين الحالي لإعداداتك:
استخدم Python لعرض إعداداتك عن طريق استيراد كائن settings من وحدة ultralytics. اطبع الإعدادات وأرجعها باستخدام هذه الأوامر:
from ultralytics import settings
# View all settings
print(settings)
# Return a specific setting
value = settings["runs_dir"]تعديل الإعدادات#
تسهل Ultralytics تعديل الإعدادات بالطرق التالية:
في Python، استخدم طريقة update على كائن settings:
from ultralytics import settings
# Update a setting
settings.update({"runs_dir": "/path/to/runs"})
# Update multiple settings
settings.update({"runs_dir": "/path/to/runs", "tensorboard": False})
# Reset settings to default values
settings.reset()فهم الإعدادات#
يقدم الجدول أدناه نظرة عامة على الإعدادات القابلة للتعديل داخل Ultralytics، بما في ذلك قيم الأمثلة، وأنواع البيانات، والأوصاف.
| الاسم | قيمة المثال | نوع البيانات | الوصف |
|---|---|---|---|
settings_version | '0.0.7' | str | Ultralytics settings version (distinct from the Ultralytics pip version) |
datasets_dir | '/path/to/datasets' | str | الدليل الذي يتم تخزين مجموعات البيانات فيه |
weights_dir | '/path/to/weights' | str | الدليل الذي يتم تخزين أوزان النموذج فيه |
runs_dir | '/path/to/runs' | str | الدليل الذي يتم تخزين عمليات التجربة فيه |
uuid | 'a1b2c3d4' | str | معرف فريد للإعدادات الحالية |
sync | True | bool | Option to sync analytics and crashes to Ultralytics Platform |
api_key | '' | str | Ultralytics Platform API Key |
clearml | True | bool | Option to use ClearML logging |
comet | True | bool | Option to use Comet ML for experiment tracking and visualization |
dvc | True | bool | Option to use DVC for experiment tracking and version control |
mlflow | True | bool | Option to use MLFlow for experiment tracking |
neptune | True | bool | Option to use Neptune for experiment tracking |
raytune | True | bool | Option to use Ray Tune for hyperparameter tuning |
tensorboard | False | bool | Option to use TensorBoard for visualization |
wandb | False | bool | Option to use Weights & Biases logging |
vscode_msg | True | bool | When a VS Code terminal is detected, enables a prompt to download the Ultralytics-Snippets extension. |
راجع هذه الإعدادات أثناء تقدمك في المشاريع أو التجارب لضمان التكوين الأمثل.
الأسئلة الشائعة#
كيف أقوم بتثبيت Ultralytics باستخدام pip؟#
قم بتثبيت Ultralytics باستخدام pip عبر:
pip install -U ultralyticsيقوم هذا بتثبيت أحدث إصدار مستقر من حزمة ultralytics من PyPI. لتثبيت إصدار التطوير مباشرة من GitHub:
pip install git+https://github.com/ultralytics/ultralytics.gitتأكد من تثبيت أداة سطر أوامر Git على نظامك.
هل يمكنني تثبيت Ultralytics YOLO باستخدام conda؟#
نعم، قم بتثبيت Ultralytics YOLO باستخدام conda عبر:
conda install -c conda-forge ultralyticsتعتبر هذه الطريقة بديلاً رائعاً لـ pip، مما يضمن التوافق مع الحزم الأخرى. بالنسبة لبيئات CUDA، قم بتثبيت ultralytics و pytorch و pytorch-cuda معاً لحل التعارضات:
conda install -c pytorch -c nvidia -c conda-forge pytorch torchvision pytorch-cuda=12.1 ultralyticsلمزيد من التعليمات، راجع دليل البدء السريع لـ Conda.
ما هي مزايا استخدام Docker لتشغيل Ultralytics YOLO؟#
يوفر Docker بيئة معزولة وثابتة لـ Ultralytics YOLO، مما يضمن أداءً سلساً عبر الأنظمة ويتجنب تعقيدات التثبيت المحلي. تتوفر صور Docker الرسمية على Docker Hub، مع متغيرات لوحدة معالجة الرسومات (GPU)، ووحدة المعالجة المركزية (CPU)، و ARM64، و NVIDIA Jetson، و Conda. لسحب وتشغيل أحدث صورة:
# Pull the latest ultralytics image from Docker Hub
sudo docker pull ultralytics/ultralytics:latest
# Run the ultralytics image in a container with GPU support
sudo docker run -it --ipc=host --device nvidia.com/gpu=all ultralytics/ultralytics:latestللحصول على إرشادات تفصيلية حول Docker، راجع دليل البدء السريع لـ Docker.
كيف يمكنني استنساخ مستودع Ultralytics للتطوير؟#
استنسخ مستودع Ultralytics وقم بإعداد بيئة تطوير عبر:
# Clone the ultralytics repository
git clone https://github.com/ultralytics/ultralytics
# Navigate to the cloned directory
cd ultralytics
# Install the package in editable mode for development
pip install -e .يسمح هذا بالمساهمة في المشروع أو التجربة بأحدث شيفرة مصدرية. للتفاصيل، تفضل بزيارة مستودع Ultralytics على GitHub.
لماذا يجب أن أستخدم واجهة Ultralytics YOLO CLI؟#
تعمل واجهة Ultralytics YOLO CLI على تبسيط تشغيل مهام كشف الكائنات دون الحاجة إلى كود Python، مما يتيح أوامر من سطر واحد للتدريب، والتحقق، والتنبؤ مباشرة من محطتك. الصيغة الأساسية هي:
yolo TASK MODE ARGSعلى سبيل المثال، لتدريب نموذج كشف:
yolo train data=coco8.yaml model=yolo26n.pt epochs=10 lr0=0.01استكشف المزيد من الأوامر وأمثلة الاستخدام في دليل CLI الكامل.