التعرف على الوجوه باستخدام Python

 

التعرف على الوجوه باستخدام Python

مقدمة

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

في هذه المقالة، سنستعرض كيفية إعداد برنامج يقوم بالتعرف على الوجوه في الوقت الفعلي باستخدام مكتبات OpenCV وface_recognition. 

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

ما ستحتاجه

قبل أن نبدأ، تأكد من توفر التالي:

  1. جهاز كمبيوتر مزود بكاميرا.
  2. تثبيت لغة بايثون على نظامك.
  3. المكتبات الضرورية في بايثون:
    • OpenCV (لالتقاط الفيديو ومعالجة الصور)
    • face_recognition (للتعرف على الوجوه)

خطوات التنفيذ

1. إعداد مجموعة البيانات

أول خطوة هي تجهيز مجموعة من الصور للأشخاص الذين تريد التعرف عليهم.

 قم بإنشاء مجلد جديد على جهاز الكمبيوتر الخاص بك واسمه "dataset"، وداخل هذا المجلد قم بإنشاء مجلد لكل شخص تريد التعرف عليه. 

ضع أكثر من صورة لهذا الشخص داخل المجلد الخاص به.

2. تحميل الصور المشهورة وتشفير الوجوه

الخطوة التالية هي قراءة هذه الصور وتشفير الوجوه باستخدام مكتبة face_recognition. 

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

هذا التشفير سيساعدنا لاحقًا في مقارنة الوجوه الجديدة بالوجوه المحفوظة لدينا.

3. التعرف على الوجوه في الصور

الآن، نحن جاهزون للتعرف على الوجوه. 

عند التقاط صورة جديدة باستخدام الكاميرا، نقوم بتحويل الصورة من تنسيق BGR (المستخدم في OpenCV) إلى RGB (المستخدم في face_recognition).

 بعد ذلك، نحدد مواقع الوجوه في الصورة ونقوم بتشفيرها.

4. مقارنة الوجوه الجديدة بالوجوه المحفوظة في قاعدة البيانات

لكل وجه جديد نكتشفه في الصورة، نقارنه بالوجوه المشفرة لدينا. نستخدم دالة مقارنة من مكتبة face_recognition لتحديد ما إذا كان هناك تطابق. إذا وجدنا تطابقًا، نحدد اسم الشخص المطابق ونضع إطارًا حول وجهه في الصورة مع اسمه.

5. عرض الفيديو من الكاميرا

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

6. إنهاء البرنامج

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

عند الانتهاء، نتأكد من تحرير الكاميرا وإغلاق جميع النوافذ المفتوحة.

خاتمة

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

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

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


للحصول على الكود كامل  انقرهنا




AHMED A. A. ALFARRA


تعليقات

المشاركات الشائعة من هذه المدونة

استخدام Webots و MediaPipe للتحكم في حركة الروبوت بواسطة وضعية الرأس

التحكم بالفأرة بالفم باستخدام OpenCV و Mediapipe و PyAutoGUI