Yolo فيجن شنتشن
شنتشن
انضم الآن

ما هو R-CNN؟ نظرة عامة سريعة

أبيرامي فينا

6 دقائق قراءة

7 يونيو 2024

تعرّف على شبكة الشبكة الشبكية اللاسلكية RCNN وتأثيرها على اكتشاف الأجسام. سنغطي مكوناتها الرئيسية وتطبيقاتها ودورها في تطوير تقنيات مثل شبكة الشبكة الشبكية السريعة RCNN و YOLO.

اكتشاف الأجسام هو مهمة رؤية حاسوبية يمكنها التعرف على الأجسام في الصور أو مقاطع الفيديو وتحديد مواقعها لتطبيقات مثل القيادة الذاتية والمراقبة والتصوير الطبي. اعتمدت الطرق السابقة للكشف عن الأجسام، مثل كاشف فيولا-جونز ومخطط التدرجات الموجهة (HOG) مع آلات دعم المتجهات (SVM)، على ميزات مصنوعة يدويًا ونوافذ منزلقة. غالبًا ما واجهت هذه الأساليب صعوبة في detect الأجسام بدقة في المشاهد المعقدة ذات الأجسام المتعددة ذات الأشكال والأحجام المختلفة.

لقد غيّرت الشبكات العصبية التلافيفية القائمة على المنطقة (R-CNN) طريقة تعاملنا مع اكتشاف الأجسام. إنها علامة فارقة مهمة في تاريخ الرؤية الحاسوبية. لفهم كيف يمكن لنماذج مثل YOLOv8 نحتاج أولاً إلى فهم نماذج مثل R-CNN. 

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

كيف يعمل R-CNN؟

تتضمن عملية اكتشاف الكائنات في نموذج R-CNN ثلاث خطوات رئيسية: إنشاء مقترحات المنطقة واستخراج الميزات وتصنيف الكائنات مع تحسين مربعاتها المحيطة. دعنا نسير في كل خطوة.

الشكل 1. كيفية عمل R-CNN.

مقترحات المناطق: العمود الفقري لـ RCNN

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

الشكل 2. كيف يعمل البحث الانتقائي.

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

استخراج ميزات الصورة: التقاط التفاصيل

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

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

الشكل 3. استخراج الميزات من اقتراح منطقة باستخدام AlexNet.

تصنيف الأجسام: تحديد الأجسام المكتشفة

الخطوة الثالثة هي classify الكائنات داخل هذه المناطق. وهذا يعني تحديد فئة أو صنف كل كائن موجود ضمن المقترحات. يتم بعد ذلك تمرير متجهات السمات المستخرجة من خلال مصنف التعلّم الآلي.

في حالة R-CNN، تُستخدم آلات المتجهات الداعمة (SVMs) بشكل شائع لهذا الغرض. يتم تدريب كل SVM للتعرف على فئة كائن معينة من خلال تحليل متجهات الميزات وتحديد ما إذا كان هناك منطقة معينة تحتوي على مثيل لتلك الفئة. بشكل أساسي، لكل فئة كائن، يوجد مصنف مخصص يتحقق من كل اقتراح منطقة لهذا الكائن المحدد.

أثناء التدريب، يتم تزويد المصنفات ببيانات مصنفة مع عينات إيجابية وسلبية:

  • عينات إيجابية: المناطق التي تحتوي على الكائن المستهدف.
  • عينات سلبية: مناطق لا تحتوي على الكائن.

تتعلم المصنفات التمييز بين هذه العينات. يزيد انحدار المربع المحيط من تحسين موضع وحجم الكائنات المكتشفة عن طريق تعديل المربعات المحيطة المقترحة في البداية لتتناسب بشكل أفضل مع حدود الكائن الفعلي. يمكن لنموذج R-CNN تحديد الكائنات وتحديد موقعها بدقة من خلال الجمع بين التصنيف وانحدار المربع المحيط.

