رؤية حاسوبية

من ويكيبيديا، الموسوعة الحرة
اذهب إلى: تصفح، ‏ ابحث

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

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

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

تندرج المجالات التالية تحت مجال الرؤية الحاسوبية:

المهام الأساسية للرؤية الحاسوبية[عدل]

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

التعرف[عدل]

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

  • التعرف Recognition : يتم التعرف على واحد أو البعض من الأجسام التي تم تعليمها مسبقاً للحاسوب، غالباً بأوضاعها المختلفة أو بزاويا مختلفة للكاميرا.
  • التحديد Identification: تحديد مطابق وحيد للجسم المعرف. مثلاً: تحديد وجه شخص معين أو التعرف على بصمة شخص معين أو سيارة من نوع معين.
  • التحري Detection:يتم البحث في بيانات الصورة لإيجاد جسم معين. مثال: تحري وجود خلايا مريضة في صورة طبية، التحري عن وجود سيارة على طريق سريع.
  • استرجاع الصورة بناء على المضمون Content-based_image_retrieval: یتم استراجاع الصور المخزنة في قاعدة بيانات معينة, بناء على المحتوى و المفاهيم المشابهة للإستعلام من داخل قاعدة البيانات,من أشهر طرق الإستعلام في أنظمة ال CBIR هو الإستعلام بالصورة Query Image حيث يتم ادخال صورة و يكون الخرج مجموعة الصور المشابهة.

الحركة[عدل]

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

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

بناء المشهد Scene reconstruction[عدل]

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

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

ترميم الصورة Image restoration[عدل]

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

أنظمة الرؤية الحاسوبية[عدل]

تختلف أنظمة الرؤية الحاسوبية بشكل كبير وتتوزع بين أنظمة كبيرة ومعقدة تؤدي مهمات عامة وشاملة، وبين أنظمة صغيرة تؤدي مهمات مخصصة وبسيطة. ولكن معظم أنظمة الرؤية الحاسوبية تشمل العناصر التالية بشكل أساسي:

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

من الممكن الحصول على معالم معقدة أكثر متعلقة بالألوان والأشكال في الصورة.

  • التحري-التقسيم Detection/Segmentation: يتم تحديد أي نقاط أو مناطق من الصورة هي المناطق الهامة من أجل العمليات اللاحقة. مثلاً:
    • اختيار مجموعة من نقاط العلام المميزة.
    • تقسيم ضورة أو أكثر تحتوي على المنطقة التي تحتوي الجسم المهتم به.
  • العمليات عالية المستوى: عند هذه المرحلة تكون البيانات المدخلة هي مجموعة صغيرة من البيانات، على سبيل المثال مجموعة من النقاط أو منطقة من الصورة التي يشك أنها تحتوي الجسم موضوع الدراسة. والعمليات المتبقية تقوم بما يلي :
    • التأكد من أن البيانات التي تم الحصول عليها توافق افتراضات التطبيق المقترح.
    • تقدير قيم المعاملات المعينة للتطبيق، كاتجاه الجسم أو حجم الجسم.
    • تصنيف الأجسام التي تم التعرف عليها في عدة فئات.