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, COCO prediction, imantics, and fiftyone formats
result.to_coco_annotations()[:3]
result.to_coco_predictions(image_id=1)[:3]
result.to_imantics_annotations()[:3]
result.to_fiftyone_detections()[: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,
)لمزيد من الخطوات التفصيلية، قم بزيارة قسمنا حول التنبؤ الجماعي.

