AV1 الجيل التالي من الترميز: CDEF Directional Correction Filter



تم النشر بواسطة Monty (monty@xiph.org، cmontgomery@mozilla.com). تم النشر في 28 حزيران (يونيو) 2018.

إذا لم يقرأ أحدهم المقال السابق ... فإن AV1 هو برنامج ترميز فيديو عالمي جديد طورته Alliance for Open Media. اتخذ التحالف أساسًا برنامج ترميز VPX من Google و Thor من Cisco و Daala من Mozilla / Xiph.Org. برنامج الترميز AV1 متفوق في الأداء مع VP9 و HEVC ، مما يجعله برنامج ترميز ليس غدًا ، ولكن بعد غد. تنسيق AV1 خالٍ من أي حقوق ملكية وسيبقى كذلك مع ترخيص الترخيص إلى الأبد.

تم تصميم هذه المقالة باعتبارها الثانية في سلسلة من المقالات التي تصف بالتفصيل وظائف AV1 والتقنيات الجديدة التي تقوم عليها وتستخدم لأول مرة في الإنتاج. شرح مقال سابق على Xiph.org وظيفة التنبؤ بالسطوع في Chroma من Luma (CfL) . اليوم سوف نتحدث عن مرشح تصحيح اتجاهي محدود (مرشح تعزيز اتجاهي مقيد). إذا كنت تتساءل دائمًا عن ما يلزم لكتابة برنامج ترميز ، فقم بربط أحزمة المقاعد واستعد للتعليم!

مرشحات في AV1


في جميع برامج ترميز الفيديو تقريبًا ، يتم استخدام المرشحات التصحيحية لتحسين الجودة الذاتية لمواد الإخراج.

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

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

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

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



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


مثال على القطع الأثرية عند حدود الكتل في برنامج الترميز التقليدي لكتلة DCT. هذه الأخطاء ملحوظة بشكل خاص.

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

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

طريق طويل ومتعرج


لم يتطور تاريخ CDEF بسهولة. هذا طريق طويل مع المنعطفات والمسارات الجانبية والنهايات المسدودة. يجمع CDEF العديد من الأوراق البحثية ، كل منها قدم فكرة أو إلهامًا للمرشح النهائي في AV1.

إن الهدف الأساسي من تحويل كتل بيانات البكسل باستخدام تحويلات DCT و DCT الشبيهة هو تمثيل كتلة من وحدات البكسل مع أقل عدد ممكن من الأرقام. تضغط DCT الطاقة بشكل جيد إلى حد ما في معظم الصور ، مما يعني أنها تميل إلى جمع أنماط البكسل المتناثرة في عدد قليل من عوامل الإخراج المهمة.

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


تعد حدود Sharp مشكلة تقليدية لبرنامج الترميز المستند إلى DCT ، حيث لا يتم ضغطها بشكل جيد للغاية ، على الإطلاق. نرى هنا حد حاد (يسار) ومعاملات تحويل DCT (يمين). تنتشر طاقة الحدود الأولية من خلال DCT إلى نمط التموجات الاتجاهية

على مدى العقدين الماضيين ، نظرت أبحاث برامج ترميز الفيديو بشكل متزايد في التحولات والمرشحات وطرق التنبؤ ، والتي هي في الأساس اتجاهية. كان الباحثون يبحثون عن طريقة للتعامل بشكل أفضل مع هذه الحدود والأنماط لتصحيح هذا الحد الأساسي من DCT.

المنبئات الاتجاهية الكلاسيكية


ربما يكون التنبؤ الداخلي الاتجاهي من أشهر طرق العمل الاتجاهي في برامج ترميز الفيديو الحديثة. الجميع على دراية بأوضاع التنبؤ الاتجاهي h.264 و VP9 ، حيث ينقل برنامج الترميز توقعات نمط معين إلى كتلة جديدة استنادًا إلى وحدات البكسل المحيطة من كتل تم فك تشفيرها بالفعل. الهدف هو إزالة (أو تقليل بشكل ملحوظ) الطاقة في الحواف الصلبة والموجهة قبل تحويل الكتلة. من خلال توقع وإزالة الميزات التي لا يمكن ضغطها ، نزيد من الكفاءة الكلية لبرنامج الترميز.


