# رؤية حاسوبية

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

## أمثلة

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

## مقارنة مع الرؤية الطبيعية

من الممكن وصف الرؤية الحاسوبية باعتبارها مرادفاً(وليس بالضرورة عكساً) للرؤية الفيزيولوجية. فكما أن الرؤية الفيزيولوجية للإنسان والحيوانات المختلفة تُدْرَسُ للتعرف على خصائصها، فإن علم الرؤية الحاسوبية يدرس ويصف أنظمة الرؤية الصنعية التي تُنفّذ في البرامج أو الأجهزة. وقد أظهر التعاون بين مجالي دراسة الرؤية الفيزيولوجية والحاسوبية تطوراً في تعميق الفهم لكلا المجالين.

## فروع

تندرج المجالات التالية تحت مجال الرؤية الحاسوبية:
* تقدير اتجاه الحركة
* ترميم الصور
* التعرف على الأشياء
* التتبع
* تفاعل الإنسان والحاسوب

## المهام الأساسية للرؤية الحاسوبية

كل واحد من التطبيقات المذكورة آنفاً يتضم العديد من مهام الرؤية الحاسوبية، بعضها مهام للقياس، وبعضها مهام حسابية تستخدم لحل العديد من المسائل. هذه بعض المهام الأساسية لعلم الرؤية الحاسوبية.

### التعرف

هي المهمة التقليدية في الرؤية الحاسوبية، وهي القيام بتحديد ما إذا كانت الصورة تحتوي أو لا تحتوي جسماً، معلماً، أو نشاطاً معيناً. هذه المهمة من الممكن حلها بباسطة وبدون أي جهد يذكر بواسطة الإنسان، لكن لا تزال هذه المسألة غير محلولة بشكل فعال ونهائي من الحاسوب في شكلها العام. جميع الطرق الموجودة لحل هذه المسألة تقوم بإيجاد أفضل الحلول من أجل إيجاد أشكال معينة كالأشكال الهندسية، وجوه الأشخاص، الأحرف المطبوعة أو المكتوبة، أو السيارات، وفي حالات معينة فقط محددة على الغالب بظروف إضاءة محددة، خلفية ووضعية معينة للجسم بالنسبة للكاميرا. هناك أنواع مختلفة لمشكلة التعرف مشروحة في المراجع العلمية:
* التعرف Recognition : يُتعرف على أحد أو بعض من الأجسام التي تعلمها الحاسوب سابقًا، غالباً بأوضاعها المختلفة أو بزاويا مختلفة للكاميرا.
* التحديد: تحديد مطابق وحيد للجسم المعرف. مثلاً: تحديد وجه شخص معين أو التعرف على بصمة شخص معين أو سيارة من نوع معين.
* التحري: يُبحث في بيانات الصورة لإيجاد جسم معين. مثال: تحري وجود خلايا مريضة في صورة طبية، التحري عن وجود سيارة على طريق سريع.
* استرجاع الصورة بناء على المضمون: تُسترجع الصور المخزنة في قاعدة بيانات معينة، بناء على المحتوى والمفاهيم المشابهة للإستعلام من داخل قاعدة البيانات، من أشهر طرق الإستعلام في أنظمة ال CBIR هو الإستعلام بالصورة Query Image حيث تُدخل صورة ويكون الخرج مجموعة الصور المشابهة.

### الحركة

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

### إعادة بناء المشهد

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

### ترميم الصورة

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

## أنظمة الرؤية الحاسوبية

تختلف أنظمة الرؤية الحاسوبية اختلافًا كبيرًا وتتوزع بين أنظمة كبيرة ومعقدة تؤدي مهمات عامة وشاملة، وبين أنظمة صغيرة تؤدي مهمات مخصصة وبسيطة. ولكن معظم أنظمة الرؤية الحاسوبية تشمل العناصر التالية أساسيًا:
* الحصول على الصورة:يُحصل على الصورة باستخدام مستشعر صور أو أكثر، وهذه تتضمن العديد من كاميرات مستشعرات الضوء، مستشعرات المسافات، أجهزة التصوير الشعاعي، الرادار، كاميرات الموجات الفوق صوتية..الخ. وتبعاً لنوع المستشعر فإن الصورة الناتجة تكون ثنائية البعد أو ثلاثية البعد أو سلسلة صور متعاقبة. تكون قيمة كل بكسل في الصورة تابعة لقيمة شدة الإشعاع الضوئي في واحد أو أكثر من الحزم الضوئية (الصور الرمادية، أو الصور الملونة) ولكن أيضاً من الممكن أن تشير إلى العديد من القياسات الفيزيائية كالبعد، الامتصاص، أو انعكاس الموجات الكهرومغناطيسية.
* العمليات المسبقة: قبل تطبيق خوارزمية الرؤية الحاسوبية على بيانات الصورة من أجل الحصول على معلومات مفيدة، فإنه من الضروري إجراء عمليات مسبقة على البيانات من أجل تأكيد أن البيانات تحقق افتراضات محددة تابعة للخوارزمية. بعض الأمثلة على هذه العمليات هي:
** إعادة تحديد دقة الصورة من أجل تأكيد صحة نظام إحداثيات الصورة.
** التقليل من التشويش من أجل التأكد أن المستشعر لا يقوم بتقديم أي معلومات خاطئة.
** زيادة التباين من أجل التأكد من أن المعلومات المرغوبة سيكون من الممكن الحصول عليها.
* استحصال معالم الصورة Feature extraction:يُحصل على معالم الصورة على مستويات دقة مختلفة من بيانات الصورة ذاتها. تصنف هذه المعالم إلى:
** معالم عامة global features مثل اللون والشكل.
** معالم محلية local features كالزوايا كشف الزوايا، والبقع وSIFT features.
من الممكن الحصول على معالم معقدة أكثر متعلقة بالألوان والأشكال في الصورة.
* التحري-التقسيم Detection/Segmentation: تُحدد أي نقاط أو مناطق من الصورة هي المناطق الهامة من أجل العمليات اللاحقة. مثلاً:
** اختيار مجموعة من نقاط العلام المميزة.
** تقسيم ضورة أو أكثر تحتوي على المنطقة التي تحتوي الجسم المهتم به.
* العمليات عالية المستوى: عند هذه المرحلة تكون البيانات المدخلة هي مجموعة صغيرة من البيانات، على سبيل المثال مجموعة من النقاط أو منطقة من الصورة التي يشك أنها تحتوي الجسم موضوع الدراسة. والعمليات المتبقية تقوم بما يلي :
** التأكد من أن البيانات التي حُصل توافق افتراضات التطبيق المقترح.
** تقدير قيم المعاملات المعينة للتطبيق، كاتجاه الجسم أو حجم الجسم.
** تصنيف الأجسام التي تُعُرِّف عليها في عدة فئات.

## مراجع

* ↑ موفق دعبول؛ مروان البواب؛ نزار الحافظ؛ نوار العوا (2017)، قائمة مصطلحات المعلوماتية (بالعربية والإنجليزية)، دمشق: مجمع اللغة العربية بدمشق، ص. 74، QID:Q112244705
* ↑ ImageNet Large Scale Visual Recognition Challenge", 2014. نسخة محفوظة 22 يوليو 2017 على موقع واي باك مشين.
* ↑ Tim Morris (2004). Computer Vision and Image Processing. Palgrave Macmillan. ISBN:0-333-99451-5.
* ↑ E. Roy Davies (2005). Machine Vision: Theory, Algorithms, Practicalities. Morgan Kaufmann. ISBN:0-12-206093-8.