مراقبة التمارين الرياضية باستخدام Ultralytics YOLO26

Open Workouts Monitoring In Colab

تعمل مراقبة التمارين الرياضية من خلال تقدير الوضعية باستخدام Ultralytics YOLO26 على تحسين تقييم التمرين عن طريق تتبع معالم الجسم والمفاصل الرئيسية بدقة في الوقت الفعلي. توفر هذه التقنية ملاحظات فورية حول أداء التمرين، وتتتبع إجراءات التمرين، وتقيس مقاييس الأداء، مما يحسن جلسات التدريب للمستخدمين والمدربين على حد سواء.



Watch: How to Monitor Workout Exercises with Ultralytics YOLO | Squats, Leg Extension, Pushups and More

مزايا مراقبة التمارين الرياضية

  • الأداء الأمثل: تخصيص التمارين بناءً على بيانات المراقبة لتحقيق نتائج أفضل.
  • تحقيق الأهداف: تتبع وتعديل أهداف اللياقة البدنية لتحقيق تقدم ملموس.
  • التخصيص: خطط تمارين مخصصة بناءً على البيانات الفردية لتحقيق الفعالية.
  • الوعي الصحي: الكشف المبكر عن الأنماط التي تشير إلى مشاكل صحية أو الإفراط في التدريب.
  • قرارات مستنيرة: قرارات مبنية على البيانات لتعديل الإجراءات وتحديد أهداف واقعية.

تطبيقات العالم الحقيقي

مراقبة التمارين الرياضيةمراقبة التمارين الرياضية
YOLO push-ups counting with pose estimationYOLO pull-ups counting with pose estimation
عد تمارين الضغطعد تمارين العقلة
مراقبة التمارين الرياضية باستخدام Ultralytics YOLO
# Run a workout example
yolo solutions workout show=True

# Pass a source video
yolo solutions workout source="path/to/video.mp4"

# Use keypoints for pushups
yolo solutions workout kpts="[6, 8, 10]"

خريطة النقاط الرئيسية

YOLO pose estimation keypoints order diagram

وسائط AIGym

إليك جدول يحتوي على وسائط AIGym:

المعاملالنوعالافتراضيالوصف
modelstrNoneمسار إلى ملف نموذج Ultralytics YOLO.
up_anglefloat145.0عتبة الزاوية لوضعية 'الأعلى'.
down_angleint90عتبة الزاوية لوضعية 'الأسفل'.
kptslist[int]'[6, 8, 10]'قائمة من ثلاثة مؤشرات للنقاط الرئيسية المستخدمة لمراقبة التمارين. تتوافق هذه النقاط الرئيسية مع مفاصل الجسم أو أجزائه، مثل الكتفين والمرفقين والمعصمين، لتمارين مثل الضغط، والعقلة، والقرفصاء، وتمارين البطن.

يدعم حل AIGym أيضًا مجموعة من وسائط تتبع الكائنات:

المعاملالنوعالافتراضيالوصف
trackerstr'botsort.yaml'يحدد خوارزمية التتبع المراد استخدامها، على سبيل المثال، bytetrack.yaml أو botsort.yaml.
conffloat0.1يضبط عتبة الثقة للكشوف؛ القيم المنخفضة تسمح بتتبع المزيد من الكائنات ولكنها قد تتضمن نتائج إيجابية كاذبة.
ioufloat0.7يضبط عتبة التقاطع فوق الاتحاد (IoU) لتصفية الكشوف المتداخلة.
classeslistNoneيصفي النتائج حسب فهرس الفئة. على سبيل المثال، classes=[0, 2, 3] يتتبع فقط الفئات المحددة.
verboseboolTrueيتحكم في عرض نتائج التتبع، مما يوفر مخرجات مرئية للكائنات المتتبعة.
devicestrNoneيحدد الجهاز للاستنتاج (على سبيل المثال، cpu، أو cuda:0 أو 0). يسمح للمستخدمين بالاختيار بين CPU، أو GPU محدد، أو أجهزة حوسبة أخرى لتنفيذ النموذج.

بالإضافة إلى ذلك، يمكن تطبيق إعدادات التصور التالية:

المعاملالنوعالافتراضيالوصف
showboolFalseإذا كانت القيمة True، يتم عرض الصور أو مقاطع الفيديو المشروحة في نافذة. مفيد للحصول على تعليقات مرئية فورية أثناء التطوير أو الاختبار.
line_widthint or NoneNoneيحدد عرض خط صناديق الإحاطة. إذا كانت القيمة None، يتم تعديل عرض الخط تلقائياً بناءً على حجم الصورة. يوفر تخصيصاً مرئياً للوضوح.
show_confboolTrueيعرض درجة الثقة لكل اكتشاف بجانب التسمية. يعطي نظرة ثاقبة حول يقين النموذج لكل اكتشاف.
show_labelsboolTrueيعرض تسميات لكل اكتشاف في المخرجات المرئية. يوفر فهماً فورياً للكائنات المكتشفة.

