विषयसूची:

पायथन का उपयोग करके ओपनसीवी इमेज क्लासिफायर बनाएं: 7 कदम
पायथन का उपयोग करके ओपनसीवी इमेज क्लासिफायर बनाएं: 7 कदम

वीडियो: पायथन का उपयोग करके ओपनसीवी इमेज क्लासिफायर बनाएं: 7 कदम

वीडियो: पायथन का उपयोग करके ओपनसीवी इमेज क्लासिफायर बनाएं: 7 कदम
वीडियो: Face Recognition Python Project | Face Detection Using OpenCV Python - Complete Tutorial 2024, जुलाई
Anonim
पायथन का उपयोग करके ओपनसीवी इमेज क्लासिफायर बनाएं
पायथन का उपयोग करके ओपनसीवी इमेज क्लासिफायर बनाएं

पाइथन और ओपनसीवी में हार क्लासिफायर एक मुश्किल लेकिन आसान काम है।

हम अक्सर छवि पहचान और वर्गीकरण में समस्याओं का सामना करते हैं। सबसे अच्छा समाधान अपना खुद का क्लासिफायरियर बनाना है। यहां हम कुछ कमांड और लंबे लेकिन सरल पायथन प्रोग्राम के साथ अपना इमेज क्लासिफायर बनाना सीखते हैं

वर्गीकरण के लिए बड़ी संख्या में नकारात्मक और सकारात्मक छवियों की आवश्यकता होती है नकारात्मक में आवश्यक वस्तु नहीं होती है जबकि सकारात्मक वह होती है जिसमें वस्तु का पता लगाया जाता है।

लगभग 2000 नकारात्मक और सकारात्मक की आवश्यकता है। पायथन प्रोग्राम छवि को ग्रेस्केल और उपयुक्त आकार में परिवर्तित करता है ताकि क्लासिफायर को बनाने में इष्टतम समय लगे।

चरण 1: आवश्यक सॉफ़्टवेयर

अपने स्वयं के क्लासिफायरियर के निर्माण के लिए आपको निम्नलिखित सॉफ़्टवेयर की आवश्यकता है

1) ओपनसीवी: मैंने जिस संस्करण का उपयोग किया है वह 3.4.2 है। संस्करण इंटरनेट पर आसानी से उपलब्ध है।

2) पायथन: इस्तेमाल किया गया संस्करण 3.6.2 है। python.org से डाउनलोड किया जा सकता है

इसके अलावा आपको एक वेबकैम की आवश्यकता है (बेशक)।

चरण 2: छवियों को डाउनलोड करना

पहला कदम उस वस्तु की स्पष्ट तस्वीर लेना है जिसे वर्गीकृत किया जाना है।

आकार बहुत बड़ा नहीं होना चाहिए क्योंकि कंप्यूटर को प्रोसेस होने में अधिक समय लगता है। मैंने 50 गुणा 50 आकार लिया।

आगे हम नकारात्मक और सकारात्मक चित्र डाउनलोड करते हैं। आप उन्हें ऑनलाइन पा सकते हैं। लेकिन हम 'https://image-net.org' से चित्र डाउनलोड करने के लिए पायथन कोड का उपयोग करते हैं।

आगे हम छवियों को ग्रेस्केल और सामान्य आकार में परिवर्तित करते हैं। यह कोड में भी लागू किया गया है। कोड किसी भी दोषपूर्ण छवि को भी हटा देता है

अब तक आपकी निर्देशिका में ऑब्जेक्ट इमेज होनी चाहिए जैसे कि watch5050-j.webp

यदि डेटा फ़ोल्डर नहीं बनाया गया है, तो इसे मैन्युअल रूप से करें

पाइथॉन कोड.py फ़ाइल में दिया गया है

चरण 3: OpenCV में सकारात्मक नमूने बनाना

OpenCV में सकारात्मक नमूने बनाना
OpenCV में सकारात्मक नमूने बनाना
OpenCV में सकारात्मक नमूने बनाना
OpenCV में सकारात्मक नमूने बनाना

