نريد أن
نوضح بشكل عام عن الإنجازات الأولى مع التعلم العميق في الرسوم المتحركة
للشخصيات لبرنامج
Cascadeur الخاص بنا.
أثناء العمل على
Shadow Fight 3 ، جمعنا الكثير من الرسوم المتحركة القتالية - حوالي 1100 حركة بمتوسط مدة حوالي 4 ثوان. بدا لنا منذ زمن طويل أن هذا قد يكون مجموعة بيانات جيدة لتدريب نوع من الشبكات العصبية.
بمجرد أن لاحظنا أنه عندما يقوم رسامو الرسوم المتحركة بأول رسم تخطيطي للأفكار على الورق ، فإنهم يحتاجون فقط إلى رسم رجل يلتصق حرفيًا لتخيل صورة الشخصية. لقد اعتقدنا أنه نظرًا لأن رسام الرسوم المتحركة ذي الخبرة يمكنه ضبط وضع جيد في نمط بسيط ، فمن الممكن أن تتمكن الشبكة العصبية من التعامل معه. من هذه الملاحظة ، ولدت فكرة بسيطة: لنأخذ سوى 6 نقاط رئيسية من كل وضع - الرسغين والكاحلين والحوض وقاعدة الرقبة. إذا كانت الشبكة العصبية تعرف فقط مواقف هذه النقاط ، هل يمكنها التنبؤ بباقي النقاط - موضع الـ 37 نقطة المتبقية من الشخصية؟
كيفية ترتيب عملية التعلم ، كان الأمر واضحًا منذ البداية: عند المدخل ، تتلقى الشبكة وظائف 6 نقاط من نقطة محددة ، وعند الإخراج تعطي مواضع الـ 37 نقطة المتبقية ، ونقارنها بالمواقع التي كانت في الموضع الأولي. في وظيفة التقييم ، يمكنك استخدام طريقة المربعات الصغرى للمسافات بين المواضع المتوقعة للنقاط والمصدر.
بالنسبة إلى مجموعة البيانات التدريبية ، كان لدينا جميع حركات الشخصيات من Shadow Fight 3. أخذنا يطرح من كل إطار ، وحصلنا على حوالي 115000 يطرح. لكن هذه المجموعة كانت محددة - كانت الشخصية تقابل دائمًا على طول المحور X ، وكانت الساق اليسرى دائمًا في مقدمة الحركة. لحل هذه المشكلة ، قمنا بتوسيع مجموعة البيانات بشكل مصطنع عن طريق إنشاء أشكال مرآة ، وأيضًا تدوير كل نقطة في الفضاء بشكل عشوائي. كما سمح لنا بزيادة مجموعة البيانات إلى مليوني يطرح. استخدمنا 95٪ من مجموعة البيانات الخاصة بنا للتدريب على الشبكة و 5٪ من أجل تحديد المعايير والاختبار.
لقد اتخذنا بنية شبكة عصبية بسيطة إلى حد ما - شبكة من خمسة طبقات متصلة بالكامل مع وظيفة التنشيط وطريقة التهيئة من
الشبكات العصبية ذاتية التطبيع . في الطبقة الأخيرة ، لا يتم استخدام التنشيط. بعد 3 إحداثيات لكل عقدة ، نحصل على طبقة إدخال من 6 * 3 عناصر وطبقة إخراج من 37 * 3 عناصر. بحثنا عن الهيكل الأمثل للطبقات المخفية واستقرنا على بنية مكونة من خمسة طبقات مع عدد الخلايا العصبية من 300 ، 400 ، 300 ، 200 على كل طبقة مخفية ، ومع ذلك ، فإن الشبكات ذات الطبقات المخفية أقل أدت أيضًا إلى نتائج جيدة.
كان تنظيم L2 لمعلمات الشبكة مفيدًا أيضًا ، فقد جعل التنبؤات أكثر سلاسة وأكثر استمرارية.
تتنبأ الشبكة العصبية بمثل هذه المعلمات بموضع النقاط بمتوسط خطأ يبلغ 3.5 سم ، وهذا خطأ كبير للغاية ، لكن يجب مراعاة تفاصيل المشكلة. بالنسبة لمجموعة واحدة من قيم الإدخال ، قد يكون هناك العديد من قيم الإخراج المحتملة. لذلك ، فإن الشبكة العصبية تعلمت في النهاية إصدار أكثر التوقعات احتمالا. ومع ذلك ، عندما زاد عدد نقاط الإدخال إلى 16 ، انخفض الخطأ بمقدار النصف ، مما أسفر في الواقع عن تنبؤ دقيق للغاية للوضع.
ولكن في الوقت نفسه ، لم تتمكن الشبكة العصبية من إعطاء وضع صحيح تمامًا ، مع الحفاظ على أطوال جميع العظام والمفاصل الصحيحة. لذلك ، نطلق بالإضافة إلى ذلك عملية التحسين التي تحاذي جميع الأجسام الصلبة والمفاصل في نموذجنا المادي.
في الممارسة العملية ، كانت النتائج مقنعة للغاية - يمكنك مشاهدتها في الفيديو الخاص بنا. ولكن هناك أيضًا خصوصية نظرًا لحقيقة أن مجموعة البيانات التدريبية عبارة عن رسوم متحركة قتالية من لعبة قتال بأسلحة. على سبيل المثال ، يبدو أن هناك شخصية تفترض أنه يستدير بكتف واحد باتجاه العدو ، كما في موقف القتال ، وبالتالي يدير قدميه ورأسه. وعندما تمد يده ، لا تنقلب الفرشاة كما لو كانت قد أصيبت بقبضة ، ولكن كما لو كانت ضربت بالسيف.

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

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