الأسئلة الشائعة

كيف يمكنني مراقبة تماريني الرياضية باستخدام Ultralytics YOLO26؟

لمراقبة تمارينك الرياضية باستخدام Ultralytics YOLO26، يمكنك الاستفادة من إمكانيات تقدير الوضعية لتتبع وتحليل معالم الجسم والمفاصل الرئيسية في الوقت الفعلي. يتيح لك ذلك الحصول على ملاحظات فورية حول أداء التمرين، وعد التكرارات، وقياس مقاييس الأداء. يمكنك البدء باستخدام كود المثال المقدم لتمارين الضغط، أو العقلة، أو تمارين البطن كما هو موضح:

import cv2

from ultralytics import solutions

cap = cv2.VideoCapture("path/to/video.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))

gym = solutions.AIGym(
    line_width=2,
    show=True,
    kpts=[6, 8, 10],
)

while cap.isOpened():
    success, im0 = cap.read()
    if not success:
        print("Video frame is empty or processing is complete.")
        break
    results = gym(im0)

cv2.destroyAllWindows()

لمزيد من التخصيص والإعدادات، يمكنك الرجوع إلى قسم AIGym في الوثائق.

ما هي فوائد استخدام Ultralytics YOLO26 لمراقبة التمارين الرياضية؟

يوفر استخدام Ultralytics YOLO26 لمراقبة التمارين الرياضية العديد من الفوائد الرئيسية:

  • الأداء الأمثل: من خلال تخصيص التمارين بناءً على بيانات المراقبة، يمكنك تحقيق نتائج أفضل.
  • تحقيق الأهداف: تتبع وتعديل أهداف اللياقة البدنية بسهولة لتحقيق تقدم ملموس.
  • التخصيص: احصل على خطط تمارين مخصصة بناءً على بياناتك الفردية لتحقيق الفعالية المثلى.
  • الوعي الصحي: الكشف المبكر عن الأنماط التي تشير إلى مشاكل صحية محتملة أو الإفراط في التدريب.
  • قرارات مستنيرة: اتخاذ قرارات مبنية على البيانات لتعديل الإجراءات وتحديد أهداف واقعية.

يمكنك مشاهدة عرض توضيحي على يوتيوب لرؤية هذه الفوائد أثناء العمل.

ما مدى دقة Ultralytics YOLO26 في اكتشاف وتتبع التمارين؟

يتميز Ultralytics YOLO26 بدقة عالية في اكتشاف وتتبع التمارين بفضل إمكانياته المتطورة في تقدير الوضعية. يمكنه تتبع معالم الجسم والمفاصل الرئيسية بدقة، مما يوفر ملاحظات في الوقت الفعلي حول أداء التمرين ومقاييس الأداء. تضمن الأوزان المدربة مسبقًا والبنية القوية للنموذج دقة وموثوقية عالية. للحصول على أمثلة من العالم الحقيقي، تحقق من قسم التطبيقات الواقعية في الوثائق، والذي يعرض عد تمارين الضغط والعقلة.

هل يمكنني استخدام Ultralytics YOLO26 لإجراءات التمارين المخصصة؟

نعم، يمكن تكييف Ultralytics YOLO26 لإجراءات التمارين المخصصة. تدعم فئة AIGym أنواعًا مختلفة من الوضعيات مثل pushup وpullup وabworkout. يمكنك تحديد النقاط الرئيسية والزوايا لاكتشاف تمارين محددة. إليك مثال للإعداد:

from ultralytics import solutions

gym = solutions.AIGym(
    line_width=2,
    show=True,
    kpts=[6, 8, 10],  # For pushups - can be customized for other exercises
)

لمزيد من التفاصيل حول تعيين الوسائط، راجع قسم وسائط AIGym. تتيح هذه المرونة مراقبة مختلف التمارين وتخصيص الإجراءات بناءً على أهداف اللياقة البدنية الخاصة بك.

كيف يمكنني حفظ مخرجات مراقبة التمارين الرياضية باستخدام Ultralytics YOLO26؟

لحفظ مخرجات مراقبة التمارين، يمكنك تعديل الكود ليشمل كاتب فيديو يحفظ الإطارات المعالجة. إليك مثال على ذلك:

import cv2

from ultralytics import solutions

cap = cv2.VideoCapture("path/to/video.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 = cv2.VideoWriter("workouts.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))

gym = solutions.AIGym(
    line_width=2,
    show=True,
    kpts=[6, 8, 10],
)

while cap.isOpened():
    success, im0 = cap.read()
    if not success:
        print("Video frame is empty or processing is complete.")
        break
    results = gym(im0)
    video_writer.write(results.plot_im)

cap.release()
video_writer.release()
cv2.destroyAllWindows()

يقوم هذا الإعداد بكتابة الفيديو المراقب في ملف مخرجات، مما يتيح لك مراجعة أداء تمرينك لاحقًا أو مشاركته مع المدربين للحصول على ملاحظات إضافية.

التعليقات