شكل توضيحي لأنماط التنبؤ الاتجاهي في AVC / H.264 لكتل ​​4x4. يقوم جهاز التوسيع بتوسيع القيم من شرائط بكسل واحد من وحدات البكسل المجاورة ، ونقلها إلى الكتلة المتوقعة في واحد من ثمانية اتجاهات ، بالإضافة إلى وضع المتوسط ​​لتنبؤ DC البسيط

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

مرشحات اتجاهية


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

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

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

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

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

التحولات الاتجاهية


تحاول التحويلات الاتجاهية إصلاح مشكلات DCT مع تكثيف حدود الكتلة على مستوى التحويل نفسه.

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

تأخذ الفئة الثانية من التحويلات الاتجاهية تحويلات منتظمة غير موجهة مثل DCT - وتعديلها ، مما يؤثر على الإدخال أو الإخراج. يمكن إجراء التغييرات في شكل أخذ العينات المتكرر أو مضاعفة المصفوفة (التي يمكن اعتبارها شكلاً متخصصًا لأخذ العينات المتكررة) أو التلاعب بترتيب بيانات الإدخال.

هذه الفكرة الأخيرة هي الأقوى ، لأن الطريقة تعمل بسرعة. لا يتطلب التبديل البسيط للأرقام أي حسابات رياضية.


مثالان للتحولات في اتجاهات مختلفة عن طريق إعادة ترتيب وحدات البكسل والمعاملات ، بدلاً من إعادة التصفية. تم أخذ مثال من مسح التحولات الاتجاهية في تشفير الصور ، Jicheng Xu ، Bing Zeng ، Feng Wu

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

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

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

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

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

المتنبئات الاتجاهية ، الجزء الثاني: سجلات دعاء


بدأ تاريخ CDEF في برنامج ترميز Daala بمحاولات لفعل شيء مختلف تمامًا: التنبؤ الداخلي الممل المألوف. أو على الأقل شيء عادي لبرنامج ترميز Daala.

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

لكن التخفيف لا يعمل كما نود. على الأقل عندما قمنا بتطبيقها ، فقدت الكثير من المعلومات ، مما جعل التقنية غير مناسبة عمليًا.

بالطبع ، لا تزال دالا بحاجة إلى شكل من أشكال التنبؤ الداخلي ، وقد توصل جان مارك فالين إلى الفكرة: برنامج ترميز للتنبؤ المستقل يعمل في المجال المكاني الموازي لبرنامج ترميز دالا في مجال التردد. كنوع من التكافل ، يعمل بالترادف ، ولكن لا يعتمد على دعالة ، فهو لا يقتصر على متطلبات دعالة لنطاق التردد. هكذا نشأت Intra Paint .


مثال خوارزمية التنبؤ Intra Paint في صورة لميناء سيدني . الإخراج المرئي واضح الاتجاه ، يتناسب بشكل جيد مع حدود الكتل وميزات الصورة الأصلية ، مما يخلق نتيجة لطيفة (ربما غريبة بعض الشيء) بحدود واضحة

عمل مرشح Intra Paint بطريقة جديدة: حيث قام بتشفير المتجهات أحادية البعد فقط على طول حدود الكتل ، ثم قام بتشغيل القالب في الاتجاه المحدد. إنه مثل رش الطلاء ، ثم نشره في اتجاهات مختلفة في المناطق المفتوحة.

بدا Intra Paint واعدًا وأنتج في حد ذاته نتائج جميلة بشكل مدهش ، ولكن تبين مرة أخرى أنه غير فعال بشكل كاف للعمل كمتنبئ قياسي داخل. لم تحصل على ما يكفي من البت لتشفير معلوماتها الخاصة.


