جدول المحتويات:

اكتشاف الوجه والعين باستخدام Raspberry Pi Zero و Opencv: 3 خطوات
اكتشاف الوجه والعين باستخدام Raspberry Pi Zero و Opencv: 3 خطوات

فيديو: اكتشاف الوجه والعين باستخدام Raspberry Pi Zero و Opencv: 3 خطوات

فيديو: اكتشاف الوجه والعين باستخدام Raspberry Pi Zero و Opencv: 3 خطوات
فيديو: ESP32-CAM erROR ENROLL Face Detection, Face Recognation (Subtittled) 2024, يونيو
Anonim
اكتشاف الوجه والعين باستخدام Raspberry Pi Zero و Opencv
اكتشاف الوجه والعين باستخدام Raspberry Pi Zero و Opencv

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

الأشياء المطلوبة:

1. توت العليق بي زيرو

2. بطاقة SD

3. وحدة الكاميرا

ستستغرق عملية التثبيت هذه أكثر من 13 ساعة ، لذا خطط للتثبيت وفقًا لذلك

الخطوة 1: قم بتنزيل وتثبيت Raspbian Image

قم بتنزيل raspbian stretch مع صورة سطح المكتب من موقع Raspberry Pi

www.raspberrypi.org/downloads/raspbian

ثم أدخل بطاقة الذاكرة في الكمبيوتر المحمول الخاص بك وقم بحرق صورة raspbian باستخدام أداة الحفر

قم بتنزيل ethcher من هنا

بعد حرق الصورة ، قم بتوصيل بطاقة الذاكرة في raspberry pi وقم بتشغيل التوت

الخطوة 2: إعداد Opencv

بعد عملية التمهيد ، افتح Terminal واتبع الخطوات لتثبيت opencv وإعداد بيئة افتراضية لـ opencv

خطوات:

1. في كل مرة تبدأ فيها أي تثبيت جديد ، من الأفضل ترقية الحزم الحالية

sudo apt-get update

sudo apt-get Upgrade

الوقت: 2 م و 30 ثانية

2. ثم قم بتثبيت أدوات المطور

sudo apt-get install build-ضروري cmake pkg-config

الوقت: 50 ثانية

3. احصل الآن على حزم الإدخال / الإخراج اللازمة للصور

$ sudo apt-get install libjpeg-dev libtiff5-dev libjasper-dev libpng12-dev

الوقت: 37 ثانية

4. حزم إدخال / إخراج الفيديو

$ sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev

sudo apt-get install libxvidcore-dev libx264-dev

الوقت: 36 ثانية

5. قم بتثبيت GTK dvelopment

sudo apt-get install libgtk2.0-dev

الوقت: 2 م و 57 ث

6. حزم التحسين

sudo apt-get install libatlas-base-dev gfortran

الوقت: 1 دقيقة

7. الآن قم بتثبيت python 2.7 إذا لم يكن موجودًا. في حالتي ، تم تثبيته بالفعل ولكن لا يزال التحقق

sudo apt-get install python2.7-dev

الوقت: 55 ثانية

8. الآن قم بتنزيل مصدر opencv وفك ضغطه

$ cd ~

$ wget -O opencv.zip

بفك ضغط $ opencv.zip

الوقت: 1 دقيقة و 58 ثانية

9. تحميل مستودع opencv_contrib

$ wget -O opencv_contrib.zip

بفك ضغط $ opencv_contrib.zip

الوقت: 1m 5sec

10. الآن تم توسيع opencv و opencv_contrib وحذف ملفاتهم المضغوطة لتوفير بعض المساحة

$ rm opencv.zip opencv_contrib.zip

الوقت: 2 ثانية

11. الآن قم بتثبيت النقطة

$ wget

$ sudo python get-pip.py

الوقت: 50 ثانية

12. قم بتثبيت Virtualenv و virtualenvwrapper ، وهذا سيسمح لنا بإنشاء بيئات Python منفصلة ومعزولة لمشاريعنا المستقبلية

sudo pip قم بتثبيت Virtualenv virtualenvwrapper

$ sudo rm -rf ~ /.cache / pip

الوقت: 30 ثانية

13. بعد ذلك التثبيت ، افتح الملف الشخصي ~ /

نانو $ ~ /. الملف الشخصي

وأضف هذه الأسطر إلى أسفل الملف

# virtualenv و virtualenvwrapper

