خطوات لتعلم مكتبة OpenCV في الرؤية الحاسوبية

مكتبة OpenCV مكتبة OpenCV (Open Source Computer Vision) هي مكتبة مجانية ومفتوحة المصدر لرؤية الحاسوب وخوارزميات التعلم الآلي. تم تطويرها في البداية بواسطة Intel في عام 1999. تم إصدارها كمصدر مفتوح في عام 2006. ومنذ ذلك الحين، تمت صيانتها بواسطة مجتمع من المطورين وهي الآن إحدى مكتبات رؤية الحاسوب الأكثر استخدامًا. لمعرفة ما هي الرؤية […]

شارك هذا المنشور

مكتبة OpenCV

مكتبة OpenCV (Open Source Computer Vision) هي مكتبة مجانية ومفتوحة المصدر لرؤية الحاسوب وخوارزميات التعلم الآلي. تم تطويرها في البداية بواسطة Intel في عام 1999. تم إصدارها كمصدر مفتوح في عام 2006. ومنذ ذلك الحين، تمت صيانتها بواسطة مجتمع من المطورين وهي الآن إحدى مكتبات رؤية الحاسوب الأكثر استخدامًا. لمعرفة ما هي الرؤية الحاسوبية يمكنك الانتقال إلى مقال الرؤية الحاسوبية .

لغة OpenCV

OpenCV مبرمجة بلغة C ++ وتوفر مجموعة كبيرة من الأدوات لمعالجة الصور ومقاطع الفيديو، مثل تغيير الحجم والقص وتحويلات مساحة اللون واكتشاف الحواف والمزيد.

تطبيقات الرؤية الحاسوبية

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

مميزات مكتبة OpenCV

1.     تسريع الأجهزة: يمكن لـ OpenCV استخدام تسريع الأجهزة لتسريع عمليات معينة ، مثل معالجة الصور والتعلم الآلي ، على الأنظمة التي تدعمها.

2.     دعم عبر الأنظمة الأساسية: OpenCV متعدد الأنظمة الأساسية ويمكن استخدامه على أنظمة التشغيل Windows وLinux و Mac و iOS و Android.

3.     روابط متعددة اللغات: OpenCV مكتوب بلغة C ++ وله روابط لمختلف لغات البرمجة ، مثل Python و Java و C #.

تثبيت مكتبة OpenCV

يمكن تثبيت OpenCV (Open Source Computer Vision) على أنظمة تشغيل وبيئات تطوير مختلفة. فيما يلي الخطوات العامة لتثبيت OpenCV:

يتطلب OpenCV تثبيت بعض مكتبات أخرى على جهاز الحاسوب أو على منصة برمجة مثل منصة أناكوندا. المكتبات الضرورية للتعامل مع مكتبة OpenCV هن:

·        NumPy

·        SciPy

·        Matplotlib (للبايثون)

·        Java Development Kit (للجافا).

بإمكانك تنزيل أحدث إصدار من OpenCV من الموقع الرسمي (https://opencv.org/) أو من مستودع GitHub (https://github.com/opencv/opencv).

·        قم بفك ضغط الملف الذي تم تنزيله على كمبيوترك.

·        بمجرد تثبيت OpenCV ، ستحتاج إلى إعداد بيئة التطوير الخاصة بك لاستخدام المكتبة. في Python ، يمكنك القيام بذلك عن طريق إضافة الأسطر التالية إلى أعلى نص Python الخاص بك:

في Java ، ستحتاج إلى إضافة مكتبة OpenCV إلى مسار المجلد الخاص بمشروعك واستيراد الفئات الضرورية في كود Java الخاص بك.

  • يمكنك اختبار التثبيت الخاص بك عن طريق تشغيل أحد نماذج البرامج المتوفرة مع OpenCV، أو عن طريق كتابة التعليمات البرمجية الخاصة بك باستخدام المكتبة.

ستعتمد الخطوات الدقيقة لتثبيت OpenCV وإعداده على نظام التشغيل وبيئة التطوير لديك.

البدء بالبرمجة! 

سوف نتطرق لبعض الأمثلة التي يمكننا الاستفادة من مكتبة OpenCV فيها ومن ضمنها:

1.     قراءة الصورة من ملف 

2.     حفظ الصورة في ملف 

3.     تغيير حجم الصورة

لتغيير حجم صورة ، قم بقياسها على طول كل محور (الارتفاع والعرض) ، مع مراعاة عوامل المقياس المحددة أو قم فقط بتعيين الارتفاع والعرض المطلوبين.

4.     قص صورة

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

5.     دوران الصورة (تغيير اتجاه الصورة)

لنبدأ بإلقاء نظرة على الكود أدناه الذي سيتم استخدامه لأداء تدوير الصورة

6.     تحويل الصورة من صيغة لونية إلى اخرى مثلا تحوليها من RGB إلى grayscale

7.     كشف الحواف (Edge Detection) 

يعد اكتشاف الحواف تقنية معالجة الصور، والتي تُستخدم لتحديد حدود (حواف) الكائنات أو المناطق داخل الصورة.

كيف يتم الكشف عن الحواف؟ 

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

·        Sobel Edge Detection

·        Canny Edge Detection

وهنا سنذكر مثال على خوارزمية Canny Edge Detection

8.     تحليل الأشكال في الصورة  عن طريق رسم الحدود 

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

الصورة التالية لرسم التحديد فقط والتي بعدها توضح مربعات تحيط بالأشكال التي تم اكتشافها وعددها فوق 589

9.     تحديد الوجه 

مكتبة OpenCV من مميزاتها أيضا تمكننا من تحديد الوجوه في الصورة، نطبق باستخدام مصنف Haar cascading classifier.

في هذا المثال رسمنا مربعًا أزرق (الصندوق المحيط) حول الوجه في الصورة.

ملخص

  • تعريف أدوات مكتبة OpenCV بلغة بايثون، وبعض المهام الأساسية للمكتبة في معالجة الصور والرؤية الحاسوبية.
  • تطبيقات الرؤية الحاسوبية مثل التعرف على الأشياء، تحليل الصور الطبية، المركبات ذاتية القيادة.
  • اختبار عدة أدوات مثل قص الصورة، تدوير الصورة، كشف الحواف عن طريق تأثير كاني، وتحديد الأشكال والتعرف على الوجوه من خلال مصنف HaaR Cascade.

Author

  • عبدالرحمن المصري

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

    View all posts

الدروس:

Uncategorized

الدرس الرابع | التعرف على الوجوه

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

دورات تعليمية

الدرس الثالث | المرشحات ونواة الالتفاف

الدرس الثالث : المرشحات والنواة الالتفافية محتويات هذا الدرس: المرشحات النواة الالتفافية عملية الترشيح شحذ الصورة تشويش الصورة تحديد الحواف الدروس الأخرى Author نور عمار

دورات أخرى:

دورات تعليمية

الدرس الثالث | المرشحات ونواة الالتفاف

الدرس الثالث : المرشحات والنواة الالتفافية محتويات هذا الدرس: المرشحات النواة الالتفافية عملية الترشيح شحذ الصورة تشويش الصورة تحديد الحواف الدروس الأخرى Author نور عمار

Uncategorized

الدرس الثاني | مساحات الألوان في الصورة

الدرس الثاني: مساحات الألوان في الصورة محتويات هذا الدرس: مساحات ألوان الصورة شرح مبادئ الألوان في الصور تحويل الألوان بين الصور تحويل الصورة الملونة إلى