الفرق بين الصورة الأصلية لميناء سيدني ونتائج الطلاء الداخلي. على الرغم من الإصدار الممتع بصريًا لـ Intra Paint ، إلا أنه من الناحية الموضوعية ، لا يمكن أن يطلق عليه مؤشر تنبؤ دقيق للغاية. الفرق كبير جدًا حتى على طول العديد من الحدود التي بدت جيدة الإعداد

قادنا "فشل" Intra Paint إلى فكرة أخرى. على الرغم من أن هذا "الرسم" ليس موضوعيًا بشكل جيد متنبئًا جيدًا ، ولكنه شخصيًا في معظمه يبدو جيدًا. ربما تستخدم طريقة "مسحة الطلاء" كمرشح ما بعد المعالجة لتحسين الجودة البصرية الذاتية؟ يتبع Intra Paint بشكل جيد للغاية على طول الحواف الحادة ، وبالتالي يجب أن يزيل الضوضاء التي تتراكم على طول الحواف الحادة.من هذه الفكرة ، ولد فلتر Paint-Dering الأصلي في Daala ، مما أدى في النهاية إلى CDEF نفسه.

هناك شيء آخر مثير للاهتمام في التنبؤ الاتجاهي ، على الرغم من أن هذا هو طريق مسدود حاليًا في ترميز الفيديو. يقوم David Shlif بتطبيق مرشح إعادة إحضار حد / اتجاه مثير للاهتمام يسمى الاستيفاء الموجه بالحافة(EDI). جربت برامج الترميز الأخرى (مثل سلسلة VPx ، وفي بعض الأحيان ، AV1) إطارات منخفضة المرجع لحفظ بتات الترميز ، ثم زيادة الدقة. كنا نأمل أنه مع زيادة الدقة ، سيؤدي الاستيفاء المحسن بشكل كبير إلى EDI إلى تحسين التقنية إلى درجة أنها ستكون مفيدة. كنا نأمل أيضًا في استخدام EDI كمرشح محسّن لاستيفاء البكسل الفرعي لتعويض الحركة. لسوء الحظ ، ظلت هذه الأفكار حلمًا لم يتحقق.

تعبئة الفتحات ودمج الفروع


لقد وصفت في الوقت الحالي جميع المتطلبات الأساسية اللازمة للاقتراب من CDEF ، ولكن في الواقع استمررنا في التجول في الصحراء. أنتج Intra Paint مرشح Daala Paint-Dering الأصلي ، الذي استخدم خوارزمية Intra-Paint كمرشح لاحق لإزالة الآثار. اتضح أنه بطيء جدًا في استخدامه في برنامج ترميز حقيقي.

ونتيجة لذلك ، أخذنا في الاعتبار دروس Intra Paint والتجارب المهجورة في هذا الاتجاه. استعارت Daala CLPF من Thor لفترة من الوقت ، ثم أنشأ Jean-Marc فلتر Deringing آخر أسرع بكثير لـ Daala ، استنادًا إلى البحث عن اتجاهات حدود Intra-Paint (عملت بسرعة وجيدة) ، بالإضافة إلى مرشح الاستبدال الشرطيمرشح بديل مشروط. تم إنشاء CRF إلى حد ما على أفكار المرشح الوسيط وأنتج نتائج مشابهة لمرشح ثنائي ، لكنه عمل بشكل أساسي في المتجهات وبالتالي أسرع بكثير. مقارنة بين مرشح خطي 7 نقرات وفلتر بديل مشروط على إشارة أحادية البعد الصاخبة ، حيث تحاكي الضوضاء تأثيرات القياس الكمي على الإشارة الأصلية يستخدم مرشح Daala النهائي للحد من الضوضاء مرشحين CRF أحادي البعد ، وفلتر 7 نقرات في اتجاه الحدود وفلتر 5 ضغط ضعيف. يعمل المرشحان فقط على وحدات البكسل الكاملة بدون إعادة أخذ العينات. هنا ، يصبح مرشح تقليل الضوضاء في Daala مشابهًا جدًا لما نعرفه الآن باسم CDEF.






