الرؤية الحاسوبية2017متوسط12 دقيقة قراءة

Mask R-CNN — شبكة الأقنعة للتجزئة الفورية

Mask R-CNN

He, K. · Gkioxari, G. · Dollár, P. · Girshick, R. — ICCV

المشكلة

بحلول 2017 كان رصد الأجسام يستطيع رسم مربعات حول الأشياء في الصورة، والتجزئة الدلالية تستطيع تلوين كل بكسل حسب فئته — لكن لم يكن هناك نظام يجمع المهمتين معاً. الرصد يخبرك بمكان الجسم دون أن يعرف شكله الحقيقي، والتجزئة الدلالية تلوّن كل بكسلات «القطط» بلون واحد فلا تفرّق بين قطتين متجاورتين. — أي رصد كل جسم على حدة مع تحديد حدوده البكسلية بدقة — كانت لا تزال تحدياً مفتوحاً. الحلول السابقة إما كانت بطيئة لاعتمادها على مراحل متعاقبة، أو كانت تفقد الدقة المكانية بسبب أخطاء التقريب في طبقة RoI Pool.

الإسهام

الفكرة: أضف فرعاً واحداً إلى Faster R-CNN مهمته تنبؤ قناع تجزئة ثنائي لكل جسم مرصود، يعمل بالتوازي مع رأسَي التصنيف وتحديد المربع الموجودين. ابتكاران أساسيان مكّنا ذلك: (1) RoIAlign — طبقة تستخلص السمات دون أي تقريب، تستخدم فتحافظ على تطابق دقيق بين السمات والبكسلات، وهذا وحده حسّن دقة القناع بنسبة 10–50%. (2) فصل تنبؤ القناع عن تنبؤ الفئة — كل فئة تحصل على قناع ثنائي مستقل عبر sigmoid بدل أن تتنافس الفئات عبر softmax، وهذا الفصل أضاف 5.5 نقطة AP. باستخدام بنية ResNet-FPN، فاز Mask R-CNN بمسارات COCO 2016 الثلاثة: التجزئة الفورية، ورصد الأجسام، ورصد النقاط المفصلية.

الأثر

جعل Mask R-CNN التجزئة الفورية مهمة عملية قابلة للتدريب من البداية إلى النهاية، وظلّ المرجع الأساسي لسنوات. أثبت تصميمه أن إضافة فهم بكسلي دقيق فوق نظام رصد قائم لا يكلّف سوى عبء حوسبي ضئيل. تحوّل RoIAlign إلى الطبقة الافتراضية لاستخلاص السمات في كل أنظمة الرصد المبنية على المناطق. امتد الإطار لاحقاً إلى تقدير وضعية الإنسان والتجزئة الشاملة وتجزئة المثيلات في الفيديو، وبصمته المعمارية واضحة في نموذج SAM والنماذج التأسيسية الحديثة في .

تخيّل محقّقاً يعمل على صورة لمكان مزدحم. في الخطوة الأولى يرسم مستطيلاً حول كل شخص — هذا هو . في الخطوة الثانية يمسك قلماً رفيعاً ويرسم المحيط الدقيق لكل شخص داخل مستطيله — هذه هي التجزئة الفورية.

Faster R-CNN كان بارعاً في الخطوة الأولى فقط. ما فعله Mask R-CNN هو أنه أعطاه قلم التتبُّع وقال له: «في كل مربع ترسمه، ارسم أيضاً الحدود الدقيقة للشخص بداخله.» أداة واحدة إضافية بتكلفة حوسبية شبه معدومة، والنتيجة أنك تعرف الشكل الدقيق لكل جسم في الصورة.

ثلاثة مستويات لفهم المشهد البصري

قبل Mask R-CNN، كانت الرؤية الحاسوبية تتعامل مع فهم المشاهد بثلاث طرق منفصلة، كل منها فيها ثغرة:

رصد الأجسام يرسم حول كل جسم ويحدّد فئته. يخبرك أين الجسم وما هو، لكنه لا يعطيك شكله الحقيقي — المربع يضمّ بكسلات الخلفية مع الجسم.