تصدير WORKON_HOME = $ HOME /.virtualenvs source /usr/local/bin/virtualenvwrapper.sh

الآن مصدر ملف التعريف ~ /. لإعادة تحميل التغييرات

مصدر $ ~ /. Profile

الوقت: 20 ثانية

14. الآن قم بإنشاء بيئة افتراضية من نوع python تسمى cv

$ mkvirtualenv السيرة الذاتية

الوقت: 10 ثوانٍ

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

تثبيت $ pip numpy

الوقت: 36 م

16. الآن قم بتجميع وتثبيت opencv وتأكد من أنك في بيئة افتراضية للسيرة الذاتية باستخدام هذا الأمر

$ workon cv

ثم قم بإعداد البناء باستخدام Cmake

$ cd ~ / opencv-3.0.0 /

$ mkdir build $ cd build $ cmake -D CMAKE_BUILD_TYPE = RELEASE / -D CMAKE_INSTALL_PREFIX = / usr / local / -D INSTALL_C_EXAMPLES = ON / -D INSTALL_PYTHON_EXAMPLES = ON / -D OPENCV_EXTRA_H.0 D BUILD_EXAMPLES = ON -D ENABLE_PRECOMPILED_HEADERS = إيقاف..

الوقت: 5 دقائق

17. الآن البناء هو الإعداد ، تشغيل جعل لبدء عملية التجميع. سيستغرق هذا بعض الوقت حتى تتمكن من ترك هذا يعمل بين عشية وضحاها

$ صنع

في حالتي ، ألقى "make" لي خطأً واحدًا يتعلق بـ ffpmeg. بعد الكثير من البحث وجدت الحل. انتقل إلى مجلد opencv 3.0 ثم الوحدات النمطية ثم داخل videoio انتقل إلى src واستبدل cap_ffpmeg_impl.hpp بهذا الملف

github.com/opencv/opencv/blob/f88e9a748a37e5df00912524e590fb295e7dab70/modules/videoio/src/cap_ffmpeg_impl.hpp وقم بتشغيل Make مرة أخرى

الوقت: 13 ساعة

إذا تم تجميعه دون أي خطأ ، فثبته على Raspberry Pi باستخدام:

sudo $ قم بالتثبيت

sudo ldconfig $

الوقت: دقيقتان و 30 ثانية

18. بعد إكمال الخطوة 17 ، يجب أن تكون ارتباطات opencv الخاصة بك في /usr/local/lib/python-2.7/site-packages. تحقق من ذلك باستخدام هذا

$ ls -l /usr/local/lib/python2.7/site-packages

المجموع 1549 -rw-r - r-- 1 root staff 1677024 3 ديسمبر 09:44 cv2.so

19. لم يتبق الآن سوى رابط sym-link ملف cv2.so في دليل حزم الموقع لبيئة السيرة الذاتية

$ cd ~ /.virtualenvs / cv / lib / python2.7 / site -packs /

$ ln -s /usr/local/lib/python2.7/site-packages/cv2.so cv2.so

20. تحقق من تثبيت opencv الخاص بك باستخدام:

$ workon cv

$ python >>> استيراد cv2 >>> cv2._ version_ '3.0.0' >>>

الخطوة 3: كشف الوجه والعين

كشف الوجه والعين
كشف الوجه والعين
كشف الوجه والعين
كشف الوجه والعين

الآن دعنا نحاول اكتشاف الوجه

أول شيء يجب فعله هو تمكين الكاميرا من خلال استخدام:

sudo raspi-config. $

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

الآن قم بتثبيت picamera [مجموعة] في بيئة السيرة الذاتية. لهذا تأكد من أنك في بيئة السيرة الذاتية. إذا أعدت تشغيل pi ، فلكي تدخل مرة أخرى في بيئة السيرة الذاتية ، اكتب فقط:

مصدر $ ~ /. Profile

$ workon cv

الآن قم بتثبيت كاميرا pi

تثبيت $ pip "picamera [مجموعة]"

قم بتشغيل face-detection-test.py bu باستخدام:

بيثون اختبار الكشف عن الوجه

إذا ألقى أي خطأ فقط اكتب هذا الأمر قبل تنفيذ البرنامج النصي

سودو modprobe bcm2835-v4l2

أنت الآن على ما يرام لاكتشاف الوجه. جرب وشارك نتائجك

هتافات!

موصى به: