Lesson 13: Introduction to AI and Face Detection

Lesson Description

Human Intelligence और Artificial Intelligence (AI), AI के अनुप्रयोगों और AI के फायदे और नुकसान के बीच अंतर के बारे में जानें।

Intelligence

What is intelligence? मनुष्य को बुद्धिमान प्राणी क्या बनाता है? मशीन को बुद्धिमान के रूप में कैसे वर्गीकृत किया जाए?

Artificial Intelligence या AI शब्द सुनते ही आपके दिमाग में ये सभी सवाल उठेंगे। हम यहां AI के विभिन्न अनुप्रयोगों के साथ-साथ इन सभी सवालों के जवाब देखेंगे।

बुद्धिमत्ता तर्क (intelligence reasoning), समझ, आत्म-जागरूकता, सीखने, भावनात्मक ज्ञान, योजना, रचनात्मकता और समस्या को सुलझाने की क्षमता है।

मानव बुद्धि के रूप में वर्णित किया जा सकता है

  1. जानकारी को देखने, समझने और उसका विश्लेषण करने की क्षमता।
  2. सीखने और ज्ञान बढ़ाने की क्षमता।
  3. ज्ञान के आधार पर निर्णय लेने की क्षमता।

Animal Intelligence

अधिकांश जानवरों में, उनके कौशल और क्षमताएं जीवित रहने तक ही सीमित हैं। यहां कुछ उदाहरण दिए गए हैं:

  1. डाल्फिन: डॉल्फ़िन अत्यंत मिलनसार प्राणी हैं जिनमें अपने निवास स्थान के अनुकूल होने की अत्यधिक विकसित क्षमता है। घायल या बीमार होने पर वे एक दूसरे की मदद करते हैं और अपनी अलग-अलग कॉल के लिए धन्यवाद, वे अपने ज्ञान को दूसरों तक पहुँचाने में सक्षम होते हैं।
  2. तोते: ये पक्षी विभिन्न मानवीय चेहरों को पहचान सकते हैं और संचार के लिए उच्च योग्यता रखते हैं। इनके अलावा, तोते के पास एक उत्कृष्ट स्मृति होती है जो उन्हें जटिल समस्याओं को हल करने में मदद करती है (जैसे कि अपने सबसे अच्छे दोस्त का जन्मदिन कैसे याद रखें)।
  3. हाथी : हाथियों में सभी भूमि जानवरों का सबसे बड़ा मस्तिष्क होता है। ये जानवर सामाजिककरण (renowned) की अपनी क्षमता के लिए प्रसिद्ध हैं और खुशी और करुणा के साथ-साथ दर्द और शोक सहित भावनाओं की एक विस्तृत श्रृंखला व्यक्त कर सकते हैं। वे परोपकारिता (altruism) और आत्म-जागरूकता के कार्य प्रदर्शित करते हैं। हम इंसानों से भी बड़ी याददाश्त के साथ, एक हाथी वास्तव में कभी नहीं भूलता!

Are Computers Intelligent?

कंप्यूटर के अभ्यस्त हैं

  • दस्तावेज़, चित्र और वीडियो जैसी जानकारी को उनकी स्मृति में संग्रहीत करें , जिसे आप तुरंत एक्सेस कर सकते हैं।
  • ऐसे प्रोग्राम चलाएँ जो उपयोगकर्ता के साथ बातचीत करते हैं ताकि उसकी समस्याओं को हल करने में मदद मिल सके जैसे गणना (calculations) करना, आदि।
  • खेल खेलें।
  • फिल्में और वीडियो देखें
  • इंटरनेट पर सर्फ़ करें।

कार्य परिभाषित है और कंप्यूटर परिणाम प्राप्त करने के लिए प्रोग्राम चलाता है। इसे बुद्धिमत्ता नहीं कहा जाता है क्योंकि इसमें सीखने की कोई प्रक्रिया शामिल नहीं होती है। कंप्यूटर पूर्वनिर्धारित निर्देशों के कुछ सेट का पालन कर रहे हैं।

लेकिन, जब कंप्यूटर ऐसे प्रोग्राम से लैस होते हैं जो सीखते हैं और अपने पर्यावरण के आधार पर कार्य करते हैं, तो उन्हें बुद्धिमान कहा जा सकता है। आइए कुछ उदाहरण देखें:

  1. सेल्फ ड्राइविंग कार : वे अपने पर्यावरण को पहचान सकते हैं और उसके अनुसार कार्य कर सकते हैं।
  2. भावना पहचानकर्ता : वे अपने ज्ञान का उपयोग करके मानव की भावना की पहचान कर सकते हैं।
  3. AI Bots In-Game : वे गेम खेल सकते हैं जैसे कि कोई इंसान खेल रहा हो।
  4. एलेक्सा या होम पॉड (सिरी) : यह पहचानता है कि आप क्या कहते हैं और उसी के अनुसार प्रतिक्रिया करते हैं।