اقترحنا مؤخرًا Daala كبرنامج ترميز AOM ، وأصبح هذا المرشح الوسيط تجربة AV1 daala_dering. كما قدمت Cisco أيضًا مرشح الحد من الضوضاء ، مرشح الترددات المنخفضة المقيدة (CLPF) من برنامج الترميز Thor. لفترة من الوقت ، كان كلا المرشحين موجودين بالتوازي في التجمع التجريبي AV1: يمكن تضمينهما بشكل فردي أو حتى معًا. بفضل هذا ، كان من الممكن في عملهم ملاحظة التآزر المفيد ، بالإضافة إلى أوجه التشابه الإضافية للفلاتر في مراحل العمل المختلفة.

لذا ، وصلنا أخيرًا إلى CDEF : تم دمج مرشح CLPF من Cisco والإصدار الثاني من مرشح تقليل الضوضاء Daala في مرشح واحد للحد من الضوضاء عالي الأداء مع مراعاة اتجاه الحدود.

CDEF الحديث


مرشح CDEF بسيط ومشابه للغاية لمرشحاتنا السابقة. يتكون من ثلاثة أجزاء (بحث اتجاهي ، مرشح محدود الاستبدال / تمرير منخفض ، ووضع علامات co-pixel) التي استخدمناها من قبل. بالنظر إلى الخلفية الطويلة ، بالنظر إلى CDEF النهائي ، قد تسأل ، "هل هذا كل شيء؟ أين الباقي؟ " CDEF هو مثال لكيفية الحصول على تأثير مفيد بسبب التنفيذ الصحيح للأجزاء ، وليس بسبب التعقيد. مرشح بسيط وفعال هو ما يجب أن يكون.

اتجاه البحث


يعمل CDEF في اتجاه معين ، لذلك تحتاج إلى تعريفه. الخوارزمية هي نفسها مثل Intra Paint و Paint-Dering. هناك ثمانية اتجاهات محتملة. ثمانية اتجاهات ممكنة لمرشح CDEF. تتوافق الخطوط المرقمة في كل كتلة اتجاه مع المعلمة "k" في البحث عن الاتجاه




نحدد اتجاه المرشح من خلال عمل متغيرات "اتجاهية" لكتلة الإدخال ، واحدة لكل اتجاه ، حيث يتم جلب جميع وحدات البكسل على طول الخط في الاتجاه المحدد إلى نفس القيمة. ثم نختار الاتجاه حيث تكون النتيجة أكثر تطابقًا مع كتلة المصدر. أي أنه بالنسبة لكل اتجاه د ، نجد أولاً متوسط ​​قيمة البكسل في كل صف k ، ثم نلخص على طول كل صف الخطأ التربيعي بين قيمة البكسل المحددة ومتوسط ​​قيمة خط البكسل هذا.


d, . k . k . , , . /

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

هذه طريقة بديهية وطويلة لحساب الأخطاء الاتجاهية. يمكن تبسيط المعالجة بالمعادلة التالية:



في هذه الصيغة هـ- خطأ ص- بكسل سص- قيمة البكسل ك- أحد الخطوط المرقمة في مخطط الاتجاه أعلاه ، و ند،ك- قوة الخط (عدد البكسلات فيه) كللاتجاه د.يمكن تبسيط هذه المعادلة في الممارسة العملية. على سبيل المثال ، المصطلح الأول هو نفسه لكل منهاد . في النهاية ، يتطلب تنفيذ AV1 CDEF حاليًا 5.875 إضافات و 1.9375 مضاعفات لكل بكسل ويتم تحويلها بشكل عميق ، مما يؤدي إلى تكلفة إجمالية أقل من 8 × 8 DCT.

صنابير التصفية