الشكل 4. مثال على انحدار المربع المحيط. (المصدر: towardsdatascience.com)

وضع كل ذلك معًا: تنقيح عمليات الكشف باستخدام NMS

بعد خطوات التصنيف وانحدار الصندوق المحيطي، غالبًا ما يُنشئ النموذج عدة مربعات متداخلة لنفس الكائن. يُطبَّق الكبت غير الأقصىNMS) لتحسين هذه الاكتشافات، مع الاحتفاظ بالمربعات الأكثر دقة. يتخلص النموذج من المربعات الزائدة والمتداخلة من خلال تطبيق NMS ويحتفظ فقط بأكثر الاكتشافات ثقة. 

تعمل NMS من خلال تقييم درجات الثقة (التي تشير إلى مدى احتمالية وجود الجسم المكتشف بالفعل) لجميع المربعات المحدودة وحذف تلك التي تتداخل بشكل كبير مع المربعات ذات الدرجات الأعلى. 

الشكل 5. مثال على منع التداخل غير الأقصى. (المصدر: towardsdatascience.com)

فيما يلي تفصيل للخطوات في NMS:

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

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

R-CNN هو علامة فارقة في اكتشاف الكائنات

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

مهد R-CNN الطريق لنماذج مثل Fast R-CNN و Faster R-CNN و Mask R-CNN، مما زاد من الكفاءة والدقة. من خلال الجمع بين التعلم العميق والتحليل القائم على المنطقة، وضع R-CNN معيارًا جديدًا في هذا المجال وفتح إمكانيات لمختلف التطبيقات الواقعية.

تحويل التصوير الطبي باستخدام R-CNN

هناك حالة استخدام مثيرة للاهتمام لشبكة R-CNN في التصوير الطبي. فقد استُخدمت نماذج شبكة R-CNN detect أنواع مختلفة من الأورام classify مثل أورام الدماغ، في الفحوصات الطبية مثل التصوير بالرنين المغناطيسي والتصوير المقطعي المحوسب. يحسّن استخدام نموذج R-CNN في التصوير الطبي من دقة التشخيص ويساعد أخصائيي الأشعة على تحديد الأورام الخبيثة في مرحلة مبكرة. يمكن لقدرة R-CNN على detect حتى الأورام الصغيرة والمراحل المبكرة أن تُحدث فرقاً كبيراً في علاج أمراض مثل السرطان وتشخيصها.

الشكل 6. الكشف عن أورام الدماغ باستخدام RCNN.

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

قيود R-CNN وخلفائه

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

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

الشكل 7. مقارنة بين R-CNN و fast R-CNN و faster R-CNN و mask R-CNN.

في نفس الوقت تقريبًا الذي بدأت فيه شبكة R-CNN الأسرع، بدأت سلسلة YOLO (أنت تنظر مرة واحدة فقط) في تطوير الكشف عن الأجسام في الوقت الحقيقي. تتنبأ نماذج YOLO بالمربعات المحدودة واحتمالات الفئة في مسار واحد عبر الشبكة. على سبيل المثال، فإن Ultralytics YOLOv8 توفر دقة وسرعة محسّنة مع ميزات متقدمة للعديد من مهام الرؤية الحاسوبية.

النقاط الرئيسية

غيّرت شبكة RCNN اللعبة في مجال الرؤية الحاسوبية، حيث أظهرت كيف يمكن للتعلّم العميق أن يغيّر من طريقة اكتشاف الأجسام. وقد ألهم نجاحها العديد من الأفكار الجديدة في هذا المجال. على الرغم من ظهور نماذج أحدث مثل Faster R-CNN و YOLO لإصلاح عيوب شبكة RCNN، إلا أن مساهمتها تعد علامة فارقة كبيرة من المهم تذكرها.

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

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

لنبنِ مستقبل
الذكاء الاصطناعي معًا!

ابدأ رحلتك مع مستقبل تعلم الآلة

ابدأ مجانًا