अब opencv_createsamples निर्देशिका में जाएं और उपरोक्त सभी सामग्री जोड़ें

कमांड प्रॉम्प्ट में opencv_createsamples और opencv_traincascade ऐप्स खोजने के लिए C:\opencv342\build\x64\vc14\bin पर जाएं

अब निम्नलिखित कमांड निष्पादित करें

opencv_createsamples -img watch5050-j.webp

यह आदेश वस्तु 1950 के सकारात्मक नमूनों को सटीक बनाने के लिए है और विवरण फ़ाइल जानकारी। सकारात्मक छवियों का विवरण इस तरह होना चाहिए 0001_0014_0045_0028_0028-j.webp

अब फ़ोल्डर में शामिल है

जानकारी

नेगेटिव इमेज फोल्डर

bg.txt फ़ाइल

खाली डेटा फ़ोल्डर

चरण 4: सकारात्मक वेक्टर फ़ाइल बनाना

सकारात्मक वेक्टर फ़ाइल बनाना
सकारात्मक वेक्टर फ़ाइल बनाना

अब सकारात्मक वेक्टर फ़ाइल बनाएं जो सकारात्मक छवियों को डिक्रिप्शन फ़ाइल का पथ प्रदान करती है

निम्न आदेश का प्रयोग करें

opencv_createsamples -info info/info.lst -num 1950 -w 20 -h 20 -vec positives.vec

अब तक निर्देशिका की सामग्री निम्नलिखित होनी चाहिए:

--नेग

---- negimages.jpg

--opencv

--जानकारी

--आंकड़े

--positives.vec

--bg.txt

--watch5050-j.webp

चरण 5: क्लासिफायर का प्रशिक्षण

क्लासिफायर का प्रशिक्षण
क्लासिफायर का प्रशिक्षण
क्लासिफायर का प्रशिक्षण
क्लासिफायर का प्रशिक्षण
क्लासिफायर का प्रशिक्षण
क्लासिफायर का प्रशिक्षण

अब हार कैस्केड को प्रशिक्षित करते हैं और एक्सएमएल फाइल बनाते हैं

निम्न आदेश का प्रयोग करें

opencv_traincascade -डेटा डेटा -vec सकारात्मक.vec -bg bg.txt -numPos 1800 -numNeg 900 -numStages 10 -w 20 -h 20

चरण 10 हैं चरणों को बढ़ाना अधिक प्रसंस्करण लेता है लेकिन क्लासिफायरियर अधिक कुशल है।

अब harcascade बनाया गया है इसे पूरा करने में लगभग दो घंटे लगते हैं डेटा फ़ोल्डर खोलें वहां आपको cascade.xml मिलेगा यह क्लासिफायरियर बनाया गया है

चरण 6: क्लासिफायर का परीक्षण

डेटा फ़ोल्डर में फ़ाइलें हैं जैसा कि ऊपर की छवि में दिखाया गया है।

क्लासिफायरियर के निर्माण के बाद हम देखते हैं कि क्लासिफायर काम कर रहा है या नहीं, object_detect.py प्रोग्राम चलाकर। python निर्देशिका में classifier.xml फ़ाइल रखना न भूलें।

चरण 7: विशेष धन्यवाद

मैं यहां सेंटडेक्स को धन्यवाद देना चाहता हूं जो एक महान पायथन प्रोग्रामर है।

ऊपर बताए गए नाम के साथ उनका एक youtube नाम है और जिस वीडियो ने मेरी बहुत मदद की उसका यह लिंक है

अधिकांश कोड सेंडडेक्स से कॉपी किए गए हैं। हालांकि सेंडडेक्स से बहुत मदद मिली, फिर भी मुझे बहुत सारी समस्याओं का सामना करना पड़ा। मैं सिर्फ अपना अनुभव साझा करना चाहता था।

मुझे आशा है कि इस अचूक ने आपकी मदद की !!! अधिक के लिए बने रहें।

NS

ताहिर उल हकी

सिफारिश की: