حلول Ultralytics: تسخير YOLO26 لحل المشكلات الواقعية
توفر حلول Ultralytics تطبيقات متطورة لنماذج YOLO، وتقدم حلولًا واقعية مثل عد الكائنات، والتعتيم، وأنظمة الأمان، مما يعزز الكفاءة والدقة في مختلف الصناعات. اكتشف قوة YOLO26 للتطبيقات العملية والمؤثرة.
![]()
شاهد: كيفية تشغيل حلول Ultralytics من سطر الأوامر (CLI) | Ultralytics YOLO26 🚀
الحلول
إليك قائمتنا المنسقة لحلول Ultralytics التي يمكن استخدامها لإنشاء مشاريع رؤية حاسوبية رائعة.
- التحليلات: قم بإجراء تحليل بيانات شامل لاكتشاف الأنماط واتخاذ قرارات مستنيرة، بالاستفادة من YOLO26 للتحليلات الوصفية والتنبؤية والتوجيهية.
- حساب المسافة: احسب المسافات بين الكائنات باستخدام مراكز صناديق الإحاطة في YOLO26، وهو أمر ضروري للتحليل المكاني.
- الخرائط الحرارية: استخدم الخرائط الحرارية للكشف لتصور كثافة البيانات عبر مصفوفة، مما يوفر رؤى واضحة في مهام رؤية الكمبيوتر.
- تجزئة الكائنات مع تتبعها: طبق تجزئة الكائنات وتتبع الكائنات باستخدام YOLO26 لتحقيق حدود كائنات دقيقة ومراقبة مستمرة.
- الاستدلال المباشر باستخدام Streamlit: استفد من قوة YOLO26 لاكتشاف الكائنات في الوقت الفعلي مباشرة عبر متصفح الويب الخاص بك بواجهة Streamlit سهلة الاستخدام.
- تعتيم الكائنات: طبق تعتيم الكائنات باستخدام YOLO26 لحماية الخصوصية في معالجة الصور والفيديو.
- عد الكائنات: تعلم كيفية إجراء عد الكائنات في الوقت الفعلي باستخدام YOLO26. اكتسب الخبرة لعد الكائنات بدقة في تدفقات الفيديو المباشرة.
- عد الكائنات في مناطق محددة: عد الكائنات في مناطق محددة باستخدام YOLO26 لاكتشاف دقيق في مناطق متنوعة.
- قص الكائنات: أتقن قص الكائنات باستخدام YOLO26 لاستخراج دقيق للكائنات من الصور ومقاطع الفيديو.
- إدارة مواقف السيارات: نظم ووجه تدفق المركبات في مناطق وقوف السيارات باستخدام YOLO26، مما يحسن استغلال المساحة وتجربة المستخدم.
- إدارة الطوابير: طبق أنظمة فعالة لإدارة الطوابير لتقليل أوقات الانتظار وتحسين الإنتاجية باستخدام YOLO26.
- نظام إنذار أمني: أنشئ نظام إنذار أمني باستخدام YOLO26 يطلق تنبيهات عند اكتشاف كائنات جديدة. خصص النظام ليناسب احتياجاتك الخاصة.
- البحث عن التشابه: قم بتمكين استرجاع الصور الذكي من خلال دمج تضمينات OpenAI CLIP مع Meta FAISS، مما يتيح استعلامات اللغة الطبيعية مثل "شخص يحمل حقيبة" أو "مركبات متحركة".
- تقدير السرعة: قدر سرعة الكائنات باستخدام YOLO26 وتقنيات تتبع الكائنات، وهو أمر بالغ الأهمية لتطبيقات مثل المركبات ذاتية القيادة ومراقبة حركة المرور.
- تتبع الكائنات في مناطق محددة: تعلم كيفية تتبع الكائنات ضمن مناطق محددة من إطارات الفيديو باستخدام YOLO26 لمراقبة دقيقة وفعالة.
- رسم خرائط الكائنات VisionEye View: قم بتطوير أنظمة تحاكي تركيز عين الإنسان على كائنات معينة، مما يعزز قدرة الكمبيوتر على تمييز التفاصيل وتحديد أولوياتها.
- مراقبة التمارين الرياضية: اكتشف كيفية مراقبة التمارين الرياضية باستخدام YOLO26. تعلم تتبع وتحليل مختلف الروتينات الرياضية في الوقت الفعلي.
وسائط الحلول
| الوسيطة | النوع | افتراضي | الوصف |
|---|---|---|---|
model | str | None | مسار إلى ملف نموذج Ultralytics YOLO. |
region | list | '[(20, 400), (1260, 400)]' | قائمة النقاط التي تحدد منطقة العد. |
show_in | bool | True | Flag للتحكم فيما إذا كان سيتم عرض عدد الأسماك الداخلة في بث الفيديو. |
show_out | bool | True | Flag للتحكم فيما إذا كان سيتم عرض عدد الأسماك الخارجة في بث الفيديو. |
analytics_type | str | 'line' | نوع الرسم البياني، على سبيل المثال، line, bar, area، أو pie. |
colormap | int | cv2.COLORMAP_JET | مخطط الألوان المراد استخدامه للخريطة الحرارية. |
json_file | str | None | مسار ملف JSON الذي يحتوي على جميع بيانات إحداثيات مواقف السيارات. |
up_angle | float | 145.0 | عتبة الزاوية لوضعية 'الأعلى'. |
kpts | list[int] | '[6, 8, 10]' | قائمة بثلاثة مؤشرات للنقاط الرئيسية تُستخدم لمراقبة التمارين الرياضية. تتوافق هذه النقاط الرئيسية مع مفاصل الجسم أو أجزائه، مثل الأكتاف والمرفقين والمعصمين، لتمارين مثل الضغط والسحب والقرفصاء وتمارين البطن. |
down_angle | float | 90.0 | عتبة الزاوية لوضعية 'الأسفل'. |
blur_ratio | float | 0.5 | يضبط النسبة المئوية لشدة التمويه، بقيم في النطاق 0.1 - 1.0. |
crop_dir | str | 'cropped-detections' | اسم الدليل لتخزين الاكتشافات التي تم اقتصاصها. |
records | int | 5 | إجمالي عدد الاكتشافات لتشغيل بريد إلكتروني مع نظام إنذار أمني. |
vision_point | tuple[int, int] | (20, 20) | النقطة التي ستتتبع فيها الرؤية الكائنات وترسم مسارات باستخدام VisionEye Solution. |
source | str | None | مسار إلى المصدر المدخل (فيديو، RTSP، إلخ). يُستخدم فقط مع واجهة سطر الأوامر (CLI) الخاصة بالحلول. |
figsize | tuple[int, int] | (12.8, 7.2) | حجم الشكل لمخططات التحليلات مثل الخرائط الحرارية أو الرسوم البيانية. |
fps | float | 30.0 | الإطارات في الثانية المستخدمة لحسابات السرعة. |
max_hist | int | 5 | الحد الأقصى للنقاط التاريخية التي يتم trackها لكل كائن لحسابات السرعة/الاتجاه. |
meter_per_pixel | float | 0.05 | عامل القياس المستخدم لتحويل مسافة البكسل إلى وحدات العالم الحقيقي. |
max_speed | int | 120 | الحد الأقصى للسرعة في التراكبات المرئية (يستخدم في التنبيهات). |
data | str | 'images' | مسار إلى دليل الصور المستخدم للبحث عن التشابه. |
تتبع الحجج
تدعم الحلول أيضًا بعض الوسائط من track، بما في ذلك معلمات مثل. conf, line_width, tracker, model, show, verbose و classes.
| الوسيطة | النوع | افتراضي | الوصف |
|---|---|---|---|
tracker | str | 'botsort.yaml' | يحدد خوارزمية التتبع المراد استخدامها، على سبيل المثال، bytetrack.yaml أو botsort.yaml. |
conf | float | 0.1 | يحدد عتبة الثقة للكشف؛ القيم الأقل تسمح بتتبع المزيد من الكائنات ولكن قد تتضمن نتائج إيجابية كاذبة. |
iou | float | 0.7 | يحدد عتبة التقاطع على الاتحاد (IoU) لتصفية عمليات الكشف المتداخلة. |
classes | list | None | يقوم بتصفية النتائج حسب فهرس الفئة. على سبيل المثال، classes=[0, 2, 3] يتتبع الفئات المحددة فقط. |
verbose | bool | True | يتحكم في عرض نتائج التتبع، مما يوفر مخرجًا مرئيًا للكائنات التي يتم تتبعها. |
device | str | None | يحدد الجهاز الخاص بالاستدلال (على سبيل المثال، cpu, cuda:0 أو 0). يسمح للمستخدمين بالاختيار بين CPU أو GPU معين أو أجهزة حساب أخرى لتنفيذ النموذج. |
وسائط التصور
يمكنك استخدام show_conf, show_labels، وغيرها من الوسائط المذكورة لتخصيص التصور.
| الوسيطة | النوع | افتراضي | الوصف |
|---|---|---|---|
show | bool | False | إذا True، يعرض الصور أو مقاطع الفيديو المشروحة في نافذة. مفيد للحصول على تعليقات مرئية فورية أثناء التطوير أو الاختبار. |
line_width | int or None | None | يحدد عرض خطوط مربعات الإحاطة. إذا None، يتم تعديل عرض الخط تلقائيًا بناءً على حجم الصورة. يوفر تخصيصًا مرئيًا للوضوح. |
show_conf | bool | True | يعرض قيمة الثقة لكل كائن يتم الكشف عنه بجانب التسمية. يعطي نظرة ثاقبة حول يقين النموذج لكل كائن تم الكشف عنه. |
show_labels | bool | True | يعرض تسميات لكل كائن يتم الكشف عنه في الناتج المرئي. يوفر فهمًا فوريًا للكائنات التي تم الكشف عنها. |
استخدام SolutionAnnotator
تستخدم جميع حلول Ultralytics الفئة المنفصلة SolutionAnnotator، الذي يمتد إلى Annotator class، ولديه الطرق التالية:
| الطريقة | نوع الإرجاع | الوصف |
|---|---|---|
draw_region() | None | يرسم منطقة باستخدام نقاط وألوان وسماكة محددة. |
queue_counts_display() | None | يعرض عدد الطوابير في المنطقة المحددة. |
display_analytics() | None | يعرض الإحصائيات العامة لإدارة مواقف السيارات. |
estimate_pose_angle() | float | لحساب الزاوية بين ثلاث نقاط في وضعية جسم. |
draw_specific_points() | None | يرسم نقاطًا رئيسية محددة على الصورة. |
plot_workout_information() | None | يرسم مربع نص مُعلّم على الصورة. |
plot_angle_and_count_and_stage() | None | يصور الزاوية وعدد الخطوات والمرحلة لمراقبة التمرين. |
plot_distance_and_line() | None | يعرض المسافة بين النقاط المركزية ويربطها بخط. |
display_objects_labels() | None | يقوم بتحديد المربعات المحيطة مع تسميات فئة الكائن. |
sweep_annotator() | None | تصور خط مسح عمودي وتسمية اختيارية. |
visioneye() | None | يرسم خرائط ويربط مراكز الكائنات بنقطة "عين" مرئية. |
adaptive_label() | None | ارسم تسمية شكل خلفية دائرية أو مستطيلة في مركز مربع إحاطة. |
العمل مع SolutionResults
باستثناء Similarity Search، ترجع كل استدعاءات Solution قائمة بـ SolutionResults كائن.
- بالنسبة لعد الكائنات، تتضمن النتائج
in_count,out_count، وclasswise_count.
نتائج الحل (SolutionResults)
import cv2
from ultralytics import solutions
im0 = cv2.imread("path/to/img")
region_points = [(20, 400), (1080, 400), (1080, 360), (20, 360)]
counter = solutions.ObjectCounter(
show=True, # display the output
region=region_points, # pass region points
model="yolo26n.pt", # model="yolo26n-obb.pt" for object counting with OBB model.
# classes=[0, 2], # count specific classes i.e. person and car with COCO pretrained model.
# tracker="botsort.yaml" # Choose trackers i.e "bytetrack.yaml"
)
results = counter(im0)
print(results.in_count) # display in_counts
print(results.out_count) # display out_counts
print(results.classwise_count) # display classwise_count
SolutionResults للكائن السمات التالية:
| السمة | النوع | الوصف |
|---|---|---|
plot_im | np.ndarray | صورة مع تراكبات مرئية مثل العد، وتأثيرات التمويه، أو تحسينات خاصة بالحل. |
in_count | int | العدد الإجمالي للكائنات التي تم اكتشاف دخولها إلى المنطقة المحددة في بث الفيديو. |
out_count | int | العدد الإجمالي للكائنات التي تم اكتشاف خروجها من المنطقة المحددة في بث الفيديو. |
classwise_count | Dict[str, int] | قاموس يسجل عدد الكائنات الداخلة/الخارجة على مستوى الفئة لإجراء تحليلات متقدمة. |
queue_count | int | عدد العناصر الموجودة حاليًا داخل قائمة انتظار محددة مسبقًا أو منطقة انتظار (مناسبة لإدارة قائمة الانتظار). |
workout_count | int | إجمالي عدد تكرارات التمرين المكتملة أثناء تتبع التمارين. |
workout_angle | float | زاوية المفصل أو الوضعية المحسوبة أثناء التمرين لتقييم الشكل. |
workout_stage | str | مرحلة التمرين الحالية أو مرحلة الحركة (مثل 'أعلى' أو 'أسفل'). |
pixels_distance | float | المسافة المستندة إلى البكسل بين كائنين أو نقطتين، على سبيل المثال، مربعات الإحاطة. (مناسب لحساب المسافة). |
available_slots | int | عدد الخانات غير المشغولة في منطقة مراقبة (مناسبة لإدارة مواقف السيارات). |
filled_slots | int | عدد الخانات المشغولة في منطقة مراقبة (مناسبة لإدارة مواقف السيارات). |
email_sent | bool | يشير إلى ما إذا تم إرسال بريد إلكتروني للإشعار أو التنبيه بنجاح (مناسب لإنذار الأمان). |
total_tracks | int | إجمالي عدد مسارات الكائنات الفريدة التي تمت ملاحظتها أثناء تحليل الفيديو. |
region_counts | Dict[str, int] | عدد الكائنات داخل مناطق أو نطاقات محددة من قبل المستخدم. |
speed_dict | Dict[str, float] | قاموس مسارات يتضمن سرعات الكائنات المحسوبة، وهو مفيد لتحليل السرعة. |
total_crop_objects | int | العدد الإجمالي لصور الكائنات التي تم اقتصاصها والتي تم إنشاؤها بواسطة حل ObjectCropper. |
speed | Dict[str, float] | قاموس يحتوي على مقاييس الأداء لتتبع ومعالجة الحلول. |
لمزيد من التفاصيل، راجع SolutionResults توثيق الفئة.
استخدام الحلول عبر CLI
معلومات الأمر
يمكن استخدام معظم الحلول مباشرةً من خلال واجهة سطر الأوامر (command-line interface)، بما في ذلك:
Count, Crop, Blur, Workout, Heatmap, Isegment, Visioneye, Speed, Queue, Analytics, Inference
بناء الجملة
yolo SOLUTIONS SOLUTION_NAME ARGS
- SOLUTIONS هي كلمة مفتاحية مطلوبة.
- SOLUTION_NAME هو واحد من:
['count', 'crop', 'blur', 'workout', 'heatmap', 'isegment', 'queue', 'speed', 'analytics', 'trackzone', 'inference', 'visioneye']. - ARGS (اختياري) هي مخصصة
arg=valueأزواج، مثلshow_in=True، لتجاوز الإعدادات الافتراضية.
yolo solutions count show=True # for object counting
yolo solutions count source="path/to/video.mp4" # specify video file path
المساهمة في حلولنا
نحن نرحب بمساهمات المجتمع! إذا كنت قد أتقنت جانبًا معينًا من Ultralytics YOLO لم تتم تغطيته بعد في حلولنا، فنحن نشجعك على مشاركة خبراتك. يعد كتابة دليل طريقة رائعة لرد الجميل للمجتمع ومساعدتنا في جعل وثائقنا أكثر شمولاً وسهولة في الاستخدام.
للبدء، يرجى قراءة دليل المساهمة الخاص بنا للحصول على إرشادات حول كيفية فتح طلب سحب (PR) 🛠️. نحن نتطلع إلى مساهماتكم!
دعونا نعمل معًا لجعل نظام Ultralytics YOLO البيئي أكثر قوة وتنوعًا 🙏!
الأسئلة الشائعة
كيف يمكنني استخدام Ultralytics YOLO لعد الكائنات في الوقت الفعلي؟
يمكن استخدام Ultralytics YOLO26 لعد الكائنات في الوقت الفعلي من خلال الاستفادة من قدراته المتقدمة في اكتشاف الكائنات. يمكنك اتباع دليلنا المفصل حول عد الكائنات لإعداد YOLO26 لتحليل تدفق الفيديو المباشر. ما عليك سوى تثبيت YOLO26، وتحميل نموذجك، ومعالجة إطارات الفيديو لعد الكائنات ديناميكيًا.
ما هي فوائد استخدام Ultralytics YOLO لأنظمة الأمان؟
يعزز Ultralytics YOLO26 أنظمة الأمان من خلال توفير اكتشاف الكائنات في الوقت الفعلي وآليات التنبيه. باستخدام YOLO26، يمكنك إنشاء نظام إنذار أمني يقوم بتشغيل التنبيهات عند اكتشاف كائنات جديدة في منطقة المراقبة. تعرف على كيفية إعداد نظام إنذار أمني باستخدام YOLO26 لمراقبة أمنية قوية.
كيف يمكن لـ Ultralytics YOLO تحسين أنظمة إدارة قائمة الانتظار؟
يمكن لـ Ultralytics YOLO26 تحسين أنظمة إدارة الطوابير بشكل كبير من خلال العد والتتبع الدقيق للأشخاص في الطوابير، مما يساعد على تقليل أوقات الانتظار وتحسين كفاءة الخدمة. اتبع دليلنا المفصل حول إدارة الطوابير لتعلم كيفية تطبيق YOLO26 لمراقبة وتحليل فعال للطوابير.
هل يمكن استخدام Ultralytics YOLO لمراقبة التدريبات؟
نعم، يمكن استخدام Ultralytics YOLO26 بفعالية لمراقبة التمارين الرياضية عن طريق تتبع وتحليل الروتينات الرياضية في الوقت الفعلي. يتيح ذلك تقييمًا دقيقًا لشكل التمرين والأداء. استكشف دليلنا حول مراقبة التمارين الرياضية لتعلم كيفية إعداد نظام مراقبة التمارين الرياضية المدعوم بالذكاء الاصطناعي باستخدام YOLO26.
كيف يساعد Ultralytics YOLO في إنشاء خرائط حرارية لـ تصور البيانات؟
يمكن لـ Ultralytics YOLO26 إنشاء خرائط حرارية لتصور كثافة البيانات عبر منطقة معينة، مما يبرز المناطق ذات النشاط أو الاهتمام العالي. هذه الميزة مفيدة بشكل خاص في فهم الأنماط والاتجاهات في مهام الرؤية الحاسوبية المختلفة. تعرف على المزيد حول إنشاء واستخدام الخرائط الحرارية مع YOLO26 لتحليل البيانات وتصورها بشكل شامل.