تصنّف كل بكسل حسب فئته — بكسلات السيارات تُلوَّن بلون وبكسلات الأشجار بلون آخر. المشكلة أنها لا تفرّق بين سيارتين متجاورتين، فتعاملهما ككتلة واحدة من فئة «سيارة». تفقد العدد وهوية كل جسم.

التجزئة الفورية هي الغاية المنشودة: ارصد كل جسم على حدة وحدّد حدوده البكسلية بدقة. أنت تعرف أن في الصورة ثلاث سيارات وتعرف المحيط الدقيق لكل واحدة. قبل 2017 لم ينجح أي نظام في تحقيق ذلك بكفاءة في تمريرة واحدة.

افتح في المختبر
بدِّل بين رصد الأجسام والتجزئة الدلالية والتجزئة الفورية لترى ما يكشفه كلٌّ منها وما يغفله.
تستيقظ التجربة عند وصولك…

الأساس: Faster R-CNN في ستين ثانية

Mask R-CNN مبنيّ فوق Faster R-CNN، لذا لا بدّ من فهم آليتها أولاً. الشبكة تعمل على مرحلتين:

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

المرحلة الثانية — التصنيف وضبط المربع. لكل منطقة مرشّحة تُستخلَص رقعة سمات من خريطة السمات (عبر )، ثم تُمرَّر إلى لتحديد (أ) فئة الجسم و(ب) إحداثيات مربع الإحاطة بدقة أعلى.

فكرة Mask R-CNN البسيطة: أضف رأس خرج ثالثاً في المرحلة الثانية يتنبأ بقناع تجزئة ثنائي لكل مقترح — يعمل بالتوازي مع رأسَي التصنيف والمربع ويتشارك معهما السمات نفسها.

مشكلة المحاذاة: لماذا يفشل تجميع منطقة الاهتمام مع الأقنعة

هنا تكمن أهم مساهمة تقنية في Mask R-CNN. في Faster R-CNN الأصلية، كانت طبقة RoI Pool تستخلص رقعة سمات ثابتة الحجم من كل منطقة مرشّحة. المشكلة أن هذه الطبقة تُجري جولتَي — الأولى حين تقرّب إحداثيات المنطقة إلى أقرب عدد صحيح على خريطة السمات، والثانية حين تقسّم المنطقة إلى حجيرات. كل جولة تقريب تُزيح السمات بجزء من البكسل.

بالنسبة لتصنيف مربع الإحاطة، هذه الإزاحات الصغيرة لا تؤثر كثيراً — كل ما يحتاجه التصنيف هو تحديد موقع الجسم تقريبياً. لكن حين نريد قناعاً بدقة البكسل، تصبح المسألة مختلفة: إزاحة بكسل واحد عند دقة 1/16 تترجم إلى إزاحة 16 بكسل في الصورة الأصلية. عندها يستقبل رأس القناع سمات لم تعد تمثّل البكسلات الصحيحة فتنهار الدقة.

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

افتح في المختبر
قارن بين RoI Pool (مع أخطاء التكميم) وRoIAlign (مع >الاستيفاء الثنائي الخط). لاحظ كيف يُزيح التكميم شبكة السمات بعيداً عن الحدود الفعلية للجسم.
تستيقظ التجربة عند وصولك…

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

آلية العمل: خذ أي منطقة اهتمام بحجم عشوائي وقسّمها إلى شبكة ثابتة (مثلاً 7×7). داخل كل حجيرة، اسحب عينات عند 4 نقاط منتظمة. كل نقطة تقع بين بكسلات خريطة السمات، فتُحسَب قيمتها كمتوسط موزون لأقرب 4 بكسلات محيطة بها (هذا هو الاستيفاء الثنائي الخطي). بعد ذلك تُجمَّع العينات الأربع في كل حجيرة بالمتوسط أو القيمة القصوى.

لا تقريب ولا تكميم. السمات المستخلَصة تطابق المنطقة المكانية التي اقترحتها شبكة RPN بدقة. هذا التغيير الذي يبدو طفيفاً حسّن دقة القناع بنسبة 10–50% نسبياً، وكانت أكبر المكاسب على مقاييس التموضع الصارمة.

