في السنوات الأخيرة ، أصبح الذكاء الاصطناعي شائعًا بشكل متزايد. فقط اسأل وسيخبرك Siri بنتيجة مباراة كرة القدم التي فاتتك الليلة الماضية. ستخبرك توصيات Spotify بما يجب إضافته إلى مكتبة الموسيقى الخاصة بك ، وستحاول Amazon التنبؤ بالمنتج الذي ستشتريه بعد ذلك حتى عندما لا تعرفه بعد.
كما أنه لم يمر بصناعة الألعاب. بينما تقارن بيئة الألعاب الرسومات التي تم إصدارها على جهاز الكمبيوتر Death Stranding مع تقنية DLSS وبدونها ، أصبح معروفًا في اليوم الآخر أن معالجات NVIDIA Ampere ستستخدم DLSS 3.0. ومع ذلك ، ستعمل مع أي لعبة مع TAA (Temporal Anti-Aliasing) و Game Ready driver. هذا يعني أن المطورين سيحتاجون إلى ضبط التكنولوجيا لألعابهم - ومع ذلك ، ستكون هذه العملية أسهل بكثير مما هي عليه الآن.
في هذه المقالة ، سنلقي نظرة على كيفية استخدام NVIDIA للتعلم الآلي لتحسين تجربة الألعاب لدينا.
ما هو DLSS؟
تتزايد جودة الرسومات في الألعاب الحديثة ، ومعها يتزايد التعقيد الحسابي للعمليات التي يتم إجراؤها. نحن مدينون بهذا لتتبع الأشعة ، الذي يحاكي الإضاءة الحقيقية في الوقت الفعلي ، وبالتالي يترك الانعكاسات المخبوزة مسبقًا بقايا من الماضي. يرجع التعقيد الحسابي لتتبع الأشعة إلى حقيقة أن دقة الألعاب الحديثة تتجاوز 1080p القديم الجيد. ومن هنا تأتي الحاجة إلى تسريع العمليات الحسابية أثناء العرض.
Deep Learning Super Sampling (DLSS) عبارة عن تقنية NVIDIA تستخدم التعلم الآلي العميق لتحسين معدلات الإطارات في الألعاب كثيفة الرسومات. مع DLSS ، يمكن للاعبين استخدام إعدادات ودقة أعلى دون القلق بشأن استقرار الإطارات في الثانية.
على وجه الخصوص ، يفي DLSS بمهمة الدقة الفائقة. باستخدامه ، يمكن ترقية صورة بدقة 1080 بكسل ، على سبيل المثال ، إلى 4K مع الحد الأدنى من فقدان الجودة. هذا يزيل الحاجة إلى لعب اللعبة بدقة 4K (وبالتالي ربما يذوب جهاز الكمبيوتر الخاص بك). ستظل الدقة 1080 بكسل ، مما يسمح بمعدلات إطارات أعلى ، ولكن مع ترقية DLSS ، لن تلاحظ اختلافًا عن 4K.
بنية DLSS 2.0
بشكل أساسي ، DLSS عبارة عن شبكة عصبية مدربة على حواسيب NVIDIA العملاقة. تتم مقارنة إخراج هذه الشبكة العصبية بصورة مرجعية 16 كيلو بايت ، ويتم إرجاع الخطأ بينهما إلى الشبكة من خلال حلقة التغذية الراجعة. لتجنب مشكلات السرعة ، تستخدم DLSS Tensor Cores ، والتي تعد العمود الفقري لمعالجات RTX 2000 (و RTX 3000 المستقبلية). يمكن أن يؤدي ذلك إلى تسريع عمليات الموتر بشكل كبير وتحسين كفاءة تدريب الذكاء الاصطناعي والمهام المتعلقة بالحوسبة عالية الأداء.
تطور DLSS: من 1.0 إلى 2.0
تم تدريب DLSS 1.0 لكل لعبة على حدة ، وبالتالي استغرق الأمر وقتًا طويلاً للغاية للدراسة. كما أنها لا تدعم 4 أضعاف اختزال ، على سبيل المثال ، من 1080 بكسل إلى 4K ، ولديها عدد من العيوب الأخرى في جودة الصورة التي لا تستحق تحسين معدل الإطارات.
DLSS 2.0 هي خوارزمية أكثر عمومية ، خالية من قيود التدريب والاختزال ، بالإضافة إلى انخفاض زمن انتقال المخرجات بسبب استخدام نوى الموتر: فهي في حدود 1.5 مللي ثانية عند 4K على RTX 2080ti - وفي بعض الحالات توفر نتيجة أفضل من الأصل صورة. صور DLSS نهائية بدقة 1080 بكسل
في DLSS 1.0 ، يمكنك الخروج من 720 بكسل إلى 1080 بكسل كحد أقصى ، بينما يمكن ترقية DLSS 2.0 إلى 1080 بكسل حتى عند 540 بكسل. كما ترى في المثال ، تبدو الصورة بدقة 540 بكسل باهتة تمامًا. في الوقت نفسه ، تبين أن النتيجة مع DLSS 2.0 أفضل من DLSS 1.0 ، وحتى أفضل قليلاً من الصورة الأصلية. أي أن DLSS 2.0 تتعامل مع ملء البكسل بكفاءة أكبر من DLSS 1.0 ، على الرغم من أن الأخير يحتاج إلى إعادة قياس اختلاف أصغر في الدقة.
توفر قدرة DLSS 2.0 على قياس الصور بدقة 540 بكسل ، جنبًا إلى جنب مع زمن الوصول المنخفض للطريقة نفسها ، زيادة كبيرة في الأداء مقارنة بسابقتها.
عرض الوقت باستخدام DLSS 2.0 وبدونه (بالمللي ثانية)
تعرف على المزيد حول كيفية عمل DLSS
عند تقديم هندسة المشهد في الألعاب (على سبيل المثال ، في مثلث) ، يحدد عدد البكسل المستخدم (أو معدل أخذ العينات - قناع البكسل الفرعي) كيف ستبدو الصورة.
عند استخدام شبكة عينات 4x4 لتصيير المثلث ، يمكننا أن نرى أن النتيجة سيئة.
بتكبير شبكة أخذ العينات بمقدار 4 مرات - حتى 8x8 - تبدو الصورة أشبه بالمثلث المقصود. هذا هو جوهر DLSS: تحويل صورة منخفضة الدقة إلى صورة أعلى.
جوهر DLSS
ونتيجة لذلك ، وبنفس تكلفة العرض كصورة منخفضة الجودة ، تحصل على صورة ذات دقة أعلى.
الغرض من DLSS
هذا في الواقع لا يحل مشكلة الدقة الفائقة الجديدة.
دعنا نلقي نظرة سريعة على كيفية تطور تقنيات تحسين الدقة بمساعدة الذكاء الاصطناعي.
الدقة الفائقة لصورة واحدة
تسمح هذه التقنية بالحصول على صور عالية الدقة من الصورة السفلية باستخدام تقنيات الاستيفاء مثل مرشحات bilinear و bicubic و Lanczos. يمكنك أيضًا تنفيذه بمساعدة الشبكات العصبية العميقة ، ولكن بعد ذلك تنشأ مشكلة تشويه وحدات البكسل الجديدة التي تم الحصول عليها من بيانات التدريب. هذا يجعل الصورة تبدو قابلة للتصديق ، لكنها ليست مشابهة جدًا للصورة الأصلية. تنتج هذه الطريقة صورة سلسة للغاية وليست مفصلة وغير مستقرة بمرور الوقت ، مما يؤدي إلى عدم تناسق الإطارات ووميضها.
الدقة الفائقة للصورة المفردة
دعنا نقارن بعض نتائج تقنيات الدقة الفائقة للصورة المفردة مع ما يقدمه DLSS 2.0. دقة الهدف - 1080 بكسل
من الواضح أن DLSS 2.0 أفضل من الإقحام bicubic و ESRGAN ، وهي بنية شبكة عصبية تستخدم شبكة خصومة مولدة لتحقيق دقة فائقة. نتيجة لذلك ، تبدو السرخس في حالة DLSS 2.0 أكثر تفصيلاً مما كانت عليه في الصورة الأصلية.
دقة فائقة متعددة الإطارات
تستخدم هذه الطريقة عدة صور منخفضة الدقة لإنتاج صورة عالية الدقة. يساعد على استعادة التفاصيل بشكل أفضل من النهج السابق. تم تصميمه بشكل أساسي لتصوير الفيديو والتصوير المتواصل ، وبالتالي لا يستخدم معلومات خاصة بالعرض. أحد الأمثلة على استخدامه هو محاذاة الإطار باستخدام التدفق الضوئي بدلاً من متجهات الحركة الهندسية. في هذه الحالة ، تكون العمليات الحسابية أرخص وتكون النتائج أكثر دقة. يبدو هذا النهج واعدًا أكثر من السابق ، ويأخذنا إلى التقنية التالية.
أخذ العينات الفائقة الزمانية المكانية
تستخدم هذه الطريقة إطارات متعددة لأخذ عينات فائقة من الصور.
لدينا الإطار الحالي. لنفترض أن السابق يشبهه. باستخدام معدل أخذ عينات أقل ، يمكننا زيادة العدد الإجمالي للعينات اللازمة لإعادة بناء الصورة.
الرسم البياني لأخذ العينات الفائقة الزمانية ـ المكانية
المشكلة هي أنه في الألعاب ، كل شيء يتحرك باستمرار. لذلك ، لتصحيح تاريخ الإطار ، تُجبر طريقة أخذ العينات الفائقة هذه على إجراء بحث إرشادي ، على سبيل المثال ، وفقًا لمبدأ Neighbor Clamping. تساهم هذه الأساليب التجريبية في التمويه ، وعدم الاستقرار الزمني ، والتموج في النسيج ، والتأخر ، والظلال. التأثيرات الضائرة من Neighbor Clamping وميض مؤقت وتموج في النسيج في الصور باستخدام Neighbor Clamping
DLSS 2.0: Deep Learning-based multi-frame reconstruction
تتعلم الشبكة العصبية DLSS من عشرات الآلاف من الصور التدريبية المصممة لأداء إعادة بناء أفضل مما يمكن أن تقدمه الاستدلالات ، وبالتالي القضاء على تأثيراتهم هذا يؤدي إلى نتيجة أفضل بكثير باستخدام البيانات من إطارات متعددة.
عند تنفيذ DLSS في المحرك ، فإن الخطوة الأولى هي تقديم المشهد بدقة منخفضة: كل الأشكال الهندسية والإضاءة الديناميكية وتأثيرات مساحة الشاشة وتتبع الأشعة. بعد ذلك ، يمكن تطبيق DLSS في المرحلة التي يحدث فيها الصقل عادةً - ففي النهاية ، تؤدي التقنية نفس الوظيفة تمامًا ، فقط مع أخذ العينات الفائقة. ثم تتم المعالجة اللاحقة للصورة ، بما في ذلك ضبابية الحركة ، والازدهار ، والانحراف اللوني ، وتعيين درجة اللون والتأثيرات الأخرى.
DLSS ليست مجرد خوارزمية لمعالجة الصور. تعمل عادةً جنبًا إلى جنب مع العرض ، لذلك يجب إعادة النظر في عمليتها أيضًا. ومع ذلك ، في حالة DLSS 2.0 ، فإن هذه التغييرات ليست صعبة التنفيذ كما كانت من قبل.
اختبارات الأداء
يدعم أحدث عنوان Remedy Control كلاً من تتبع الأشعة و DLSS. كما ترى في الرسم البياني أعلاه ، تلقى RTX 2060 تعزيزًا للأداء من 8 إطارات في الثانية إلى حوالي 36.8 إطارًا في الثانية من خلال DLSS ، مما زاد بشكل كبير من إمكانية تشغيل المشروع. هذه النتيجة أفضل من RTX 2080ti بدون DLSS ، مما يثبت مدى فعالية هذه التقنية.
قارن Digital Foundry جودة الصورة باستخدام DLSS 1.9 و 2.0 في هذا الفيديو.
يسار - تحكم باستخدام DLSS 1.9 ، يمين - باستخدام DLSS 2.0. الصور الملتقطة على RTX 2060 بدقة 1080 بكسل ثم تمت ترقيتها إلى 4K
في المقارنة أعلاه ، يمكننا أن نرى كيف يعرض DLSS 2.0 خيوط الشعر المشوهة في حالة DLSS 1.9.
خاتمة
تتوفر DLSS فقط لوحدات معالجة الرسومات RTX 2000 و Turing المستندة إلى (ووحدات معالجة الرسومات RTX 3000 القائمة على Ampere) وتدعم حاليًا عددًا قليلاً من الألعاب فقط. يتم دعم DLSS 2.0 من خلال عدد أقل من العناوين ، ولكن مستوى التفاصيل يمكن أن يتجاوز حتى الصورة الأصلية ، بينما يظل معدل الإطارات مرتفعًا. هذا إنجاز رائع حقًا لـ NVIDIA ، وبالتأكيد تتمتع التكنولوجيا بمستقبل واعد.