विषयसूची:

MATLAB आसान चेहरा पहचान: 4 कदम
MATLAB आसान चेहरा पहचान: 4 कदम

वीडियो: MATLAB आसान चेहरा पहचान: 4 कदम

वीडियो: MATLAB आसान चेहरा पहचान: 4 कदम
वीडियो: चालबाज स्त्रियों की पहचान इन 8 लक्षणों से होती है | Chanakya niti, Shukra niti 2024, जुलाई
Anonim
MATLAB आसान चेहरा पहचान
MATLAB आसान चेहरा पहचान

इस निर्देश का मुख्य उद्देश्य यह दिखाना है कि MATLAB की मदद से इमेज प्रोसेसिंग कितनी आसान होगी

फेस डिटेक्शन और ट्रैकिंग एक महत्वपूर्ण और सक्रिय शोध क्षेत्र रहा है, इसलिए मैं यह समझाने जा रहा हूं कि यह मैटलैब के साथ कैसे किया जा सकता है।

निम्नलिखित ट्यूटोरियल में मैं निम्नलिखित चीजें करने जा रहा हूँ:

1. एक छवि और गिनती में चेहरों का पता लगाना।

2. एक छवि और गिनती में मानव आंखों का पता लगाना।

3. एक छवि और गिनती में मानव मुंह का पता लगाना।

4. वीडियो में चेहरों का पता लगाना और गिनती करना।

5. एक वीडियो और गिनती में मानव आंखों का पता लगाना।

6. वीडियो में इंसान के मुंह का पता लगाना और गिनती करना।

चरण 1: एक छवि और गिनती में चेहरे का पता लगाना।

एक छवि और गिनती में चेहरे का पता लगाना।
एक छवि और गिनती में चेहरे का पता लगाना।

मैटलैब स्क्रिप्ट:

सभी को साफ़ करें% सभी वस्तुओं को साफ़ करेंclc%स्पष्ट स्क्रीन

एफडिटेक्ट = दृष्टि। कैस्केडऑब्जेक्ट डिटेक्टर; %वियोला-जोन्स एल्गोरिथम का उपयोग करके वस्तुओं का पता लगाएं

%इनपुट छवि पढ़ें

छवि = इमरीड ('सी: / डेस्कटॉप / हैरीपॉटर। जेपीजी'); imread('file location\name.jpg') का उपयोग करके छवि को% लोड करें

BB = चरण (FDetect, छवि); वस्तुओं की संख्या के आधार पर %रिटर्न बाउंडिंग बॉक्स मान

फिगर, इम्शो (आई);

रूको

i = १ के लिए आकार (बीबी, १)

आयत ('स्थिति', बीबी (i,:), 'लाइनविड्थ', 5, 'लाइन स्टाइल', '-', 'एजकोलर', 'आर'); %r -लाल, जी-हरा, बी-नीला

समाप्त

शीर्षक ('चेहरा पहचान'); फिगरहोल्ड ऑफ का %शीर्षक;

परिणाम उस छवि की तरह होगा जो इस चरण में ही संलग्न थी

खोजे गए चेहरों की संख्या गिनने के लिए:

सभी को साफ़ करें% सभी वस्तुओं को साफ़ करेंclc%स्पष्ट स्क्रीन

एफडिटेक्ट = दृष्टि। कैस्केडऑब्जेक्ट डिटेक्टर; % वियोला-जोन्स एल्गोरिथम का उपयोग करके वस्तुओं का पता लगाएं% इनपुट छवि पढ़ें

छवि = इमरीड ('सी: / डेस्कटॉप / हैरीपॉटर। जेपीजी'); imread('file location\name.jpg') का उपयोग करके छवि को% लोड करें

BB = चरण (FDetect, छवि); वस्तुओं की संख्या के आधार पर %रिटर्न बाउंडिंग बॉक्स मान

आकृति,

इम्शो (मैं);

रूको

i = १ के लिए आकार (बीबी, १)

आयत ('स्थिति', बीबी (i,:), 'लाइनविड्थ', 5, 'लाइन स्टाइल', '-', 'एजकोलर', 'आर'); %r -लाल, g-हरा, b-नीला

समाप्त

टेक्स्ट (१०, १०, स्ट्रैट ('\ रंग {लाल} चेहरों की संख्या =', num2str (लंबाई (बीबी)))); यह लाइन आपको गिनती देती है

शीर्षक ('चेहरा पहचान'); आंकड़े का %शीर्षक

रोके रखना;

चरण 2: एक छवि और गिनती में मानव आंखों का पता लगाना।

एक छवि और गिनती में मानव आंखों का पता लगाना।
एक छवि और गिनती में मानव आंखों का पता लगाना।

मैटलैब स्क्रिप्ट:

सभी साफ करें;

सीएलसी;

% EyesEyeDetect = Vision. CascadeObjectDetector ('आईपेयरबिग') का पता लगाने के लिए;

%इनपुट पढ़ें

छवि = इमरीड ('सी: / डेस्कटॉप / हैरीपॉटर। जेपीजी'); imread('file location\name.jpg') का उपयोग करके छवि को% लोड करें

बी बी = कदम (आई डिटेक्ट, इमेज);

आकृति,

इमशो (छवि);

आयत ('स्थिति', बीबी, 'लाइनविड्थ', 4, 'लाइन स्टाइल', '-', 'एजकोलर', 'बी');

शीर्षक ('आंखों का पता लगाना');

परिणाम उस छवि की तरह होगा जो इस चरण में ही संलग्न थी