RoIAlign(x,y)=i,jmax(0,1xxi)max(0,1yyj)Fij\text{RoIAlign}(x, y) = \sum_{i,j} \max(0, 1-|x - x_i|) \cdot \max(0, 1-|y - y_j|) \cdot F_{ij}
الاستيفاء الثنائي الخطي عند النقطة (x, y)بدلاً من القفز إلى أقرب إحداثي صحيح، يحسب RoIAlign مزيجاً موزوناً من أقرب 4 قيم في خريطة السمات. كل وزن يتناسب عكسياً مع المسافة — كلما كانت نقطة الشبكة أقرب إلى الموقع (x, y) زادت مساهمتها في القيمة النهائية.

فرع القناع: قناع ثنائي واحد لكل فئة

بعد أن يستخلص RoIAlign خريطة سمات محاذاة بدقة لكل مقترح، يعالجها فرع القناع عبر صغيرة — سلسلة طبقات التفافية تحافظ على البنية المكانية، تنتهي بطبقة ترفع الدقة إلى حجم القناع النهائي (عادةً 28×28 بكسل لكل منطقة اهتمام).

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

لماذا هذا مهم؟ حين تستخدم softmax بين الفئات على مستوى كل بكسل، يصبح قناع «القط» وقناع «الكلب» في تنافس — رفع قيمة أحدهما يخفض الآخر تلقائياً. لكن إذا كان رأس التصنيف قد حسم أن الجسم قط، فهذا التنافس لا معنى له ويضرّ الدقة. فصل المهمتين أضاف 5.5 نقطة AP في التجارب التفصيلية التي أجراها الباحثون.

افتح في المختبر
قارن بين الأقنعة الثنائية المفصولة (sigmoid) والأقنعة المتنافسة (softmax). بدِّل بينهما لترى أثر الفصل على تنبؤات البكسلات.
تستيقظ التجربة عند وصولك…

ثلاث مهام، دالة خسارة واحدة

يُدرَّب Mask R-CNN بشكل كامل من البداية إلى النهاية بـ متعددة المهام تجمع ثلاثة مكوّنات ببساطة. ما يميّز هذا التصميم أن كل مكوّن يعمل باستقلالية — المكوّنات تتشارك السمات لكن كلاً منها يحسب بمعزل عن الآخرين:

L=Lcls+Lbox+LmaskL = L_{\text{cls}} + L_{\text{box}} + L_{\text{mask}}
دالة الخسارة متعددة المهامخسارة التصنيف (إنتروبيا تقاطعية على فئات الأجسام)، وخسارة تحديد المربع (دالة L1 الممهَّدة على فروقات الإحداثيات)، وخسارة القناع (إنتروبيا تقاطعية ثنائية لكل بكسل، تُحسب فقط على قناع الفئة الصحيحة). خسارة القناع تُحسب فقط على المناطق الموجبة أي تلك المطابقة لجسم فعلي في الصورة.

المسار الكامل: من البكسلات إلى الأقنعة

بنية Mask R-CNN وحداتية — كل مكوّن قابل للاستبدال بشكل مستقل. يقارن البحث بين تكوينين لـالبنية الأساسية:

ResNet-C4: يستخدم المرحلة الالتفافية الرابعة (C4) من ResNet لاستخلاص السمات. يأخذ RoIAlign سمات بحجم 14×14 من خريطة C4 ويمرّرها عبر مرحلة C5 الثقيلة (الكتلة الأخيرة من ResNet) المشتركة بين رأسَي الرصد والقناع. تكلفته الحوسبية أعلى لكنه أبسط في التصميم.

ResNet-FPN: يدمج ResNet مع التي تبني تمثيلات متعددة المقاييس. كل مقترح يُسحب من مستوى الهرم الذي يناسب حجمه. رأس القناع هنا شبكة التفافية كاملة خفيفة ومستقلة (4 طبقات التفافية + طبقة التفاف معكوس). هذا التكوين أسرع وأدق، وهو الذي أصبح الخيار المعياري.

