لماذا يعد جمع البيانات باليدين أكثر صعوبة؟

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

هذا الاقتران له أثران عمليان. أولاً، أنت بحاجة إلى المزيد من العروض التوضيحية - 100 بدلاً من 50 - لأن المهام اليدوية بها تباين أعلى وتحتاج السياسة إلى المزيد من الأمثلة للتعرف على هيكل التنسيق. ثانيًا، أنت بحاجة إلى اتساق أكثر صرامة لكل عرض توضيحي. عرض توضيحي بذراع واحدة يتدرب بنسبة 80% بشكل جيد إلى حد معقول. إن العرض التوضيحي ثنائي اليد، حيث تكون إحدى الذراعين متسقة والأخرى مختلفة، لا يعلم السياسة أي شيء مفيد فيما يتعلق بتوقيت التنسيق.

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

تنسيق مجموعة البيانات LeRobot Bimanual

يعمل تكامل DK1 مع LeRobot على توسيع التنسيق القياسي للذراع الواحد مع مصفوفات الحالة المشتركة المزدوجة. تحتوي كل خطوة زمنية في مجموعة البيانات على:

# Bimanual dataset observation keys per timestep: Observation.joint_states.left # shape: (6,) — left follower joint angles in radians Observation.joint_states.right # shape: (6,) — right follower joint angles in radians Observer.gripper.left # shape: (1,) — left gripper position [0=open, 1=closed] Observer.gripper.right # shape: (1,) — right gripper position Observation.images.workspace # shape: (H, W, 3) — workspace overhead/front camera Observation.images.wrist # shape: (H, W, 3) — primary wrist camera action.joint_states.left # shape: (6,) — target left joint angles action.joint_states.right # shape: (6,) — target right joint angles action.gripper.left # shape: (1,) action.gripper.right # shape: (1,)

الفرق الرئيسي عن الذراع الواحدة: مساحة الحركة هي 14 بعدًا (6+6 مفاصل + 2 قابض). يعالج ACT هذا الأمر بشكل أصلي - حيث تحدد بُعد الإجراء في تكوين التدريب ولا يلزم إجراء أي تغييرات أخرى.

تسجيل سير العمل

المصدر ~/dk1-env/bin/activate # Start a recording session — 100 episodes for the cube handoff task بايثون -m lerobot.scripts.record \ --robot-path ~/dk1-config.yaml \ --الروبوت من نوع dk1_bimanual \ --إطارًا في الثانية 50 \ --root ~/dk1-datasets \ --repo-id cube-handoff-v1 \ --عدد الحلقات 100 \ --وقت الإحماء 3 \ --زمن الحلقة 30 \ --إعادة ضبط الوقت-s 5 # --warmup-time-s: time after pressing record before capture starts (use this to position the cube) # --episode-time-s: max demo length — cube handoff should complete in under 20s; 30s gives buffer # --reset-time-s: time between episodes to return arms to home and reposition the cube

قم بتشغيل 10-15 عرضًا تجريبيًا قبل بدء جلسة التسجيل لتسخين ذاكرتك الحركية للمهمة. ستكون أول 5 إلى 10 عروض توضيحية مسجلة هي الأسوأ بالنسبة لك – وهذا متوقع. ولا تتوقف عن مراجعتها أثناء الجلسة؛ قم بمراجعة العروض التوضيحية السيئة وإعدامها بعد تسجيل 100 نسخة كاملة.

قائمة التحقق من الجودة للبيانات الثنائية

قم بمراجعة كل عرض توضيحي بعد التسجيل باستخدام عارض إعادة التشغيل الخاص بـ LeRobot. تجاهل أي عرض توضيحي يفشل في اثنين أو أكثر من هذه المعايير:

مزامنة الذراع عند التسليم يجب أن يكون كلا الذراعين على بعد 3 سم من نقطة التسليم المقصودة في وقت واحد. عمليات التسليم غير المتزامنة حيث تنتظر إحدى الذراعين الأخرى تعلم السياسة بالتوقف مؤقتًا - وهو ما يتم نقله بشكل سيئ.
موقف بداية ثابت يجب أن يبدأ المكعب على مسافة 2 سم من نفس الموضع لكل عرض توضيحي. استخدم علامات الشريط من الوحدة 1. إن التباين في موضع البداية يجبر السياسة على التعميم قبل أن تتعلم المهمة الأساسية.
فهم نظيف – كلا الذراعين يجب أن يحقق كل ذراع قبضة مستقرة قبل الانتقال إلى المرحلة التالية. يؤدي الانزلاق في منتصف عملية النقل إلى إنشاء مسار يستحيل على السياسة تكراره بشكل موثوق.
العودة إلى وضعية المنزل يجب أن يعود كلا الذراعين بشكل نظيف إلى وضعية المنزل في نهاية كل عرض توضيحي. تُنشئ العروض التوضيحية التي تنتهي بالحركة المتوسطة مجموعة بيانات تكون حدود الحلقة فيها غامضة.
تغطية كاميرا مساحة العمل يجب أن تكون لحظة التسليم مرئية في إطار كاميرا مساحة العمل. إذا كانت أجسام الروبوت تحجب الرؤية، فاضبط زاوية الكاميرا قبل المتابعة.
توقيت متسق يجب أن تختلف مدة الحلقة بما لا يزيد عن ±5 ثوانٍ عبر العروض التوضيحية. يشير التباين الكبير في التوقيت إلى التنفيذ غير المتسق وينتج مجموعة بيانات ذات إنتروبيا عالية في مساحة العمل.
حجم مجموعة البيانات المستهدفة: 100 عرض توضيحي هو الحد الأدنى الموصى به لتدريب ACT اليدوي. تشير نتائج الأبحاث إلى أن المهام اليدوية تتطلب ما يقرب من 2 × بيانات المهام ذات الذراع الواحدة المماثلة لأن هيكل التنسيق المشترك أكثر تعقيدًا ومساحة العمل أكبر. إذا كان معدل نجاحك بعد التدريب على الوحدة 5 أقل من 40%، فإن جمع 50 عرضًا تجريبيًا مستهدفًا آخر هو أول شيء يجب تجربته.

اكتملت الوحدة الرابعة عندما...

لديك 100 عرض توضيحي مسجل بتنسيق LeRobot على ~/dk1-datasets/cube-handoff-v1/. بعد المراجعة والاختيار، اجتاز ما لا يقل عن 90 عرضًا تجريبيًا قائمة فحص الجودة. كلا صفيفات الحالة المشتركة موجودة عند 50 هرتز لكل حلقة. كلا موجزي الكاميرا موجودان ويعرضان تسلسل المهام الكامل بما في ذلك لحظة التسليم. لقد ركضت python -m lerobot.scripts.visualize_dataset --repo-id cube-handoff-v1 وأكد أن بنية مجموعة البيانات صالحة.