फेस एक्सप्रेशन डिटेक्शन गेम्स

कंप्यूटर विजन चैट

Artificial Intelligence

यह बुद्धिमान एजेंटों (कंप्यूटर) का अध्ययन और डिजाइन है जो पर्यावरण का विश्लेषण करने और सफलता को अधिकतम करने वाली क्रियाओं का उत्पादन करने की क्षमता रखता है। एक कंप्यूटर को बुद्धिमान कहा जाता है यदि उसमें जानकारी एकत्र करने, निर्णय लेने के लिए उसका विश्लेषण करने और बहुत कम या बिना किसी मानवीय हस्तक्षेप के स्वचालित रूप से किसी कार्य को पूरा करने की क्षमता होती है।

Advantages of AI

AI मशीन के इंसानों पर कई फायदे हैं। उनमें से कुछ हैं:

  1. निष्पादन (execution) की गति : कंप्यूटर की याददाश्त (memories) बेहतर होती है। उन्हें बड़ी मात्रा में जानकारी दी जा सकती है और इसे लगभग तुरंत प्राप्त कर सकते हैं। जबकि एक डॉक्टर ~ 10 मिनट में निदान (diagnosis) कर देता है, एक AI सिस्टम एक ही अवधि में एक मिलियन बना सकता है।
  2. वे आलसी नहीं हैं : कंप्यूटर को मनुष्यों की तरह नींद की आवश्यकता नहीं होती है। वे बिना थके और चौबीसों घंटे कार्यों की गणना (calculate), विश्लेषण (analyze) और प्रदर्शन (perform) कर सकते हैं।
  3. सटीकता : कंप्यूटर कुछ कार्यों में बहुत उच्च सटीकता रखते हैं।
  4. कम पक्षपाती (Biased) : कंप्यूटर भावनाओं, चाहतों, जरूरतों और अन्य कारकों से प्रभावित नहीं होते हैं जो अक्सर हमारे निर्णय और बुद्धि को ढँक देते हैं।

AI vs Human Intelligence

AI हम artificial intelligence और human intelligence के बीच अंतर देखें।

ARTIFICIAL INTELLIGENCE HUMAN INTELLIGENCE
मानव बुद्धि द्वारा बनाया गया विकासवादी प्रक्रिया
जानकारी को तेजी से प्रोसेस करें और धीमा
अत्यधिक वस्तुनिष्ठ (objective) व्यक्तिपरक (subjective) हो सकता है
अधिक सटीक शायद कम सटीक
परिवर्तनों को अच्छी तरह से स्वीकार नहीं कर सकता आसानी से परिवर्तनों के अनुकूल
इतनी अच्छी तरह से मल्टीटास्क नहीं कर सकते आसानी से मल्टीटास्क
औसत सामाजिक कौशल से नीचे औसतन बेहतर सामाजिक कौशल
अनुकूलन (Optimization) नवाचार (Innovation)
सस्ता (Cheap) महँगा (Expensive)
पक्षपाती (Biased) पक्षपाती (Biased)

Application of AI

  1. सुरक्षा : सुरक्षा कैमरे वास्तविक समय में फुटेज का आकलन करने और आपराधिक व्यवहार को पहचानने के लिए AI का उपयोग कर सकते हैं, जिससे आपराधिक गतिविधि की तत्काल रिपोर्टिंग और पता लगाने की अनुमति मिलती है।
  2. रखरखाव : इसका उपयोग सड़कों के दृश्यों का विश्लेषण करने के लिए किया जा सकता है, जिससे शहरों को यह पहचानने में मदद मिलती है कि कब और कहाँ मरम्मत की जानी चाहिए, पैसे की बचत और सुरक्षा में सुधार।
  3. भविष्य की जरूरतों की भविष्यवाणी करना : स्मार्ट शहर नागरिकों की भविष्य की जरूरतों का अनुमान लगाने के लिए AI का उपयोग कर रहे हैं, ऊर्जा के उपयोग को ट्रैक करने के लिए नए स्रोतों की आवश्यकता होती है या स्थायी प्रथाओं को लागू किया जा सकता है, और संपत्ति के विकास के लिए पूर्वानुमान और योजना बना सकते हैं।
  4. प्रदूषण को नियंत्रित करना : वैज्ञानिकों ने AI और मशीन लर्निंग का उपयोग करके वर्तमान प्रदूषण के स्तर का आकलन करने और दो घंटे के लिए उनका पूर्वानुमान लगाने के लिए एक तकनीक बनाई है, जिससे अधिकारियों को पर्यावरणीय प्रभाव को कम करने के लिए सक्रिय निर्णय लेने की क्षमता मिलती है।
  5. पार्किंग सिस्टम : लाइसेंस प्लेट पहचान तकनीक कार पार्कों द्वारा उन वाहनों की पहचान करने के लिए नियोजित की जाती है जो आवंटित समय से अधिक रुके हुए हैं।