افتح في المختبر
تتبّع مسار Mask R-CNN خطوة بخطوة: البنية الأساسية ← هرم السمات ← شبكة المقترحات ← RoIAlign ← الرؤوس المتوازية (الفئة، المربع، القناع).
تستيقظ التجربة عند وصولك…

هرم السمات: رؤية الأجسام بكل الأحجام

في الصور الواقعية تتفاوت أحجام الأجسام تفاوتاً كبيراً — شخص قريب من الكاميرا يشغل معظم الإطار، وسيارة بعيدة لا تتجاوز 20×15 بكسل. خريطة سمات واحدة بدقة واحدة لا تخدم كليهما جيداً: الدقة العالية تلتقط الأجسام الصغيرة لكنها سطحية دلالياً، والدقة المنخفضة غنية بالدلالات لكنها تفقد الأجسام الصغيرة تماماً.

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

في Mask R-CNN، يُوزَّع كل مقترح على مستوى الهرم المناسب لحجمه: المقترحات الصغيرة تُسحب من مستويات عالية الدقة، والكبيرة من مستويات منخفضة الدقة. هذا هو السبب في أن Mask R-CNN يتعامل بكفاءة مع أجسام من الصغير جداً إلى الكبير جداً.

النتائج: اكتساح مسارات COCO الثلاثة

على معيار COCO 2016، حقق Mask R-CNN مع ResNet-101-FPN:

  • التجزئة الفورية: 35.7 AP للقناع — متفوقاً على جميع النتائج السابقة بنموذج واحد.
  • رصد الأجسام: 39.8 AP للمربع — متجاوزاً Faster R-CNN بمجرد إضافة فرع القناع (الذي حسّن أداء الرصد فعلياً).
  • رصد النقاط المفصلية: 65.5 AP — عبر استبدال مخرج القناع بخرائط حرارية للمفاصل، مما يُظهر مرونة الإطار.

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

افتح في المختبر
Mask R-CNN مقابل أفضل النتائج السابقة عبر مسارات تحدّي COCO.
تستيقظ التجربة عند وصولك…

ما الأهم: رؤى من تحليلات الاستبعاد

التجارب التفصيلية في البحث تكشف أيّ القرارات التصميمية لها الأثر الأكبر:

RoIAlign مقابل RoI Pool. الانتقال من RoI Pool إلى RoIAlign رفع دقة القناع من 23.6 إلى 30.9 على بنية ResNet-50-C4 — قفزة قدرها 7.3 نقطة (31% نسبياً). عند عتبات أعلى (AP₇₅) كانت الفجوة أوسع. هذا يؤكد أن المحاذاة المكانية شرط أساسي للمهام التي تعمل على مستوى البكسل.

الأقنعة الثنائية المفصولة مقابل أقنعة softmax. استخدام sigmoid لكل بكسل (مفصول) بدلاً من softmax (متنافس) أضاف 5.5 نقطة AP. الخلاصة واضحة: بعد أن يحسم رأس التصنيف هوية الجسم، مهمة رأس القناع الوحيدة هي فصل المقدمة عن الخلفية دون أي تنافس بين الفئات.

أقنعة خاصة بالفئة مقابل أقنعة مستقلة عن الفئة. المفاجأة أن الأقنعة المستقلة عن الفئة (قناع ثنائي واحد بغض النظر عن نوع الجسم) حققت أداءً قريباً جداً من الأقنعة الخاصة بالفئة (29.7 مقابل 30.3 AP). هذا تأكيد إضافي لمبدأ الفصل — القناع فعلياً لا يحتاج سوى التمييز بين الجسم والخلفية.

عمق البنية الأساسية. الشبكات الأعمق حسّنت النتائج بوضوح: ResNet-101 أضاف 1.1 نقطة AP مقارنة بـResNet-50، وResNeXt-101 أضاف 0.7 نقطة فوق ذلك. فرع القناع يستفيد مباشرة من تمثيلات أغنى وأعمق.

