الوحدة 7 — تقطيع النُسَخ مع Mask R-CNN
الوحدة السابقة أعطتنا قناعًا يقول «هذه بكسلات سيّارة»، لكنّها لم تُفرّق بين سيّارتين ملتصقتين. لعدّ السيّارات في تقاطع طرق مزدحم، هذا التمييز جوهري: سيّارتان متوقّفتان جنبًا إلى جنب لهما قناع دلالي واحد، بينما نحتاج إلى معرفة أنّهما جسمان متمايزان. هنا يدخل تقطيع النُسَخ، الذي يُنتج قناعًا مستقلًّا لكلّ جسم عدّي.
المبدأ: كشف + قناع لكلّ جسم
تقطيع النُسَخ يجمع بين الكشف والتقطيع الدلالي: أوّلًا نكشف الأجسام (صناديق + أصناف + ثقة)، ثم لكلّ جسم مكتشف نُنتج قناعًا مستقلًّا يحدّد بكسلاته بدقّة داخل صندو قه. النتيجة قائمة من الأجسام، لكلّ منها صنف، وثقة، وصندوق، وقناع.
هذه مقاربة مختلفة جوهريًا عن التقطيع الدلالي. في التقطيع الدلالي، القرار يُتَّخذ لكلّ بكسل مستقلّ عن كون هذا البكسل ينتمي إلى «الجسم رقم 1» أو «الجسم رقم 2»؛ في تقطيع النُسَخ، القرار يبدأ من الجسم كوحدة ثم يُفصَّل إلى بكسلاته.
Mask R-CNN: القناع فوق Faster R-CNN
Mask R-CNN (He et al.، 2017) هو المرجع الرائد. الفكرة بسيطة ومقنعة: نأخذ Faster R-CNN من الوحدة 2، ونُضيف رأس ثالث بالتوازي مع رأسي التصنيف والانحدار: رأس قناع ينتج قناعًا صغيرًا (مثلًا 28×28) لكلّ اقتراح.
المعمارية:
الصورة → المُشفِّر (ResNet + FPN)
↓
شبكة اقتراح المنا طق (RPN)
↓
RoI Align ← الجزء الحاسم
↓ ↓ ↓
رأس تصنيف رأس صندوق رأس قناع
RoI Align الذي رأيناه في الوحدة 2 يصبح هنا أساسيًا. RoI Pooling القديم كان يقرّب الإحداثيات، مُدخِلًا انحيازًا بمقدار نصف بكسل — مقبول للتصنيف، كارثي للقناع. الاستيفاء الثنائي الخطّي لـRoI Align يحفظ المحاذاة الدقيقة، ما يُتيح إنتاج أقنعة تحاذي الحدود الفعلية للجسم.
خسارة الرأس القناع هي إنتروبيا متقاطعة ثنائية لكلّ بكسل داخل الصندوق. نقطة تصميم مهمّة: القناع مُتوقَّع لكلّ صنف على حدة، ثم يُختار قناع الصنف الذي أنتجه رأس التصنيف. هذا يفصل مشكلة من هذا؟ عن مشكلة أيّ بكسلات فيه؟.
الفرق العملي مع التقطيع الدلالي
جدول يُلخّص التقاطعات والاختلافات:
| المعيار | التقطيع الدلالي | تقطيع النُسَخ |
|---|---|---|
| مُخرَج لكلّ سيّارة | بكسلات مشتركة مع البقية | قناع منفصل |
| مُخرَج لبكسل «طريق» | صنف «طريق» | لا شيء |
| ملتصقان يتلامسان | قناع واحد | قناعان |
| الأمثل عندما | عناصر الخلفية مهمّة | العدّ ومتابعة الأجسام |
| البنية النموذجية | U-Net، DeepLab | Mask R-CNN، YOLOv8-seg |
لعدّ السيّارات على تقاطع طرق، تقطيع النُسَخ هو الاختيار الصحيح. للتحقّق من أنّ السيّارة داخل ممرّها، نجمع بين الاثنين: تقطيع دلالي للممرّ + تقطيع نُسَخ للسيّارات، ثم نحسب التقاطع.