حساب المسافة باستخدام Ultralytics YOLO11
ما هو حساب المسافة؟
Measuring the gap between two objects is known as distance calculation within a specified space. In the case of Ultralytics YOLO11, the bounding box centroid is employed to calculate the distance for bounding boxes highlighted by the user.
شاهد: حساب المسافة باستخدام Ultralytics YOLO11
صور
حساب المسافة باستخدام Ultralytics YOLO11 |
---|
مزايا حساب المسافة؟
- Localization Precision: Enhances accurate spatial positioning in computer vision tasks.
- Size Estimation: Allows estimation of object size for better contextual understanding.
حساب المسافة
- انقر فوق أي مربعين محيطين مع النقر بالماوس الأيسر لحساب المسافة
مثال على حساب المسافة باستخدام YOLO11
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("Path/to/video/file.mp4")
assert cap.isOpened(), "Error reading video file"
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
# Video writer
video_writer = cv2.VideoWriter("distance_calculation.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))
# Init distance-calculation obj
distance = solutions.DistanceCalculation(model="yolo11n.pt", show=True)
# Process video
while cap.isOpened():
success, im0 = cap.read()
if not success:
print("Video frame is empty or video processing has been successfully completed.")
break
im0 = distance.calculate(im0)
video_writer.write(im0)
cap.release()
video_writer.release()
cv2.destroyAllWindows()
ملاحظه
- سيؤدي النقر بزر الماوس الأيمن إلى حذف جميع النقاط المرسومة
- يمكن استخدام النقر بزر الماوس الأيسر لرسم النقاط
المسافة تقديرية
Distance will be an estimate and may not be fully accurate, as it is calculated using 2-dimensional data, which lacks information about the object's depth.
الحجج DistanceCalculation()
Name | Type | Default | وصف |
---|---|---|---|
model | str | None | المسار إلى Ultralytics YOLO ملف نموذج |
line_width | int | 2 | سمك الخط للمربعات المحيطة. |
show | bool | False | ضع علامة للتحكم في ما إذا كنت تريد عرض دفق الفيديو أم لا. |
الحجج model.track
جدال | نوع | افتراضي | وصف |
---|---|---|---|
source | str | None | يحدد الدليل المصدر للصور أو مقاطع الفيديو. يدعم مسارات الملفات وعناوين URL. |
persist | bool | False | تمكين التتبع المستمر للكائنات بين الإطارات، والحفاظ على المعرفات عبر تسلسلات الفيديو. |
tracker | str | botsort.yaml | يحدد خوارزمية التتبع المراد استخدامها، على سبيل المثال, bytetrack.yaml أو botsort.yaml . |
conf | float | 0.3 | تعيين عتبة الثقة للاكتشافات؛ تسمح القيم المنخفضة بتتبع المزيد من الكائنات ولكنها قد تتضمن نتائج إيجابية كاذبة. |
iou | float | 0.5 | يضبط عتبة التقاطع على الاتحاد (IoU) لتصفية الاكتشافات المتداخلة. |
classes | list | None | تصفية النتائج حسب فهرس الفئة. على سبيل المثال, classes=[0, 2, 3] يتتبع الفئات المحددة فقط. |
verbose | bool | True | يتحكم في عرض نتائج التتبع، مما يوفر إخراجًا مرئيًا للأجسام المتعقبة. |
الأسئلة المتداولة
كيف يمكنني حساب المسافات بين الأجسام باستخدام Ultralytics YOLO11؟
لحساب المسافات بين الأجسام باستخدام Ultralytics يولو 11فإنك تحتاج إلى تحديد مركزيات المربع المحدود للأجسام المكتشفة. تتضمن هذه العملية تهيئة DistanceCalculation
فئة من Ultralytics' solutions
واستخدام مخرجات تتبع النموذج لحساب المسافات. يمكنك الرجوع إلى التنفيذ في مثال لحساب المسافة.
ما هي مزايا استخدام حساب المسافة مع Ultralytics YOLO11؟
يوفر استخدام حساب المسافة مع Ultralytics YOLO11 العديد من المزايا:
- دقة تحديد المواقع: يوفر تحديداً دقيقاً للموقع المكاني للأجسام.
- تقدير الحجم: يساعد في تقدير الأحجام المادية، مما يساهم في فهم سياقي أفضل.
- فهم المشهد: يعزز فهم المشهد ثلاثي الأبعاد، مما يساعد على تحسين عملية اتخاذ القرار في تطبيقات مثل القيادة الذاتية والمراقبة.
هل يمكنني إجراء حساب المسافة في تدفقات الفيديو في الوقت الفعلي باستخدام Ultralytics YOLO11؟
Yes, you can perform distance calculation in real-time video streams with Ultralytics YOLO11. The process involves capturing video frames using أوبن سي في, running YOLO11 اكتشاف الأجسام, and using the DistanceCalculation
لحساب المسافات بين الأجسام في الإطارات المتتالية. للحصول على تطبيق مفصّل، راجع مثال على دفق الفيديو.
كيف يمكنني حذف النقاط المرسومة أثناء حساب المسافة باستخدام Ultralytics YOLO11؟
To delete points drawn during distance calculation with Ultralytics YOLO11, you can use a right mouse click. This action will clear all the points you have drawn. For more details, refer to the note section under the distance calculation example.
ما هي الوسيطات الرئيسية لتهيئة فئة DistanceCalculation في Ultralytics YOLO11؟
الوسيطات الرئيسية لتهيئة DistanceCalculation
في Ultralytics YOLO11 ما يلي:
model
: مسار الملف النموذجي.show
: علامة للإشارة إلى ما إذا كان ينبغي عرض دفق الفيديو.line_width
: سمك المربع المحيط والخطوط المرسومة على الصورة.
للاطلاع على قائمة شاملة والقيم الافتراضية، راجع وسيطات DistanceCalculation.