LeRobot documentation
الكاميرات
الكاميرات
تُوفّر الكاميرات ملاحظات الصور التي تراها السياسة. كل واجهة خلفية — OpenCV وIntel RealSense وReachy 2 — تنفّذ واجهة Camera، لذا فإن تبديل العتاد لا يغيّر الكود الذي يقرأ الإطارات.
راجع دليل الكاميرات لاختيار الكاميرا وإعدادها، وراجع الكاميرات وأجهزة الاستشعار من أطراف ثالثة للأجهزة خارج المجموعة الأساسية.
الكاميرا
فئة lerobot.cameras.Camera
< source >( config: CameraConfig )
الفئة الأساسية لتنفيذات الكاميرا.
يعرّف واجهة قياسية لعمليات الكاميرا عبر مختلف الخلفيات. يجب على الفئات الفرعية تنفيذ جميع الطرق المجردة.
يدير خصائص الكاميرا الأساسية (معدل الإطارات، الدقة) والعمليات الأساسية:
- الاتصال/الانقطاع
- التقاط الإطارات (مزامنة/غير مزامنة/أحدث)
اتصال
< source >( warmup: bool = True )
قم بإنشاء اتصال بالكاميرا.
افصل عن الكاميرا وأطلق الموارد.
التقاط إطار واحد من الكاميرا وإعادته بشكل متزامن.
هذا استدعاء حاسم (Blocking) سيبقى في انتظار العتاد وحزمة تطوير البرمجيات الخاصة به.
async_read
< source >( timeout_ms: float = Ellipsis ) → np.ndarray
إرجاع أحدث إطار جديد.
تسترجع هذه الطريقة أحدث إطار تم التقاطه بواسطة الخيط الخلفي. إذا كان إطار جديد متاح بالفعل في المخزن المؤقت (تم التقاطه منذ آخر استدعاء)، فإنها تعيده فورًا.
يتوقف حتى timeout_ms فقط إذا كان المخزن المؤقت فارغاً أو إذا كان الإطار الأحدث قد استُهلك بالفعل بواسطة استدعاء async_read سابق.
في الأساس، تُعيد هذه الطريقة أحدث إطار غير مستهلك، مع الانتظار عند الحاجة إلى وصول إطار جديد ضمن مهلة الوقت المحددة.
طريقة الاستخدام:
- مثالي لحلقات التحكم التي تريد فيها ضمان أن كل إطار مُعالَج حديث، مما يزامن حلقتك بفعالية مع معدل إطارات الكاميرا.
- تشمل أسباب انتهاء المهلة عادةً: معدل إطارات كاميرا منخفض جداً، أو حمل معالجة ثقيل، أو إذا كانت الكاميرا غير متصلة.
find_cameras
< source >( ) → List[Dict[str, Any]]
يعيد
List[Dict[str, Any]]
قائمة من القواميس، حيث يحتوي كل قاموس على معلومات عن كاميرا مكتشفة.
يكشف عن الكاميرات المتاحة المتصلة بالنظام.
CameraConfig
فئة lerobot.cameras.CameraConfig
< source >( fps: int | None = Nonewidth: int | None = Noneheight: int | None = None )