يعمل مرشح CDEF بكسل تلو الآخر في كتلة كاملة. الاتجاهديختار أحد مرشحات الاتجاه ، ويتكون كل منها من مجموعة من ملصقات المرشحات (أي مواقع وحدات بكسل الإدخال) والأوزان.

من الناحية النظرية ، يقوم CDEF بإنشاء مرشح اتجاهي من اثنين أحاديين البعد. يعمل المرشح الرئيسي على طول الاتجاه المحدد ، كما هو الحال في مرشح ضوضاء Daala. يتم تشغيل المرشح الثانوي مرتين بزاوية 45 درجة إلى الأساسي ، كما هو الحال في CLPF Thor.


اتجاه المرشحات الأولية والثانوية أحادية البعد فيما يتعلق بالاتجاه المحدد د. يبدأ المرشح الرئيسي في الاتجاه المحدد ، بينما يعمل المرشح الثانوي بزاوية 45 درجة إلى الاتجاه الرئيسي. يتم تصفية كل بكسل في الكتلة بشكل متساوٍ.

تعمل المرشحات عند زوايا تكون العلامات المثالية غالبًا ما تقع بين وحدات البكسل. بدلاً من إعادة أخذ العينات ، نختار الموقع الدقيق لأقرب بكسل ، مع مراعاة النواة المتناظرة للمرشح.

لكل ملصق في الفلتر نفس الوزن. أثناء التصفية ، يتم توفير قيمة الإدخال الخاصة به للإدخال ، ثم يتم تطبيق وظيفة القيد ، ثم يتم ضرب النتيجة في الوزن الثابت للملصق ، ويتم إضافة قيمة الإخراج هذه إلى البكسل المفلتر.


مواقع العلامات الأولية والثانوية (الصنابير) والأوزان الثابتة (w) في اتجاهات المرشح. بالنسبة للعلامات الأولية وحتى قيم القوة a = 2 و b = 4 ، بينما بالنسبة للعلامات الفردية a = 3 و b = 3. تظهر البكسل المرشح باللون الرمادي.

عمليًا ، لا تعمل المرشحات الأولية والثانوية بشكل منفصل ، ولكن يتم دمجها في قلب مرشح واحد ، الذي يتم في خطوة واحدة.

وظيفة التقييد


يستخدم CDEF مرشح تمرير منخفض محدود يتم فيه معالجة قيمة كل تسمية أولاً بواسطة وظيفة القيد مع معلمة الفرق بين قيمة الملصق والبكسل المفلترد قوة المرشح قومعلمة التخميد د:



تم تصميم وظيفة القيود لتقليل معالجة وحدات البكسل التي لا تختلف كثيرًا عن وحدات البكسل المفلترة أو التخلي عنها تمامًا. في النطاق المحدد ، يتم أخذ الاختلافات في قيم العلامات من البكسل المركزي بعين الاعتبار تمامًا (والتي يتم تحديدها بواسطة معلمة القوةق ) إذا كان الفرق في القيم يقع ضمن النطاق بين المعلمات قو د، ثم تضعف القيمة. أخيرًا ، قم بتسمية القيم بالخارجدتم تجاهلها بالكامل. توضيح وظيفة القيود. في كلتا الشكلين ، يتم رسم الفرق (د) بين بكسل المركز وبكسل العلامة على طول المحور س. يتم عرض قيمة الإخراج لدالة القيد على طول المحور ص. يوضح الشكل الموجود على اليسار تأثير تغيير معلمة القوة (S). يوضح الشكل الموجود على اليمين تأثير تغيير معلمة التخميد (D). ثم يتم ضرب قيمة خرج دالة القيد بوزن ثابت مرتبط بكل موضع من الملصق بالنسبة للبكسل الأوسط. أخيرًا ، تتم إضافة القيم الناتجة (واحدة لكل تسمية) إلى البكسل المرشح في المنتصف ، والذي يعطي قيمة البكسل المرشحة النهائية. يتم التعبير عن كل هذا في الصيغة التالية: ... أين








