الهندسة والآليات > الروبوتات
نظام التعرف البصري إلى النسق وتطبيقاتُه
التعرّف البصري إلى النسق (أو التشابه) قدرةٌ أساسية عند معظم الأنواع المتطورة في الطبيعة؛ إذ تكرِّس نسبةً كبيرة من الدماغ للمعالجة البصرية، ويشكل التعرّف إلى النسق جزءًا أساسيًّا منها (1).
يمهِّد التعرف البصري إلى النسق الطريقَ أمام مجموعة من المهام؛ مثل التعرف إلى الأشياء والأهداف والتنقل وإمساك الأشياء والتحكم بها، إضافة إلى مهام أُخرى (1).
كان للتقدم في بصريات الحاسوب مؤخرًا الفضلُ في نهوض تقنية التعرف البصري إلى النسق على نحوٍ كبير، التي تعتمد استخراجَ مجموعةٍ من الخصائص من صورة معينة، ونحصل على هذه الخصائص بتحويل اسمه (تحويل الخصائص بمقياس ثابت Scale Invariant Features Transform) SIFT، وهو ما يمثل التغيرات في الإضاءة حول نقطة مدروسة في الصورة، وأثبتت عمليات التعرف المعتمِدة هذه الخصائصَ ومتانتَها وصحتَها في الظروف الواقعية (1).
سنتحدث أيضًا عن استخدامات تقنية التعرف البصري إلى النسق في تطبيقات روبوتية عدة؛ كالتعرف إلى الأشياء والتنقل والمعالجة، ولعل أهمها التفاعل بين الإنسان والآلة (1).
يعدُّ التفاعل بين الإنسان والآلة حقلًا من العلم يهدف إلى فهم الأنظمة الروبوتية وتصميمها وتقييمها عندما يستخدمها البشر أو تعمل معهم، وهذا التفاعل يتطلب تواصلًا بين الروبوتات والبشر.
قد يأخذ هذا التواصل أنماطًا عدة، وذلك يعتمد اعتمادًا كبيرًا على تقارب الإنسان والروبوت من بعضهما أو عدمه.
مثال عن التواصل البعيد: نأخذ العرباتِ الروبوتيةَ المتنقلة على المريخ المنفصلةَ عن المستخدم مكانيًّا وزمنيًّا، أمّا عند اجتماع المستخدم والروبوت في مكان واحد فذلك يتطلب تواصلًا بصريًّا، وتزيد الحاجة إلى مرونة الروبوت في التواصل البصري أهميةَ التعرف إلى النسق (2).
هنا سنَصِف عملَ نظامٍ محدد من أنظمة التعرف إلى النسق، إضافةً إلى بعض تطبيقاته العملية:
نظام التعرف البصري إلى النسق (ViPR):
طَورتْ شركة Evolution Robotics نظامَ التعرف البصري إلى النسق Visual Pattern Recognition - ViPR المتعدد الاستخدام الذي يعمل عملًا متينًا مع الكاميرات المنخفضة التكلفة، وتعالج خوارزمية هذا النظامِ الأساسية تحديًا كبيرًا يواجه كلَّ أنظمة التعرف البصري إلى النسق، وهو التعرُّف الفعال والموثوق في الظروف الواقعية باستخدام أدوات منخفضة الثمن وقوة حاسوبية محدودة (1).
يمثل نظام ViPR عنصرًا (جسمًا) ما بمجموعة الخصائص SIFT المستخرجة من صورة أو صور عدة لهذا العنصر، وخصائص SIFT هي نماذج بصرية متوضعة بثباتية عالية، فلا تتأثر بالتغيرات في المقاييس أو دوران العنصر وثابتة جزئيًا بالنسبة للتغيرات في الإضاءة وزاوية الرؤية.
توصف كل خاصية في SIFT بموقعها في الصورة (بدقة بيكسلية) واتجاهها وقياسها، وتسجل خصائص الثبات المذكورة سابقًا في مسجل صفات أساسي ، وهناك دعامتان أساسيتان في نظام ViPR هما: اختيار الخصائص المحددة التي ستستخدم، وطريقته الفعالة في تنظيم قاعدة بيانات من مئات الآلاف من خصائص SIFT والبحث فيها (1).
يلتقط الكاشف حوالي 2000 خاصية في صورة حجمها 640*480 بيكسل، تضاف هذه الخصائص في مرحلة التدريب إلى قاعدة بيانات نموذجية، تسمى باسم العنصر المرتبط بالصورة التي يتدرب عليها النظام (مثلًا تُعطى كل مجموعة خصائصَ اسم (كتاب مثلًا) (إذا كان المراد التعرف إليه هو كتاب)، ثم في مرحلة المطابقة نحصل على صورة جديدة، ثم تبحث الخوارزمية في قاعدة البيانات عن كل العناصر التي تطابق مجموعات الخصائص المستخرجة من الصورة الجديدة، وتُستخدم المسافات الإقليدية (أي الخط المستقيم بين كل نقطة بيانات وأخرى) في مسجل الصفات في نظام SIFT لإيجاد خصائص متشابهة، ونستخدم تقنيةَ تخزين بيانات تسمى الشجرة ذات البعد K أو K-d tree من أجل بحث فعال في فضاء متعدد الأبعاد (1).
تعبر هذه الشجرة عن نوع من هيكلة البيانات من أجل البحث التجميعي، واسمها بالتفصيل شجرة البحث في نظام العد الثنائي المتعددة الأبعاد من الدرجة k، وهي هيكلية لحفظ البيانات ذات الأبعاد بعدد K، فكل ملف يقع في عقدة من الشجرة، والفائدة الأهم لهذه الشجرة أنها تسهّل الطلب والحصول على البيانات بطرائق منفصلة (3).
بعد الحصول على الخصائص ومقارنتها مع الصورة الجديدة المطلوب التعرف إليها تستخدم تقنية تصويت وانتقاء لتثبِّت المعلومات التي تأتي من الخصائص المتطابقة، فنحصل على فرضية عامة عن تطابق بين العنصر الجديد والخصائص المحفوظة في SIFT.
تتضمن كل فرضية الخصائصَ التي تطابق العنصر نفسه والتغير نفسه في زاوية رؤية هذا العنصر المحدد، وفي المرحلة الأخيرة من العملية تصفّى العناصر المطابقة المحتملة عبر حساب التحويلات التآلفية بين مجموعة الخصائص والعناصر المتطابقة، فيحافظ على موقع كل خاصية عبر هذا التحويل، بعدها يستخدم الخطأ المتبقي بعد التحويل كي نقرر فيما إذا سنقبل فرضية التطابق أو نرفضها (1).
تظهر الصورة الآتية مميزاتِ خوارزمية التعرف الأساسيةَ؛ وتعرض الصورة A عنصرًا يجب التعرف إليه، والصور الباقية تعرض نتائج التعرف في ظروف مختلفة (1):
تلخص مميزات الخوارزمية الأساسية وفق ما يأتي:
1- ثابتة بالنسبة للدوران والتحويلات التآلفية: يتعرف نظام ViPR إلى العناصر حتى عند تدويرها رأسًا على عقب (الثبات بالنسبة للدوران)، أو توضع في زاوية معينة مع المحور البصري (الثبات بالنسبة للتحويل التآلفي) (1). (انظر إلى الصورة B و C من الصورة السابقة)
2- ثابتة بالنسبة للتغير في المقياس: يمكن التعرف إلى العنصر من مسافات متعددة اعتمادًا على حجم العناصر وعلى دقة الكاميرا؛ إذ يعمل التعرف عملًا موثوقًا من مسافة عدة أمتار (1). (انظر إلى الصورة D من الصورة السابقة)
3- ثابتة بالنسبة للتغير في الإضاءة: يتعامل النظام مع تغييرات الإضاءة التي تتراوح بين الطبيعية إلى الإضاءة الصناعية ضمن المنزل، فهو لا يتحسس الآثارَ الناجمة عن الإنعكاسات أو الإضاءة الخلفية (1). (انظر إلى الصورة E من الصورة السابقة)
4- لا يتأثر بالحواجز: نظام ViPR يتعرف بفعالية إلى العناصر المخفية جزئيًّا بعناصر أخرى أو التي يظهر قسم منها أمام الكاميرا فحسب، فالكمية المسموح بها من الحواجز تتراوح بين %50 و 90% اعتمادًا على العنصر وجودة الكاميرا (1). (انظر إلى الصورة F من الصورة السابقة )
تعدُّ سرعة التعرف تابعًا لوغاريتميًا لعدد العناصر المخزنة في قاعدة البيانات؛ أيْ إنَّ هذه القاعدة تستطيع تخزين مئات أو آلاف من العناصر دون تغيّر كبير في السرعة أو المتطلبات الحسابية (1).
أما معدل إطارات التعرف Recognition frame rate فهو معدل طردي مع قوة المعالج ودقة الصورة.
للتوضيح: من أجل صورة بدقة 209*160 بيكسل، تعمل خوارزمية التعرف بمعدل نقل fps (frames per second) 14-18 باستخدام معالج pentium IV 1400 MHz ومعدل 5 باستخدام معالج MIPS-based 64-b RISC 600 MHz، وبالطبع فإن تقليل دقة الصورة يقلل جودتها ومن ثم معدل التعرف (1).
تتمثل الاستفادة من نظام ViPR في كونه يشكِّل أساسَ نظام vSLAM: visual simutanious localization and mapping system أو النظام البصري لتحديد الموقع ورسم الخرائط على نحوٍ متزامن، وهو تحديث نظام SLAM الذي يمكّن الروبوت من التنقُّل في بيئات مختلفة، فعلى الروبوت أن يستكشف البيئةَ المحيطة دونَ تدخل المستخدم، ويبني خريطةً موثوقة ويحدد موقعه على هذه الخريطة، وفي حال عدم وجود بيانات GPS: global positioning sensor حساس تحديد الموقع العام أو مرشد لاسلكي خارجي، فإن ذلك يتطلب من الروبوت أن يحدد نقاط مرجعية مناسبة على الخريطة من تلقاء نفسه، وهنا يستطيع نظام ViPR أن يساعده على التعرف الموثوق والقوي إلى المعالم البصرية للبيئة المحيطة (1).
عند تطبيق vSLAM في خلال تنقل الروبوت في بيئة ما بين نقطتين، يعتمد حساساتٍ بصريةً وحساسات الأبعاد كي ينتقل عبر أقصر طريق منطقي، وهو ما نشاهده في الصورة باسم (الطريق الواقعي)، إذ تبني خوارزمية vSLAM خريطة المسار النهائي الصحيح للروبوت بدمج الخصائص البصرية وقياس الأبعاد عن الأشياء المحيطة، مما يزود الروبوت بمعلومات دقيقة عن موقعه.
لتوضيح أهمية نظام vSLAM قارن بين المسار المسمى (الطريق الواقعي) والمسار الأزرق
الخاطئ خطأً واضحًا، وهو مسار يعتمد قياسَ المسافات بين الأشياء فحسْب (1).
إحدى تطبيقات ViPR هي روبوتات LaneHawk التي تتوضع في محلات البيع بالتجزئة، وتساعد على رصد المشتريات التي توضع في أسفل سلة التسوق، قد يكون نسيها الزبون أو حاول سرقتها، فتثبَّت كاميرا على مخرج المحاسبة، وتتحقق دائمًا من وجود عربة ومشتريات في أسفلها.
عند التعرف إلى عنصر ما، تُرسل معلومات عن هذا العنصر إلى المحاسب الذي يتحقق من عددها قبل أن يكمل الفوترة، وتحل هذه الروبوتات مشكلة تعرف في المتاجر الكبيرة باسم Bottom-of-Basket أو (أسفل السلة)، كذلك تزيد سرعة الفوترة على مخارج المحاسبة فيها (1).
في النتيجة: هذا النظام أساسي لأنظمة الروبوتات، ويدخل كثيرًا في صناعتها؛ لما يحققه من استخدام في التفاعل البشري الروبوتي وتحديد المواقع ورسم الخرائط والتنقل فيها... إلخ (1).
برأيك، ما الاستخدامات الأخرى المحتملة لهذا النظام؟
المصادر:
2. Human–Robot Interaction: A Survey. Now Publishers [Internet]. 2007 [cited 21 December 2020];1(3):204. Available from: هنا
3. Bentley J. Multidimensional Binary Search Trees Used for Associative Searching. Communication of the ACM [Internet]. 1975 [cited 21 December 2020];18(9). Available from: هنا