Face Detection

चेहरा पहचान एक छवि में मानवीय चेहरों का पता लगाने और वैकल्पिक रूप से विभिन्न प्रकार के चेहरे से संबंधित डेटा वापस करने की क्रिया है

चित्रों में चेहरे की पहचान करने की विधि जटिल है क्योंकि, मानव चेहरे एक दूसरे से व्यापक रूप से भिन्न होते हैं! उनके अलग-अलग पोज़, एक्सप्रेशन, पोज़िशन, ओरिएंटेशन, त्वचा के रंग, चश्मा या चेहरे के बाल हो सकते हैं या नहीं, आदि।

Knowledge-Based Detection

ज्ञान आधारित पद्धति नियमों के एक समूह पर निर्भर करती है और चेहरों का पता लगाने के लिए मानव ज्ञान पर आधारित है। उदाहरण के लिए, एक चेहरा अक्सर दो आँखों के साथ दिखाई देता है जो एक दूसरे के सममित होते हैं, एक नाक और एक मुँह।

Pros:

  1. सरल नियमों के साथ आना आसान है।
  2. कोडित नियमों के आधार पर, एक इनपुट छवि में चेहरे की विशेषताओं को पहले निकाला जाता है और चेहरे के उम्मीदवारों की पहचान की जाती है।

Cons:

  1. मानव ज्ञान को नियमों में सटीक रूप से अनुवादित करना कठिन है।
    1. विस्तृत (Detailed) नियम चेहरों का पता लगाने में विफल होते हैं, जैसे नियम कि, ‘एक व्यक्ति के पास दो आंखें होनी चाहिए’: इस नियम के अनुसार, अगर छवि में 1 आंख है तो किसी चेहरे की पहचान नहीं की जाएगी।
    2. सामान्य नियमों में कई झूठी सकारात्मकताएँ (false positives) मिल सकती हैं: जैसे चेहरे में एक आँख होती है। इसके मुताबिक, एक जैसी दिखने वाली आंख के इस टैटू में चेहरा पहचाना जाएगा।
  2. अकेले यह तरीका अपर्याप्त (insufficient) है और कई छवियों में कई चेहरों को खोजने में असमर्थ है।

Feature-Based Detection

फ़ीचर-आधारित पहचान चेहरों का पता लगाने के लिए फेस लैंडमार्क के रूप में जानी जाने वाली चीज़ का उपयोग करती है। फेस लैंडमार्क चेहरे पर आसानी से मिलने वाले बिंदुओं का एक सेट होता है, जैसे कि पुतलियां या नाक की नोक।

डिफ़ॉल्ट रूप से, 68 पूर्वनिर्धारित (predefined) लैंडमार्क बिंदु हैं।

Pros:

  1. विशेषताएं (invariant) पोज़ और ओरिएंटेशन परिवर्तन के लिए अपरिवर्तनीय हैं।
  2. इस विधि में चेहरा पहचानने की संभावना अधिक होती है।

Cons:

  1. छवियों में शोर (noise) के कारण चेहरे की विशेषताओं का पता लगाना कठिन होता है।
  2. जटिल पृष्ठभूमि (complex backgrounds) में सुविधाओं का पता लगाना मुश्किल है।

Face Detection Blocks in PictoBlox

PictoBlox में Face Detection एक्सटेंशन में Face Detection के लिए समर्पित ब्लॉक हैं। आइए कुछ ब्लॉकों का अन्वेषण करें।

नीचे दिए गए स्टेप्स का पालन करें:

  1. PictoBlox ऐप में एक नई फाइल बनाएं।
  2. अगला, Add Extension बटन पर क्लिक करें और Face Detection जोड़ें
  3. चेहरे की पहचान करने वाले मॉडल डाउनलोड हो जाएंगे जिन्हें लोड होने में कुछ सेकंड लग सकते हैं।
  4. एक बार डाउनलोड हो जाने पर आपको “Model loaded successfully” कहने वाला एक संदेश प्राप्त होगा।
  5. आइए परीक्षण छवि जोड़ें:

    1. लड़का और लड़की डाउनलोड करने के लिए QR कोड को स्कैन करें
    2. दिखाए गए अनुसार बैकड्रॉप बटन पर डबल क्लिक करें। आपको edit sign मिलेगा। इसे क्लिक करें।
  6. इससे बैकड्रॉप सेटिंग खुल जाएगी। बैकड्रॉप जोड़ने के लिए निचले कोने में पहले आइकन पर क्लिक करें।
  7. अपलोड बटन पर क्लिक करें।
  8. डाउनलोड की गई छवि का चयन करें।
  9. Tobi को हिलाएं ताकि मंच साफ हो जाए।