ما وراء الأقنعة: رصد النقاط المفصلية ونموذج تعدد المهام

من أقوى ما أثبته Mask R-CNN هو تقدير وضعية الإنسان. الفكرة بسيطة: استبدل رأس القناع برأس يتنبأ بـK خريطة حرارية — واحدة لكل مفصل (الكتف الأيسر، الركبة اليمنى، وهكذا) — وستحصل على نتائج متقدمة في رصد النقاط المفصلية. لم يتغيّر شيء في البنية الأساسية أو شبكة المقترحات — كل ما تغيّر هو رأس الخرج.

هذا يُثبت أن Mask R-CNN ليس مجرد نموذج تجزئة فورية — بل إطار عام للمهام التي تحتاج فهماً مكانياً دقيقاً لكل جسم مرصود. أي مهمة تتطلب (1) رصد أجسام و(2) تنبؤاً دقيقاً مكانياً داخل كل جسم يمكن تركيبها على هذا الإطار. الوصفة واحدة دائماً: بنية أساسية ← هرم سمات ← شبكة مقترحات ← RoIAlign ← رأس خاص بالمهمة.

افتح في المختبر
انقر على أي مكوّن لاستكشاف دوره في مسار معالجة Mask R-CNN.
تستيقظ التجربة عند وصولك…

ما الذي أطلقه Mask R-CNN

  1. 2017

    Mask R-CNN

    أضاف فرع قناع متوازياً وطبقة RoIAlign إلى Faster R-CNN. فاز بمسارات COCO 2016 الثلاثة وأسّس نموذج التعرف متعدد المهام على مستوى المثيلات.

  2. 2018

    التجزئة الشاملة (Panoptic Segmentation)

    دمج Kirillov وفريقه التجزئة الفورية (للأشياء القابلة للعدّ كالسيارات والأشخاص) مع التجزئة الدلالية (للخلفيات كالسماء والطريق) في مهمة موحّدة. بُني مباشرة على فرع المثيلات في Mask R-CNN.

  3. 2019

    منصة Detectron2

    أطلقت Facebook AI منصة Detectron2، وهي مكتبة وحداتية لرصد الأجسام يتصدّرها Mask R-CNN كنموذج أساسي. تحوّلت إلى المنصة المرجعية لأبحاث الرصد والتجزئة.

  4. 2019

    PointRend — تحسين الأقنعة بإلهام من الرسم الحاسوبي

    تعامل Kirillov وفريقه مع تنبؤ القناع كمسألة تصيير رسومي — يأخذ عينات تكيُّفية من البكسلات غير المحسومة للحصول على حدود أدقّ. بُني فوق رأس القناع في Mask R-CNN.

  5. 2020

    تجزئة المثيلات في الفيديو

    مدّ إطار Mask R-CNN عبر إطارات الفيديو بإضافة رؤوس تتبُّع، فأصبح قادراً على رصد كل جسم وتجزئته وتتبُّعه عبر تسلسل الفيديو كاملاً.

  6. 2023

    نموذج تجزئة أي شيء (SAM)

    بنى Kirillov وHe وآخرون — كثير منهم المؤلفون أنفسهم — نموذجاً تأسيسياً للتجزئة. أعطه نقرة أو مربعاً أو نصاً ويعطيك القناع. يُعدّ الامتداد الطبيعي لرؤية Mask R-CNN نحو فهم بصري شامل على مستوى كل جسم.

الإسهام الأبقى لـMask R-CNN ليس النموذج بحد ذاته — بل إثباته أن رصد الأجسام والتجزئة الفورية ليسا مشكلتين منفصلتين. بإضافة فرع واحد وإصلاح خلل واحد في المحاذاة، ذابت الفجوة بين «أين الجسم؟» و«ما شكله؟». كل أنظمة الرؤية الحديثة التي تعمل على مستوى المثيل — من القيادة الذاتية إلى التصوير الطبي — تبني على هذا التوحيد.

المرجعHe, Gkioxari, Dollár, Girshick. Mask R-CNN. ICCV, 2017.

مصطلحات هذه الورقة