(ص)و (ق)تتوافق مع القيم المرحلة الابتدائية و الثانوية مجموعات من العلامات.

هناك بعض تفاصيل التنفيذ الإضافية المتعلقة بالتقريب والقص. لكنهم ليسوا مهمين للغاية للفهم. إذا كنت تنوي تنفيذ CDEF ، بالطبع ، يمكنك العثور عليها في وصف CDEF الكامل .

النتائج


تم تصميم CDEF لإزالة أو تقليل التشويش الأساسي وعناصر الرنين عند الحواف الحادة للصورة دون تمويه أو تلف. يستخدم المرشح الآن في AV1 ويعطي تأثيرًا خفيًا ولكنه ثابت. ربما في المستقبل سيكون من الممكن الاعتماد أكثر على CDEF.


مثال على تقليل التشويش والتحف عند تشفير صور الفاكهة . يظهر الشكل الأول المنطقة بدون معالجة CDEF ، ويظهر الجزء الثاني نفس المنطقة بعد معالجة CDEF

يجب تحديد القيمة الكمية لأي مرشح تصحيحي عن طريق الاختبارات الذاتية. لا يجب خصم المقاييس الموضوعية ، ولكن تم تصميم CDEF لتوفير نتيجة تتجاوز قدرات أدوات الاختبار الموضوعي البدائية مثل PSNR و SSIM.

وبالتالي ، أجرينا عدة جولات من الاختبار الذاتي ، أولاً أثناء تطوير CDEF (عندما كانت Daala Dering و Thor CLPF لا تزالان متنافستين تقنيًا) ، ثم أجرينا اختبارًا أكثر شمولاً لمرشح CDEF المدمج. نظرًا لأن هذا فلترًا جديدًا غير موجود تمامًا في الأجيال السابقة من برامج الترميز ، فإن الاختبار يتكون بشكل أساسي من AV1 مع تمكين CDEF و AV1 بدون CDEF.


نتائج اختبار A / B ذاتي AV1 مع CDEF و AV1 بدون CDEF للتكوين عالي الكمون

تظهر النتائج الذاتية تحسنًا مهمًا إحصائيًا (p <.05) في ثلاثة من المقاطع الستة. كقاعدة ، يتوافق هذا مع زيادة كفاءة التشفير بنسبة 5-10٪. هذا فوز كبير جدًا لأداة واحدة تضاف إلى برنامج الترميز الناضج بالكامل.

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

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

