Link to this sectionوثائق Ultralytics: استخدام YOLO26 مع SAHI للاستدلال المقسم#
مرحباً بك في وثائق Ultralytics حول كيفية استخدام YOLO26 مع SAHI (الاستدلال الفائق بمساعدة التقسيم). يهدف هذا الدليل الشامل إلى تزويدك بجميع المعارف الأساسية التي ستحتاجها لتنفيذ SAHI بجانب YOLO26. سوف نتعمق في ماهية SAHI، ولماذا يعد الاستدلال المقسم أمراً بالغ الأهمية للتطبيقات واسعة النطاق، وكيفية دمج هذه الوظائف مع YOLO26 لتحسين أداء اكتشاف الأشياء.
Link to this sectionمقدمة عن SAHI#
SAHI (الاستدلال الفائق بمساعدة التقسيم) هو مكتبة مبتكرة مصممة لتحسين خوارزميات اكتشاف الأشياء للصور واسعة النطاق وعالية الدقة. تكمن وظيفتها الأساسية في تقسيم الصور إلى شرائح يمكن إدارتها، وتشغيل اكتشاف الأشياء على كل شريحة، ثم إعادة تجميع النتائج معاً. يتوافق SAHI مع مجموعة من نماذج اكتشاف الأشياء، بما في ذلك سلسلة YOLO، مما يوفر المرونة مع ضمان الاستخدام الأمثل للموارد الحسابية.
Watch: How to use SAHI with Ultralytics YOLO26 to Detect Small Objects | Slicing Aided Hyper Inference 🚀
Link to this sectionالميزات الرئيسية لـ SAHI#
- تكامل سلس: يتكامل SAHI بسهولة مع نماذج YOLO، مما يعني أنه يمكنك البدء في التقسيم والاكتشاف دون الحاجة إلى الكثير من تعديلات التعليمات البرمجية.
- كفاءة الموارد: من خلال تقسيم الصور الكبيرة إلى أجزاء أصغر، يعمل SAHI على تحسين استخدام الذاكرة، مما يسمح لك بتشغيل اكتشاف عالي الجودة على أجهزة ذات موارد محدودة.
- دقة عالية: يحافظ SAHI على دقة الاكتشاف من خلال توظيف خوارزميات ذكية لدمج مربعات الاكتشاف المتداخلة أثناء عملية إعادة التجميع.
Link to this sectionما هو الاستدلال المقسم؟#
يشير الاستدلال المقسم إلى ممارسة تقسيم صورة كبيرة أو عالية الدقة إلى أجزاء أصغر (شرائح)، وإجراء اكتشاف الأشياء على هذه الشرائح، ثم إعادة تجميع الشرائح لإعادة بناء مواقع الأشياء على الصورة الأصلية. هذه التقنية لا تقدر بثمن في السيناريوهات التي تكون فيها الموارد الحسابية محدودة أو عند العمل مع صور عالية الدقة للغاية والتي قد تؤدي بخلاف ذلك إلى مشكلات في الذاكرة.
Link to this sectionفوائد الاستدلال المقسم#
-
تقليل العبء الحسابي: تكون شرائح الصور الأصغر أسرع في المعالجة، وتستهلك ذاكرة أقل، مما يتيح تشغيلاً أكثر سلاسة على الأجهزة ذات المواصفات المنخفضة.
-
الحفاظ على جودة الاكتشاف: نظراً لأنه يتم التعامل مع كل شريحة بشكل مستقل، فلا يوجد انخفاض في جودة اكتشاف الأشياء، بشرط أن تكون الشرائح كبيرة بما يكفي لالتقاط الأشياء محل الاهتمام.
-
قابلية توسع محسنة: تسمح التقنية بجعل اكتشاف الأشياء أكثر سهولة في التوسع عبر أحجام ودقات مختلفة للصور، مما يجعلها مثالية لمجموعة واسعة من التطبيقات بدءاً من صور الأقمار الصناعية وصولاً إلى التشخيص الطبي.
| YOLO26 without SAHI | YOLO26 with SAHI |
|---|---|
![]() | ![]() |
Link to this sectionالتثبيت والإعداد#
Link to this sectionالتثبيت#
للبدء، قم بتثبيت أحدث إصدارات SAHI و Ultralytics:
pip install -U ultralytics sahiLink to this sectionاستيراد الوحدات وتنزيل الموارد#
إليك كيفية تنزيل بعض صور الاختبار:
from sahi.utils.file import download_from_url
# Download test images
download_from_url(
"https://raw.githubusercontent.com/obss/sahi/main/demo/demo_data/small-vehicles1.jpeg",
"demo_data/small-vehicles1.jpeg",
)
download_from_url(
"https://raw.githubusercontent.com/obss/sahi/main/demo/demo_data/terrain2.png",
"demo_data/terrain2.png",
)Link to this sectionالاستدلال القياسي باستخدام YOLO26#
Link to this sectionإنشاء مثيل للنموذج#
يمكنك إنشاء مثيل لنموذج YOLO26 لاكتشاف الأشياء هكذا:
from sahi import AutoDetectionModel
detection_model = AutoDetectionModel.from_pretrained(
model_type="ultralytics",
model_path="yolo26n.pt",
confidence_threshold=0.3,
device="cpu", # or 'cuda:0'
)Link to this sectionإجراء التنبؤ القياسي#
إجراء الاستدلال القياسي باستخدام مسار صورة.
from sahi.predict import get_prediction
result = get_prediction("demo_data/small-vehicles1.jpeg", detection_model)
result.export_visuals(export_dir="demo_data/", hide_conf=True)Link to this sectionتصور النتائج#
تصدير وتصور مربعات التحديد والأقنعة المتوقعة:
from PIL import Image
# Open the predicted image
processed_image = Image.open("demo_data/prediction_visual.png")
# Display the predicted image
processed_image.show()Link to this sectionالاستدلال المقسم باستخدام YOLO26#
إجراء الاستدلال المقسم عن طريق تحديد أبعاد الشريحة ونسب التداخل:
from PIL import Image
from sahi.predict import get_sliced_prediction
result = get_sliced_prediction(
"demo_data/small-vehicles1.jpeg",
detection_model,
slice_height=256,
slice_width=256,
overlap_height_ratio=0.2,
overlap_width_ratio=0.2,
)
# Export results
result.export_visuals(export_dir="demo_data/", hide_conf=True)
# Open the predicted image
processed_image = Image.open("demo_data/prediction_visual.png")
# Display the predicted image
processed_image.show()Link to this sectionالتعامل مع نتائج التنبؤ#
يوفر SAHI كائن PredictionResult، والذي يمكن تحويله إلى تنسيقات تعليقات توضيحية مختلفة:
# Access the object prediction list
object_prediction_list = result.object_prediction_list
# Convert to COCO annotation and COCO prediction formats
result.to_coco_annotations()[:3]
result.to_coco_predictions(image_id=1)[:3]Link to this sectionالتنبؤ الدفعي#
للتنبؤ الدفعي على دليل من الصور:
from sahi.predict import predict
predict(
model_type="ultralytics",
model_path="yolo26n.pt",
model_device="cpu", # or 'cuda:0'
model_confidence_threshold=0.4,
source="path/to/dir",
slice_height=256,
slice_width=256,
overlap_height_ratio=0.2,
overlap_width_ratio=0.2,
)أنت الآن جاهز لاستخدام YOLO26 مع SAHI لكل من الاستدلال القياسي والمقسم.
Link to this sectionالاقتباسات والشكر#
إذا كنت تستخدم SAHI في عملك البحثي أو التطويري، يرجى الاستشهاد بورقة SAHI الأصلية وتقدير المؤلفين:
@article{akyon2022sahi,
title={Slicing Aided Hyper Inference and Fine-tuning for Small Object Detection},
author={Akyon, Fatih Cagatay and Altinuc, Sinan Onur and Temizel, Alptekin},
journal={2022 IEEE International Conference on Image Processing (ICIP)},
doi={10.1109/ICIP46576.2022.9897990},
pages={966-970},
year={2022}
}نقدم شكرنا لفريق بحث SAHI لإنشاء وصيانة هذا المورد الذي لا يقدر بثمن لمجتمع رؤية الحاسوب. لمزيد من المعلومات حول SAHI ومبتكريها، قم بزيارة مستودع SAHI على GitHub.
Link to this sectionالأسئلة الشائعة#
Link to this sectionكيف يمكنني دمج YOLO26 مع SAHI للاستدلال المقسم في اكتشاف الأشياء؟#
يعمل دمج Ultralytics YOLO26 مع SAHI (الاستدلال الفائق بمساعدة التقسيم) للاستدلال المقسم على تحسين مهام اكتشاف الأشياء الخاصة بك على الصور عالية الدقة من خلال تقسيمها إلى شرائح يمكن إدارتها. يعمل هذا النهج على تحسين استخدام الذاكرة وضمان دقة اكتشاف عالية. للبدء، تحتاج إلى تثبيت مكتبتي ultralytics و sahi:
pip install -U ultralytics sahiثم، قم بتنزيل صور الاختبار:
from sahi.utils.file import download_from_url
# Download test images
download_from_url(
"https://raw.githubusercontent.com/obss/sahi/main/demo/demo_data/small-vehicles1.jpeg",
"demo_data/small-vehicles1.jpeg",
)
download_from_url(
"https://raw.githubusercontent.com/obss/sahi/main/demo/demo_data/terrain2.png",
"demo_data/terrain2.png",
)لمزيد من التعليمات التفصيلية، راجع دليل الاستدلال المقسم الخاص بنا.
Link to this sectionلماذا يجب علي استخدام SAHI مع YOLO26 لاكتشاف الأشياء في الصور الكبيرة؟#
يوفر استخدام SAHI مع Ultralytics YOLO26 لاكتشاف الأشياء في الصور الكبيرة العديد من الفوائد:
- تقليل العبء الحسابي: تكون الشرائح الأصغر أسرع في المعالجة وتستهلك ذاكرة أقل، مما يجعل من الممكن تشغيل اكتشافات عالية الجودة على الأجهزة ذات الموارد المحدودة.
- الحفاظ على دقة الاكتشاف: يستخدم SAHI خوارزميات ذكية لدمج المربعات المتداخلة، مما يحافظ على جودة الاكتشاف.
- قابلية توسع محسنة: من خلال توسيع نطاق مهام اكتشاف الأشياء عبر أحجام ودقات صور مختلفة، يصبح SAHI مثالياً لتطبيقات متنوعة، مثل تحليل صور الأقمار الصناعية والتشخيص الطبي.
تعرف على المزيد حول فوائد الاستدلال المقسم في وثائقنا.
Link to this sectionهل يمكنني تصور نتائج التنبؤ عند استخدام YOLO26 مع SAHI؟#
نعم، يمكنك تصور نتائج التنبؤ عند استخدام YOLO26 مع SAHI. إليك كيفية تصدير النتائج وتصورها:
from PIL import Image
result.export_visuals(export_dir="demo_data/", hide_conf=True)
processed_image = Image.open("demo_data/prediction_visual.png")
processed_image.show()سيحفظ هذا الأمر التنبؤات المرئية في الدليل المحدد، ويمكنك بعد ذلك تحميل الصورة لعرضها في دفتر ملاحظاتك أو تطبيقك. للحصول على دليل مفصل، تحقق من قسم الاستدلال القياسي.
Link to this sectionما هي الميزات التي يوفرها SAHI لتحسين اكتشاف الأشياء باستخدام YOLO26؟#
يوفر SAHI (الاستدلال الفائق بمساعدة التقسيم) العديد من الميزات التي تكمل Ultralytics YOLO26 لاكتشاف الأشياء:
- تكامل سلس: يتكامل SAHI بسهولة مع نماذج YOLO، مما يتطلب الحد الأدنى من تعديلات التعليمات البرمجية.
- كفاءة الموارد: يقوم بتقسيم الصور الكبيرة إلى شرائح أصغر، مما يعمل على تحسين استخدام الذاكرة والسرعة.
- دقة عالية: من خلال الدمج الفعال لمربعات الاكتشاف المتداخلة أثناء عملية التجميع، يحافظ SAHI على دقة اكتشاف عالية.
للحصول على فهم أعمق، اقرأ عن الميزات الرئيسية لـ SAHI.
Link to this sectionكيف أتعامل مع مشاريع الاستدلال واسعة النطاق باستخدام YOLO26 و SAHI؟#
للتعامل مع مشاريع الاستدلال واسعة النطاق باستخدام YOLO26 و SAHI، اتبع أفضل الممارسات التالية:
- تثبيت المكتبات المطلوبة: تأكد من حصولك على أحدث إصدارات ultralytics و sahi.
- تهيئة الاستدلال المقسم: حدد أبعاد الشريحة المثلى ونسب التداخل لمشروعك المحدد.
- تشغيل التنبؤات الدفعية: استخدم قدرات SAHI لإجراء تنبؤات دفعية على دليل من الصور، مما يحسن الكفاءة.
مثال للتنبؤ الدفعي:
from sahi.predict import predict
predict(
model_type="ultralytics",
model_path="path/to/yolo26n.pt",
model_device="cpu", # or 'cuda:0'
model_confidence_threshold=0.4,
source="path/to/dir",
slice_height=256,
slice_width=256,
overlap_height_ratio=0.2,
overlap_width_ratio=0.2,
)لمزيد من الخطوات التفصيلية، تفضل بزيارة قسمنا حول التنبؤ الدفعي.