खोजी गई आँखों की संख्या गिनने के लिए:

सभी साफ़ करें; सीएलसी; %आँखों का पता लगाने के लिए

आईडिटेक्ट = दृष्टि। कैस्केडऑब्जेक्ट डिटेक्टर ('आईपेयरबिग');

छवि = इमरीड ('सी: / डेस्कटॉप / हैरीपॉटर। जेपीजी'); imread('file location\name.jpg') का उपयोग करके छवि को% लोड करें

बी बी = कदम (आई डिटेक्ट, इमेज); फिगर, इमशो (इमेज); आयत ('स्थिति', बीबी, 'लाइनविड्थ', 4, 'लाइन स्टाइल', '-', 'एजकोलर', 'बी');

पाठ (१०, १०, strcat ('\ रंग {लाल} आँखों की संख्या =', num2str (लंबाई (BB))));

शीर्षक ('आंखों का पता लगाना');

चरण 3: एक छवि और गिनती में मानव मुंह का पता लगाना

एक छवि और गिनती में मानव मुंह का पता लगाना
एक छवि और गिनती में मानव मुंह का पता लगाना

मैटलैब स्क्रिप्ट:

सभी साफ करें;

सीएलसी;

%मुंह का पता लगाने के लिए

माउथडिटेक्ट = विज़न। कैस्केडऑब्जेक्ट डिटेक्टर ('मुँह', 'मर्ज थ्रेशोल्ड', 16);

% इनपुट छवि पढ़ें = imread ('c:\Deskotp\HarryPotter.jpg'); imread('file location\name.jpg') का उपयोग करके छवि को% लोड करें

बी बी = कदम (मुँह का पता लगाने, छवि);

फिगर, इम्शो (छवि);

रूको

i = १ के लिए आकार (बीबी, १)

आयत ('स्थिति', बीबी (i,:), 'लाइनविड्थ', 4, 'लाइन स्टाइल', '-', 'एजकोलर', 'आर');

समाप्त

शीर्षक ('मुंह का पता लगाना');

रोके रखना;

परिणाम उस छवि की तरह होगा जो इस चरण में ही संलग्न थी

पता चला मुंह की संख्या की गणना करने के लिए:

सभी साफ करें; सीएलसी; %मुंह का पता लगाने के लिए

माउथडिटेक्ट = विज़न। कैस्केडऑब्जेक्ट डिटेक्टर ('मुँह', 'मर्ज थ्रेशोल्ड', 16); %इनपुट पढ़ें

छवि = इमरीड ('सी: / डेस्कटॉप / हैरीपॉटर। जेपीजी'); imread('file location\name.jpg') BB=step(MouthDetect, image) का उपयोग करके इमेज को %लोड करें;

फिगर, इम्शो (छवि);

रूको

i = १ के लिए आकार (बीबी, १)

आयत ('स्थिति', बीबी (i,:), 'लाइनविड्थ', 4, 'लाइन स्टाइल', '-', 'एजकोलर', 'आर');

समाप्त

टेक्स्ट (१०, १०, स्ट्रैट ('\ रंग {लाल} मुंह की संख्या =', num2str (लंबाई (बीबी))));

शीर्षक ('मुंह का पता लगाना');

रोके रखना;

चरण 4: वीडियो और गिनती में चेहरे, आंखों, मुंह का पता लगाना।

सभी साफ करें;

सब बंद करें;

सीएलसी;

% वीडियो इनपुट फ़ंक्शन का उपयोग करके वीडियो फ़्रेम कैप्चर करें % आपको रिज़ॉल्यूशन और अपने इंस्टॉल किए गए एडेप्टर नाम को बदलना होगा।

ए = दृष्टि। कैस्केडऑब्जेक्ट डिटेक्टर; % चेहरे का पता लगाने के लिए

% ए = दृष्टि। कैस्केडऑब्जेक्ट डिटेक्टर ('मुंह', 'मर्ज थ्रेसहोल्ड', 16); मुंह का पता लगाने के लिए %

% ए = दृष्टि। कैस्केडऑब्जेक्ट डिटेक्टर ('आईपेयरबिग'); आँखों का पता लगाने के लिए %

% केवल किसी एक का उपयोग करें (चेहरा/आंख/मुंह)

vid = वीडियो इनपुट ('विनवीडियो', 1, 'yuy2_320x240'); % वीडियो ऑब्जेक्ट के गुण सेट करें

सेट (vid, 'फ्रेम्सपेरट्रिगर', इंफ);

सेट (vid, 'रिटर्नड कलरस्पेस', 'आरजीबी');

vid. FrameGrabInterval = 5; %वीडियो प्राप्ति यहां प्रारंभ करें

start(vid) % एक लूप सेट करें जो अधिग्रहण के १०० फ्रेम के बाद रुक जाए

जबकि(vid. FramesAcquired<=200) % वर्तमान फ्रेम का स्नैपशॉट प्राप्त करें

डेटा = हो जाता है स्नैपशॉट (vid);

इमशो (डेटा);

बी = चरण (ए, डेटा);

रूको

i=1 के लिए: आकार (बी, 1)

आयत ('स्थिति', b(i,:), 'linewidth', 2, 'linestyle', '-', 'EdgeColor', 'r');

समाप्त

रोके रखना

पाठ (१०, १०, strcat ('\ रंग {हरा} चेहरों की संख्या =', num2str (लंबाई (बी))));

समाप्त

स्टॉप (vid); % वीडियो अधिग्रहण रोकें

सिफारिश की: