الرؤية الرقمية

ماهي ولماذا هي مهمة....؟

هل سألت نفسك كيف تتعرف كاميرا هاتفك المحمول على الوجه عند التقاط الصور او الفيديو……………؟

هل سألت نفسك كيف تتعرف الكاميرا على وجهك ان كنت حزينا او سعيد………...؟

هل سألت نفسك كيف يتم فتح قفل هاتفك عندما تضع الشاشة مقابل وجهك …………؟

هناك العديد من التساؤلات تخطر على بالك واليوم وضمن هذا البحث ستتعرف عليها وكيفية عملها ووظيفتها هيا بنا

مقدمة Introduction

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

الرؤية الحاسوبية :( computer vision) ‏:

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

Computer vision:

is a field of artificial intelligence that trains computers to interpret and understand the visual world. Using digital images from cameras and videos and deep learning models, machines can accurately identify and classify objects and then react to what they “see.”

هدف الرؤية الحاسوبية:

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

1- كالصور المتعاقبة (فيديو)

2- المشاهد من عدة كاميرات

3- بيانات ذات عدة أبعاد مأخوذة من جهاز تصوير طبي.

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

خوارزميات الرؤية الحاسوبية

ربما تكون ابسط خوارزمية في الرؤية الحاسوبية هي تتبع جسم ملون ومثال على ذلك نأخذ كرة ملونة زهرية زاهية أول شيء علينا القيام به هو تسجيل لون الكرة للبكسل المركزي RGBلذلك سوف نأخذ قيمة اللون الزهري

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

البقع (PATCHES):

كان مثال تتبع اللون هذا قادر على البحث عن كل بكسل تلو الاخر لان الألوان مخزنة داخل بكسل واحد لكن هذا الأسلوب لا يعمل مع ميزات أكبر من بكسل واحد مثل حواف الكائنات والتي تتكون بطبيعتها من العديد من وحدات البكسل لتحديد هذه الأنواع من الميزات في الصور يجب ان تأخذ خوارزميات رؤية الكمبيوتر في الاعتبار مناطق صغيرة من البكسل تسمى البقع PATCHES دعنا نتحدث عن خوارزمية تجد حواف عمودية في صورة أولا ولتبسيط الأمور سوف نحول هذه الصورة الى درجات رمادية على الرغم من معظم الخوارزميات الموجودة التي تتعامل مع اللون سوف نأخذ منطقة من أحد الحواف الموجودة ونكبرها لنرى كيف تبدو هذه الحافة عن قرب

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

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

1- هنالك نواة تزيد من حدة الصورة

2- وهنالك نواة تطمس معالم الصورة

خوارزمية كشف الوجه(Viola jones face detection )

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

1- مقدمة جسر الانف ليكون أكثر اشراقا من جانبي الانف مما ينتج عنه قيم اعلى للنواة الحساسة للخط

2- العيون مميزة أيضا دائرة مظلمة تبدو بقيم البكسل الأفتح وتجويف العين واضح لدى البشر جميع

3- الحواجب تكون فوق التجويف أي فوق العين

هنالك ميزات كثيرة مخزنة في هذه الخوارزمية لتعطينا أفضل نتيجة

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

الا انها مجتمعة يمكن ان تكون دقيقة تماما

كان هذا أساس خوارزمية التعرف على الوجه .

الشبكة العصبية التلافيفية(convolutional neural network):

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

يجب ان يبدو هذا مألوفا لنا لأنه يشبه الى حد كبير الالتفاف

في الواقع إذا مررنا بيانات بيكسل ثنائية الابعاد للخلايا العصبية بدلا من قائمة مدخلات أحادية البعد انه تماما مثل الالتفاف

اوزان المدخلات مكافئة لقيم النواة ولكن على عكس النواة المحددة مسبقا فإن القيم العصبية يمكن للشبكات ان تتعلم نواة مفيدة خاصة بها قادرة على التعرف على ميزات مثيرة للاهتمام بالصور

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

قد تجد الطبقة التلافيفية

الأولى أشياء مثل الحواف فهذه هي الطبقة المنفردة يمكن ان يتعرف الالتفاف كما ناقشناه بالفعل قد تحوي

الطبقة الثانية على خلايا عصبية تلف على ميزات الحافة هذه لتتعرف على البساطة اشكال تتكون من حواف مثل الزوايا

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

انظر المخطط التالي:

لا يطلب من الشبكات التلافيفية ان تكون عدة طبقات عميقة لكنها عادة ما تكون كذلك من اجل التعرف على الأشياء والمشاهدة المعقدة لهذا السبب تعتبر تقنية التعلم العميق

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

في المقابل قد يسمح ذلك لأجهزة الكمبيوتر بتكييف سلوكها بذكاء ربما يقدم نصائح عندما تكون مرتبكا

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

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

تبدو تطبيقات التعرف على الوجوه بلا حدود كانت هناك اختراعات حديثة في تتبع المعالم لليدين والاجسام بأكملها هدفها إعطاء أجهزة الكمبيوتر القدرة على تفسير لغة جسد المستخدم وايماءات اليد

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

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

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

أتمنى ان أكون قد وفقت في توصيل اغلب المعلومات من خلال موضوع حلقة البحث هذه لبعض تساؤلاتنا في كيفية الرؤية الحاسوبية

فان أصبت فمن الله وان أخطأت فمن نفسي

والسلام عليكم ورحمة الله وبركاته