Face Detection Blocks

  1. कैमरा फ़ीड को नियंत्रित करना: आप turn ( ) video on stage with ( ) % transparency ब्लॉक का उपयोग करके मंच पर कैमरा फ़ीड को नियंत्रित कर सकते हैं।

आप ब्लॉक के निम्नलिखित पैरामीटर बदल सकते हैं:

  1. कैमरा स्थिति :
    • OFF – मंच पर वीडियो फीड बंद हो जाएगा।
    • ON – मंच पर वीडियो फ़ीड शुरू हो जाएगी।
    • ON flipped – मंच पर वीडियो फ़ीड मिरर किए गए वीडियो के साथ शुरू होगा। तो, आपका दाहिना हाथ बाएं हाथ के रूप में दिखाया जाएगा और इसके विपरीत।
  2. Transparency : यह पैरामीटर वीडियो को पारदर्शी (translucent) बनाता है। O को परिभाषित किया गया है क्योंकि कैमरा फीड मंच पर दिखाया जाएगा और 100 है वीडियो मंच से पूरी तरह से फीका हो जाएगा।
  1. मंच पर छवि का विश्लेषण: analyse image from ( ) ब्लॉक छवि का विश्लेषण करती है और चेहरे की जानकारी को स्थानीय रूप से सहेजती है, जिसे कंप्यूटर दृष्टि के समान अन्य ब्लॉकों का उपयोग करके एक्सेस किया जा सकता है।

analyse image from ( ) ब्लॉक खींचें, फ़ीड को stage के रूप में बदलें और छवि का विश्लेषण (analyze) करने के लिए ब्लॉक पर क्लिक करें

  1. # चेहरे प्राप्त करें: एक बार जब आप छवियों का विश्लेषण कर लेते हैं, तो आप छवि में पहचाने जाने वाले चेहरों की संख्या प्राप्त करने के लिए get # faces ब्लॉक का उपयोग कर सकते हैं। छवि का विश्लेषण करने के लिए, आपको 2 मिलेगा।

  2. चेहरे की अभिव्यक्ति प्राप्त करें (): get expression of face ( ) ब्लॉक चयनित चेहरे की मान्यता प्राप्त अभिव्यक्ति (expression) को रिपोर्ट करता है। यदि चयनित चेहरे का पता नहीं चलता है तो यह NULL की रिपोर्ट करता है। छवि में पहले चेहरे के लिए विश्लेषण किया जा रहा है, अभिव्यक्ति हैप्पी है।

  3. Is expression of face ( ) ( ): Is expression of face ( ) ( ) ब्लॉक यह जांचता है कि चयनित (selected) चेहरे में कोई विशेष भावना है या नहीं। अगर इमोशन मैच करता है, तो ब्लॉक true रिटर्न करता है, वरना false उदाहरण के लिए, छवि में चेहरे 1 के लिए, भावना खुश है, इसलिए यह True हो जाती है।

  1. Get ( ) of face ( ): Get ( ) of face ( ) ब्लॉक छवि के निम्नलिखित गुणों की रिपोर्ट करता है:
  • X position : मंच पर छवि के केंद्र का X समन्वय (coordinate)
  • Y position : मंच पर छवि के केंद्र का Y समन्वय (coordinate)
  • Width : चेहरे की चौड़ाई
  • Height : चेहरे की ऊँचाई

इस ब्लॉक का उपयोग करके आप इस तरह से चेहरे के लिए बाउंडिंग बॉक्स बना सकते हैं:

  1. Get ( ) position of landmark ( ) of face ( ): Get ( ) position of landmark ( ) of face ( ) ब्लॉक चयनित (selected) चेहरे के चयनित (selected) लैंडमार्क (1 से 68 तक की संख्या) की x और y स्थिति की रिपोर्ट करता है। इस ब्लॉक का उपयोग करके, आप मंच पर लैंडमार्क बिंदुओं को इस प्रकार बना सकते हैं:

 

 

 

 

अगले पाठ पर जाने से पहले सुनिश्चित करें कि आपने assignment पूरा कर लिया है और सबमिट कर दिया है, साथ ही quiz में भाग लें।

Table of Contents