موارد إضافية


  1. Xiph.Org أجنحة اختبار derf القياسية في media.xiph.org
  2. نظام ومقاييس الاختبار الآلي المستخدمة في تطوير Daala و AV1: "هل نحن مضغوطون بالفعل؟"
  3. عامل تصفية تحسين الاتجاه المقيد (CDEF) في AV1 . Steinar Midtskogen ، جان مارك فالين ، أكتوبر 2017
  4. شرائح عرض CDEF لـ ICASSP 2018 ، Steinar Midtskogen ، Jean-Marc Valin
  5. مرشح Deringing لدالا والمزيد من التطوير . جان مارك فالين. تم إنشاء مرشح تقليل الضوضاء السابق عند تطوير برنامج ترميز Daala ، والذي تم استخدامه لإنشاء CDEF في AV1.
  6. دلع: تلوين صور للمتعة و الخير . جان مارك فالين. مرشح تصحيح سابق حتى لقاعدة Intra-Paint ، مما أدى إلى إنشاء مرشح للحد من الضوضاء في Daala ، والذي أدى بدوره إلى CDEF
  7. تصفية الطلاء داخل الطلاء . جان مارك فالين ، 2015. ملاحظات حول مرشح تصحيح الحد من الضوضاء التي انبثقت عن تجربة Intra Paint في Daala
  8. تصفية الصور الموجهة . Caiming Hye ، Jian San ، Xiaou Tang ، 2013
  9. تحويل المويجات المنفصلة الاتجاهية لضغط الصورة . Chuo-Ling Chang، Bernd Girod، IEEE Transactions on Image Processing، Volume 16، Number 5، May 2007
  10. تحويلات التكيف الاتجاهي لمشاركة الصور . أطروحة دكتوراه في جامعة ستانفورد ، 2009 ، تشو لينغ تشانغ. تقدم هذه الرسالة نظرة عامة جيدة عن مجال التحولات الاتجاهية اعتبارًا من عام 2009 ؛ لسوء الحظ ، لم تكن هناك نسخ متاحة عبر الإنترنت
  11. تحويل الحظر التكيفي الاتجاهي لتشفير صورة ملونة . Chuo-Ling Chang، Mina Makar، Sam S. Tsai، Bernd Girod، IEEE Transactions on Image Processing، Volume 19، Number 7، July 2010
  12. تعتمد على دائرة DCT مع التنبؤ بالتيار المستمر والتشفير التكيفي . Zhibo Chen ، Xiaozhong Xu. المقالة وراء IEEE
  13. تحويلات تكيفية اتجاهية للتنبؤ بالتشفير المتبقي . روبرت كوهين ، سفين كلومب ، أنتوني فيترو ، هويفان صن. وقائع 2010 IEEE 17 المؤتمر الدولي لمعالجة الصور ، 26-29 سبتمبر 2010 ، هونغ كونغ
  14. الاتجاه الانتقائي المتعامد مع التداخل . ديتمار كونز ، 2008. مقال بقلم IEEE
  15. تحليل تشويه السرعة للمويجات الاتجاهية . أريان مالكى ، بشرى راجى ، حميد رضا بوريزا. معاملات IEEE على معالجة الصور ، المجلد 21 ، العدد 2 ، فبراير 2012
  16. التحليل النظري لاتجاهات اتجاهات التحولات المتعامدة الاتجاهية . شوغو موروماتسو ، دندن خان ، تومويا كوباياشي ، هيساكازو كيكوتشي. مقال وراء جدار الحماية IEEE. ومع ذلك ، تتوفر نسخة قصيرة بحرية.
  17. نظرة عامة على التحولات الاتجاهية في ترميز الصور . Jicheng Xu ، Bing Zeng ، Feng Wu.
  18. التحويل مع التصفية الاتجاهية لضغط الصورة والمعلومات بين الإطارات . Xulian Peng ، Jicheng Xu ، Feng Wu ، IEEE Transaction in Image ، Volume 19، Number 11، November 2010. مقال بقلم IEEE Firewall
  19. التقريب والضغط باستخدام التحولات المتعامدة المتناثرة . O. G. Sezer، O. G. Guleruz، Yusel Altunbasak، 2008
  20. دراسة موثوقة للتحويلات المشتركة ثنائية الأبعاد لبرامج ترميز الفيديو من الجيل التالي . O.G. Cezer، R. Cohen، A. Vetro، March 2011
  21. تحسين المفاصل على أساس تناثر مجموعة من التحويلات المشتركة المتعامدة ثنائية الأبعاد . جويل سول ، بينج ين ، يونفي زينج ، كريستينا جوميلا ، 2009. مقال بقلم IEEE
  22. تحويلات التداخل الاتجاهية لترميز الصورة . Jicheng Xu ، Feng Wu ، Jie Liang ، Wenjun Zhang ، IEEE Transactions on Image Processing ، April 2008
  23. تحويلات جيب التمام المنفصلة الاتجاهية هي إطار عمل جديد لترميز الصورة . Bing Zeng، Jingjing Fu، IEEE Transact on Circuits and Systems for Video Technology، April 2008
  24. شجرة مزدوجة للتحولات المويجات المعقدة . إيفان سيليزنيك ، ريتشارد بارانيوك ، نيك كينغسبري ، مجلة IEEE لمعالجة الإشارات ، نوفمبر 2005

Source: https://habr.com/ru/post/ar416049/


All Articles