विषयसूची:
- चरण 1: चीजें जो आपको चाहिए
- चरण 2: ओपनसीवी-परिचय और स्थापना
- चरण 3: रीयल टाइम वीडियो में चेहरे का पता लगाना और पहचानना
- चरण 4: कोड चलाना
वीडियो: ओपनसीवी चेहरा पहचान: 4 कदम
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:21
स्मार्ट फोन, कई इलेक्ट्रॉनिक गैजेट जैसे कई अनुप्रयोगों में चेहरे की पहचान आजकल काफी आम बात है। इस तरह की तकनीक में बहुत सारे एल्गोरिदम और टूल्स इत्यादि शामिल हैं। रास्पबेरी पाई और ओपन सोर्स कंप्यूटर विजन जैसे कुछ एम्बेडेड एम्बेडेड एसओसी प्लेटफॉर्म का उपयोग करता है। ओपनसीवी जैसे पुस्तकालय, अब आप अपने स्वयं के अनुप्रयोगों जैसे सुरक्षा प्रणालियों में चेहरा पहचान जोड़ सकते हैं।
इस प्रोजेक्ट में, मैं आपको बताऊंगा कि रास्पबेरी पाई का उपयोग करके चेहरे की पहचान कैसे करें और हमने व्यक्ति का नाम प्रदर्शित करने के लिए arduino+Lcd का उपयोग किया है।
चरण 1: चीजें जो आपको चाहिए
1.रास्पबेरी पीआई
2.आर्डिनो यूएनओ / नैनो
3.16x2 एलसीडी डिस्प्ले
4. RASPI-CAMERA / WEBcam (बेहतर परिणामों के लिए मुझे वेबकैम पसंद है)
चरण 2: ओपनसीवी-परिचय और स्थापना
OpenCV (ओपन सोर्स कंप्यूटर विज़न लाइब्रेरी) एक बहुत ही उपयोगी लाइब्रेरी है - यह टेक्स्ट रिकग्निशन, फेस रिकग्निशन, ऑब्जेक्ट डिटेक्शन, डेप्थ मैप्स का निर्माण और मशीन लर्निंग जैसी कई उपयोगी सुविधाएँ प्रदान करती है।
यह लेख आपको दिखाएगा कि रास्पबेरी पाई पर ओपनसीवी और अन्य पुस्तकालयों को कैसे स्थापित किया जाए जो ऑब्जेक्ट डिटेक्शन और अन्य प्रोजेक्ट करते समय काम आएगा। वहां से, हम सीखेंगे कि ऑब्जेक्ट रिकग्निशन और मशीन लर्निंग प्रोजेक्ट को निष्पादित करके इमेज और वीडियो ऑपरेशंस कैसे करें। विशेष रूप से, हम एक छवि में चेहरों का पता लगाने के लिए एक सरल कोड लिखेंगे।
ओपनसीवी क्या है?
OpenCV एक ओपन सोर्स कंप्यूटर विजन और मशीन लर्निंग सॉफ्टवेयर लाइब्रेरी है। ओपनसीवी एक बीएसडी लाइसेंस के तहत जारी किया गया है जो इसे अकादमिक और व्यावसायिक उपयोग दोनों के लिए निःशुल्क बनाता है। इसमें C++, Python और Java इंटरफेस हैं और यह Windows, Linux, Mac OS, iOS और Android को सपोर्ट करता है। OpenCV को कम्प्यूटेशनल दक्षता और वास्तविक समय के अनुप्रयोगों पर एक मजबूत फोकस के लिए डिज़ाइन किया गया था।
रास्पबेरी पाई पर ओपनसीवी कैसे स्थापित करें?
OpenCV को स्थापित करने के लिए, हमें Python को स्थापित करना होगा। चूंकि रास्पबेरी पाई पायथन के साथ पहले से लोड है, हम सीधे ओपनसीवी स्थापित कर सकते हैं।
यह सुनिश्चित करने के लिए कि आपका रास्पबेरी पाई अप टू डेट है और अपने रास्पबेरी पाई पर स्थापित पैकेजों को नवीनतम संस्करणों में अपडेट करने के लिए नीचे दिए गए कमांड टाइप करें।
सुडो एपीटी-अपडेट प्राप्त करेंसुडो एपीटी-अपग्रेड प्राप्त करें
अपने रास्पबेरी पाई पर ओपनसीवी के लिए आवश्यक पैकेज स्थापित करने के लिए टर्मिनल में निम्नलिखित कमांड टाइप करें।
sudo apt libatlas3-base libsz2 libharfbuzz0b libtiff5 libjasper1 libilmbase12 libopenexr22 libilmbase12 libgstreamer1.0-0 libavcodec57 libavformat57 libavutil55 libswscale4 libqtgui4 libqt4-test libqtcore4 स्थापित करें
अपने रास्पबेरी पाई पर पायथन 3 के लिए ओपनसीवी 3 स्थापित करने के लिए निम्न कमांड टाइप करें, पीआईपी 3 हमें बताता है कि ओपनसीवी पायथन 3 के लिए स्थापित हो जाएगा।
sudo pip3 opencv-contrib-python libwebp6 स्थापित करें
अब, OpenCV स्थापित किया जाना चाहिए।
(यदि कोई त्रुटि हुई हो: फिर भी आप नीचे दिए गए लिंक का अनुसरण करके ऐसा कर सकते हैं
https://www.instructables.com/id/Raspberry-Pi-Hand…)
अब जल्दी मत करो हमें यह जांचना होगा कि यह ठीक से स्थापित किया गया था या नहीं
इसके द्वारा अपने opencv का परीक्षण करें:
1. अपने टर्मिनल पर जाएं और "पायथन" टाइप करें
2.फिर "import cv2" टाइप करें।
3.फिर "cv2._version_" टाइप करें।
फिर इन पुस्तकालयों को स्थापित करें
pip3 अजगर-सुन्न स्थापित करें
pip3 अजगर-matplotlib स्थापित करें
किसी छवि में चेहरों का पता लगाने के लिए परीक्षण कोड:
आयात cv2
faceCascade = cv2. CascadeClassifier("haarcascade_frontalface_default.xml");
छवि = cv2.imread('आपकी फ़ाइल का नाम') #example cv2.imread('home/pi/Desktop/filename.jpg')
आपको आउटपुट मिलेगा जैसे कि तस्वीर में मौजूद लोगों के चेहरों पर एक चौकोर बक्से बने हैं।
चरण 3: रीयल टाइम वीडियो में चेहरे का पता लगाना और पहचानना
आयात cv2
np. के रूप में numpy आयात करें
आयात ओएस
आयात धारावाहिक
ser = serial. Serial('/dev/ttyACM0', 9600, timeout=1) # /dev/ttyACM0 आपके मामले में बदल सकता है, arduino पर निर्भर करता है
cascadePath = "haarcascade_frontalface_default.xml"
faceCascade = cv2. CascadeClassifier(cascadePath)
पहचानकर्ता = cv2.face.createLBPHFaceRecognizer ()
छवियां =
लेबल=
os.listdir ('डेटासेट') में फ़ाइल नाम के लिए:
im=cv2.imread('डेटासेट/'+फ़ाइल नाम, 0)
छवियां। संलग्न करें (आईएम)
लेबल.एपेंड (int(filename.split('.')[0][0]))
#प्रिंट फ़ाइल नाम
name_file=open('labels.txt')
name=names_file.read().split('\n')
पहचानकर्ता। ट्रेन (छवियां, एनपी। सरणी (लेबल))
प्रिंट 'ट्रेनिंग हो गया।.. '
फ़ॉन्ट = cv2. FONT_
HERSHEY_SIMPLEXcap=cv2. VideoCapture(1) # आपका वीडियो डिवाइस
lastRes=''गिनती=0
जबकि(1):
_, फ्रेम = कैप। पढ़ें ()
ग्रे=cv2.cvtColor(फ्रेम, cv2. COLOR_BGR2GRAY)
चेहरे = faceCascade.detectMultiScale(ग्रे, १.३, ५)
गिनती+=1
फलकों में (x, y, w, h) के लिए:
cv2.rectangle(फ्रेम, (x, y), (x+w, y+h), (255, 0, 0), 2)
अगर गिनती> 20: रेस = नाम [पहचानकर्ता। भविष्यवाणी (ग्रे [वाई: वाई + एच, एक्स: एक्स + डब्ल्यू]) -1]
अगर res!=lastRes:
lastRes=res
अंतिम प्रिंट प्रिंट करें
ser.write(lastRes)
गिनती = 0
टूटना
cv2.imshow ('फ्रेम', फ्रेम)
के = 0xFF और cv2.waitKey(10)
अगर कश्मीर == 27:
टूटना
कैप.रिलीज ()
सेर.क्लोज़ ()
cv2.destroyAllWindows ()
चरण 4: कोड चलाना
1. पिछले चरण में संलग्न फाइलों को डाउनलोड करें
2. अपने धूसर फ़ोटो (6 चित्र/नमूने…..) को अपने डेटासेट फ़ोल्डर में कॉपी करें
1.टॉम क्रूज़ 1_1, 1_2, 1_3, 1_4, 1_5, 1_6 (अधिक खुले डेटासेट फ़ोल्डर के लिए डेटा सेट छवि संख्या)
2. ब्रैड पिट-2_1, 2_2, 2_3, 2_4, 2_5, 2_6
3. सिंह-3_1, 3_2, 3_3, 3_4, 3_5, 3_6
4. आयरनमैन4_1, 4_2, 4_3, 4_4, 4_5, 4_6
उपरोक्त की तरह आप संबंधित व्यक्तियों के लिए लेबल जोड़ सकते हैं,
इसलिए यदि पाई 1_1, 1_2, 1_3, 1_4, 1_5, 1_6 के बीच किसी भी चेहरे का पता लगाता है, तो इसे टॉम क्रूज़ के रूप में लेबल किया गया था, इसलिए कृपया तस्वीरें अपलोड करते समय सावधान रहें ……………
और फिर अपने arduino को अपने रास्पबेरी पाई से कनेक्ट करें और main.py codeser = serial. Serial('/dev/ttyACM0', 9600, timeout=1) में परिवर्तन करें। सभी डाउनलोड की गई फ़ाइलें (main.py, डेटासेट फ़ोल्डर) डालें, एक फ़ोल्डर में haarcascade_frontalface_default.xml।)
3.अब रास्पि-टर्मिनल खोलें "sudo python main.py" द्वारा अपना कोड चलाएं
सिफारिश की:
MATLAB आसान चेहरा पहचान: 4 कदम
MATLAB ईज़ी फेस डिटेक्शन: इस इंस्ट्रक्शंस का मुख्य उद्देश्य यह दिखाना है कि इमेज प्रोसेसिंग कितनी आसान होगी, MATLABFace डिटेक्शन और ट्रैकिंग की मदद से एक महत्वपूर्ण और सक्रिय शोध क्षेत्र रहा है, इसलिए मैं समझाने जा रहा हूँ इसे बुद्धि से कैसे किया जा सकता है
कोविड -19 मास्क जो आप पर चिल्लाता है यदि आप अपना चेहरा छूते हैं: 4 कदम
कोविड -19 मास्क जो आप पर चिल्लाता है यदि आप अपना चेहरा छूते हैं: अपने चेहरे को छूना बंद नहीं कर सकते? इन इलेक्ट्रॉनिक्स को आपके पास मौजूद मास्क पर चिपका दें और आपको ऐसा न करने के लिए लगातार याद दिलाया जाएगा
कंप्यूटर विजन (ओपनसीवी) का उपयोग कर स्टार पहचान: 11 कदम (चित्रों के साथ)
कंप्यूटर विज़न (ओपनसीवी) का उपयोग करते हुए स्टार रिकग्निशन: यह निर्देश आपको एक छवि में स्टार पैटर्न की स्वचालित रूप से पहचान करने के लिए कंप्यूटर विज़न प्रोग्राम बनाने का तरीका बताएगा। यह विधि प्रशिक्षित HAAR कैस्केड का एक सेट बनाने के लिए OpenCV (ओपन-सोर्स कंप्यूटर विजन) लाइब्रेरी का उपयोग करती है जिसे
चेहरा पहचान और पहचान - ओपनसीवी पायथन और अरुडिनो का उपयोग करके Arduino फेस आईडी .: 6 कदम
चेहरा पहचान और पहचान | ओपनसीवी पायथन और अरुडिनो का उपयोग करते हुए Arduino फेस आईडी: चेहरे की पहचान AKA फेस आईडी आजकल मोबाइल फोन पर सबसे महत्वपूर्ण विशेषताओं में से एक है। तो, मेरा एक प्रश्न था "क्या मेरे पास अपने Arduino प्रोजेक्ट के लिए एक फेस आईडी हो सकता है" और इसका उत्तर हां है… मेरी यात्रा इस प्रकार शुरू हुई: चरण 1: हम तक पहुंच
चेहरा पहचान+पहचान: 8 कदम (चित्रों के साथ)
फेस डिटेक्शन + रिकग्निशन: यह एक कैमरे से ओपनसीवी के साथ फेस डिटेक्शन और रिकग्निशन चलाने का एक सरल उदाहरण है। नोट: मैंने इस परियोजना को सेंसर प्रतियोगिता के लिए बनाया है और मैंने कैमरे का उपयोग सेंसर के रूप में ट्रैक और पहचान के लिए किया है। तो, हमारा लक्ष्य इस सत्र में, 1. एनाकोंडा स्थापित करें