AI EducademyAIEducademy
कार्यक्रमलैबब्लॉगहमारे बारे में
साइन इन करें
AI EducademyAIEducademy

सभी के लिए, हर भाषा में मुफ्त AI शिक्षा।

सीखें

  • कार्यक्रम
  • पाठ
  • लैब
  • डैशबोर्ड
  • हमारे बारे में

समुदाय

  • GitHub
  • योगदान करें
  • आचार संहिता

सहायता

  • कॉफ़ी खरीदें ☕

सभी के लिए मुफ्त AI शिक्षा

MIT लाइसेंस — ओपन सोर्स

Programs›🌳 AI Branches›Lessons›कंप्यूटर विज़न की मूल बातें — मशीनों को देखना सिखाना
👁️
AI Branches • मध्यम⏱️ 35 मिनट पढ़ने का समय

कंप्यूटर विज़न की मूल बातें — मशीनों को देखना सिखाना

मशीनें कैसे देखती हैं? 👀

आप एक तस्वीर पर नज़र डालते हैं और तुरंत कुत्ते, कार या अपने सबसे अच्छे दोस्त के चेहरे को पहचान लेते हैं। आपका दिमाग़ यह काम बड़ी आसानी से करता है — लेकिन एक कंप्यूटर के लिए "देखना" बेहद जटिल काम है।

कंप्यूटर विज़न AI का वह क्षेत्र है जो मशीनों को दुनिया से मिलने वाली दृश्य जानकारी — इमेज, वीडियो और लाइव कैमरा फ़ीड — को समझने और व्याख्या करने की क्षमता देता है।

एक कुत्ते की तस्वीर जिसे पिक्सेल, फ़ीचर और लेबल में विभाजित किया जा रहा है
कंप्यूटर विज़न कच्चे पिक्सेल को सार्थक समझ में बदलता है

पिक्सेल से फ़ीचर तक 🔍

कंप्यूटर के लिए एक इमेज बस संख्याओं का एक ग्रिड है।

पिक्सेल क्या है

  • एक ग्रेस्केल इमेज एक 2D ग्रिड होती है जहाँ हर सेल में 0 (काला) से 255 (सफ़ेद) तक एक मान होता है
  • एक रंगीन इमेज में तीन परतें (चैनल) होती हैं: Red, Green और Blue — जो एक-दूसरे के ऊपर रखी होती हैं
  • एक सामान्य स्मार्टफ़ोन फ़ोटो (12 MP) में 1.2 करोड़ पिक्सेल होते हैं — यानी रंगीन इमेज के लिए 3.6 करोड़ संख्याएँ!
# Loading an image and viewing its pixel values
from PIL import Image
import numpy as np

img = Image.open("dog.jpg")
pixels = np.array(img)

print(f"Image shape: {pixels.shape}")
# Output example: (480, 640, 3) → 480 rows, 640 columns, 3 colour channels

print(f"Total pixel values: {pixels.size:,}")
# Output example: 921,600

# A single pixel in the top-left corner
print(f"Top-left pixel (R, G, B): {pixels[0, 0]}")
# Output example: [142, 178, 225] — a light blue sky pixel

पिक्सेल से फ़ीचर तक

कच्चे पिक्सेल मान अपने आप में अर्थहीन हैं। AI को फ़ीचर — सार्थक पैटर्न — पहचानने होते हैं:

  • निम्न-स्तरीय फ़ीचर: किनारे (edges), कोने (corners), रंग ग्रेडिएंट
  • मध्य-स्तरीय फ़ीचर: बनावट (textures), आकार, हिस्से (आँखें, पहिये, खिड़कियाँ)
  • उच्च-स्तरीय फ़ीचर: पूरी वस्तुएँ (चेहरा, कार, इमारत)

इसे पढ़ने की तरह समझें: पहले आप अक्षर सीखते हैं (निम्न-स्तर), फिर शब्द (मध्य-स्तर), फिर वाक्य और अर्थ (उच्च-स्तर)।

🤯

मानव दृश्य कॉर्टेक्स भी इमेज को परतों में प्रोसेस करता है! आँखों के पास के न्यूरॉन साधारण किनारों और रंगों को पहचानते हैं, जबकि मस्तिष्क के गहरे क्षेत्र जटिल वस्तुओं और चेहरों को पहचानते हैं। CNN वास्तव में इसी जैविक संरचना से प्रेरित हैं।


कन्वोल्यूशनल न्यूरल नेटवर्क (CNNs) 🧠

कन्वोल्यूशनल न्यूरल नेटवर्क कंप्यूटर विज़न की रीढ़ है। आइए समझते हैं कि यह कैसे काम करता है — बिना किसी भारी गणित के।

मुख्य विचार: स्लाइडिंग फ़िल्टर

कल्पना करें कि आप एक छोटा आवर्धक लेंस (मान लें, 3×3 पिक्सेल) एक इमेज पर रखते हैं और उसे हर स्थिति पर खिसकाते हैं। हर स्थिति पर, फ़िल्टर एक विशिष्ट पैटर्न खोजता है — एक लंबवत किनारा, एक क्षैतिज रेखा, एक वक्र।

हर फ़िल्टर एक नई इमेज बनाता है जिसे फ़ीचर मैप कहते हैं, जो दिखाता है कि वह पैटर्न कहाँ मिला।

CNN की परतें (दृश्य अंतर्ज्ञान)

| परत | यह क्या करती है | उदाहरण | |------|----------------|---------| | कन्वोल्यूशनल | फ़ीचर पहचानने के लिए इमेज पर फ़िल्टर खिसकाती है | एक जासूस हर इंच की जाँच आवर्धक लेंस से करता है | | एक्टिवेशन (ReLU) | केवल मज़बूत संकेत रखती है, शोर हटाती है | मुख्य सबूतों को हाइलाइट करना और विचलन को अनदेखा करना | | पूलिंग | महत्वपूर्ण जानकारी रखते हुए फ़ीचर मैप को छोटा करती है | एक अध्याय को बुलेट पॉइंट में सारांशित करना | | फ़ुली कनेक्टेड | अंतिम निर्णय लेने के लिए सभी फ़ीचर को जोड़ती है | जूरी विचार-विमर्श करके फ़ैसला सुनाती है |

# Building a simple CNN with TensorFlow/Keras
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Conv2D, MaxPooling2D, Flatten, Dense

model = Sequential([
    # First convolutional layer: 32 filters, 3x3 each
    Conv2D(32, (3, 3), activation='relu', input_shape=(64, 64, 3)),
    MaxPooling2D(pool_size=(2, 2)),

    # Second convolutional layer: 64 filters
    Conv2D(64, (3, 3), activation='relu'),
    MaxPooling2D(pool_size=(2, 2)),

    # Flatten and classify
    Flatten(),
    Dense(128, activation='relu'),
    Dense(10, activation='softmax'),  # 10 classes
])

model.summary()
💡

आपको फ़िल्टर हाथ से डिज़ाइन करने की ज़रूरत नहीं! ट्रेनिंग के दौरान CNN खुद सीखता है कि कौन से फ़िल्टर सबसे उपयोगी हैं। शुरुआती परतें किनारे पहचानना सीख सकती हैं, जबकि गहरी परतें कान, आँखें या पूरे चेहरे पहचानना सीखती हैं — सब कुछ डेटा से स्वचालित रूप से।


कंप्यूटर विज़न के तीन मुख्य कार्य 🎯

1. इमेज वर्गीकरण (Image Classification)

प्रश्न: "इस इमेज में क्या है?"

मॉडल पूरी इमेज को एक लेबल देता है: "बिल्ली", "कार", "पिज़्ज़ा"।

यह वही है जो आपने AI Sprouts में सीखा था — मॉडल को एक इमेज दो, बदले में एक लेबल पाओ।

2. ऑब्जेक्ट डिटेक्शन (Object Detection)

प्रश्न: "यहाँ कौन-कौन सी वस्तुएँ हैं, और वे कहाँ हैं?"

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

3. इमेज सेगमेंटेशन (Image Segmentation)

प्रश्न: "कौन से पिक्सेल किस वस्तु से संबंधित हैं?"

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

# Using a pre-trained object detection model
# This uses YOLO (You Only Look Once) — one of the fastest detectors

# Pseudocode for clarity
def detect_objects(image_path):
    """Detect and label objects in an image."""
    model = load_pretrained_model("yolov8")
    image = load_image(image_path)

    results = model.predict(image)

    for detection in results:
        print(f"Object: {detection.label}")
        print(f"  Confidence: {detection.confidence:.1%}")
        print(f"  Location: {detection.bounding_box}")
        print()

# Example output:
# Object: person
#   Confidence: 97.2%
#   Location: (120, 50, 340, 480)
# Object: bicycle
#   Confidence: 89.5%
#   Location: (200, 300, 450, 520)
🤔
Think about it:

सेल्फ-ड्राइविंग कारों को रियल-टाइम में वस्तुओं का पता लगाना होता है — लगभग 30 फ़्रेम प्रति सेकंड। इसका मतलब है कि AI के पास हर फ़्रेम का विश्लेषण करने के लिए लगभग 33 मिलीसेकंड हैं। आपके अनुसार इंजीनियर सटीकता और गति के बीच संतुलन कैसे बनाते होंगे? क्या होगा अगर मॉडल 99.9% सटीक है लेकिन प्रतिदिन 10 लाख फ़्रेम प्रोसेस करता है?


वास्तविक दुनिया के अनुप्रयोग 🌍

🚗 सेल्फ-ड्राइविंग कारें

  • कई कैमरे एक साथ CV मॉडल को इमेज भेजते हैं
  • AI लेन, ट्रैफ़िक साइन, पैदल यात्रियों और अन्य वाहनों का पता लगाता है
  • 360° जागरूकता के लिए कंप्यूटर विज़न को LiDAR (लेज़र सेंसिंग) और radar के साथ जोड़ा जाता है
  • कंपनियाँ: Waymo, Tesla, Cruise

🧑 फेशियल रिकॉग्निशन

  • अद्वितीय चेहरे की विशेषताओं को मैप करता है (आँखों के बीच की दूरी, जबड़े का आकार, नाक की हड्डी)
  • फ़ोन अनलॉक (Face ID), हवाई अड्डे की सुरक्षा और फ़ोटो व्यवस्थापन में उपयोग होता है
  • विवाद: निगरानी की चिंताएँ, सटीकता में नस्लीय पूर्वाग्रह, सहमति के मुद्दे

📱 AR फ़िल्टर (Snapchat / Instagram)

  • रियल-टाइम में चेहरे के लैंडमार्क पहचानता है (आपके चेहरे पर 68+ बिंदु)
  • जैसे आपका चेहरा हिलता है, उसे ट्रैक करता है और डिजिटल सामग्री ओवरले करता है
  • मोबाइल प्रोसेसर पर चलने के लिए अनुकूलित हल्के मॉडल का उपयोग करता है

🏭 मैन्युफ़ैक्चरिंग गुणवत्ता नियंत्रण

  • असेंबली लाइन पर कैमरे दोषपूर्ण उत्पादों का पता लगाते हैं
  • मानव निरीक्षकों से तेज़ी से खरोंच, डेंट या गलत संरेखण पकड़ता है
  • बिना थकान के 24/7 चलता है
🤯

YOLO (You Only Look Once) ऑब्जेक्ट डिटेक्शन मॉडल आधुनिक GPU पर प्रति सेकंड 45 से अधिक इमेज प्रोसेस कर सकता है। इसके निर्माता, Joseph Redmon, ने अंततः इस चिंता के कारण अपना शोध बंद कर दिया कि इस तकनीक का निगरानी और सैन्य अनुप्रयोगों के लिए कैसे दुरुपयोग हो सकता है।


प्रायोगिक अभ्यास: प्री-ट्रेंड मॉडल की भविष्यवाणियाँ समझना 🔬

कंप्यूटर विज़न के साथ प्रयोग करने के लिए आपको शुरू से मॉडल ट्रेन करने की ज़रूरत नहीं। ResNet, MobileNet, या EfficientNet जैसे प्री-ट्रेंड मॉडल पहले से लाखों इमेज से सीख चुके हैं।

# Using a pre-trained model to classify an image
from tensorflow.keras.applications import MobileNetV2
from tensorflow.keras.applications.mobilenet_v2 import (
    preprocess_input, decode_predictions
)
from tensorflow.keras.preprocessing import image
import numpy as np

# Load pre-trained MobileNetV2 (trained on ImageNet — 1000 classes)
model = MobileNetV2(weights='imagenet')

# Load and preprocess an image
img = image.load_img("photo.jpg", target_size=(224, 224))
img_array = preprocess_input(
    np.expand_dims(image.img_to_array(img), axis=0)
)

# Get predictions
predictions = model.predict(img_array)
top_3 = decode_predictions(predictions, top=3)[0]

print("Top 3 Predictions:")
for rank, (id, label, confidence) in enumerate(top_3, 1):
    bar = "█" * int(confidence * 40)
    print(f"  {rank}. {label}: {confidence:.1%} {bar}")

# Example output:
#   1. golden_retriever: 92.3% █████████████████████████████████████
#   2. Labrador_retriever: 4.1% ██
#   3. cocker_spaniel: 1.8% █

क्या-क्या आज़माएँ

  1. अलग-अलग इमेज आज़माएँ — असामान्य कोणों या रोशनी पर मॉडल कैसा प्रदर्शन करता है?
  2. एज केस परखें — धुँधली इमेज, ड्रॉइंग या ऑप्टिकल इल्यूज़न पर क्या होता है?
  3. कॉन्फ़िडेंस जाँचें — क्या उच्च कॉन्फ़िडेंस का मतलब हमेशा सही भविष्यवाणी है?
  4. पूर्वाग्रह खोजें — क्या मॉडल विविध विषयों पर समान रूप से अच्छा काम करता है?
💡

MobileNetV2 को विशेष रूप से मोबाइल फ़ोन पर चलने के लिए डिज़ाइन किया गया है। इसमें केवल 34 लाख पैरामीटर हैं — ResNet-152 के 6 करोड़ की तुलना में — फिर भी यह प्रभावशाली सटीकता बनाए रखता है। यह "depthwise separable convolutions" नामक एक चतुर आर्किटेक्चर तकनीक से संभव हुआ है, जो गणना को कम करती है।


कंप्यूटर विज़न की नैतिकता ⚖️

बड़ी शक्ति के साथ बड़ी ज़िम्मेदारी भी आती है:

  • निगरानी: फेशियल रिकॉग्निशन बिना सहमति के बड़े पैमाने पर निगरानी संभव बनाता है
  • पूर्वाग्रह: अध्ययन दिखाते हैं कि कई CV सिस्टम महिलाओं और अश्वेत लोगों के लिए कम सटीक हैं
  • डीपफ़ेक: AI वास्तविक लोगों की नकली लेकिन यथार्थवादी इमेज और वीडियो बना सकता है
  • गोपनीयता: कैमरे हर जगह हैं — सड़क CCTV, डोरबेल, ड्रोन — और AI व्यक्तियों की बड़े पैमाने पर पहचान आसान बनाता है

तकनीक अपने आप में तटस्थ है — यह इस पर निर्भर करता है कि हम इसे कैसे उपयोग करते हैं।


त्वरित सारांश 🎯

  1. कंप्यूटर इमेज को संख्याओं के ग्रिड के रूप में देखते हैं — Red, Green और Blue मानों वाले पिक्सेल
  2. CNN स्लाइडिंग फ़िल्टर का उपयोग करके किनारों से लेकर वस्तुओं तक स्वचालित रूप से फ़ीचर पहचानते हैं
  3. तीन मुख्य कार्य हैं: वर्गीकरण (क्या?), डिटेक्शन (क्या और कहाँ?), और सेगमेंटेशन (पिक्सेल-स्तरीय लेबल)
  4. वास्तविक अनुप्रयोगों में सेल्फ-ड्राइविंग कारें, फेशियल रिकॉग्निशन, AR फ़िल्टर और गुणवत्ता नियंत्रण शामिल हैं
  5. प्री-ट्रेंड मॉडल जैसे MobileNetV2 आपको बिना शुरू से ट्रेनिंग किए प्रयोग करने देते हैं
  6. नैतिकता — पूर्वाग्रह, निगरानी, डीपफ़ेक और गोपनीयता — को कंप्यूटर विज़न के उपयोग में मार्गदर्शक होना चाहिए

आगे क्या? 🚀

आपने अब AI की तीन शक्तिशाली शाखाओं का अन्वेषण किया है: स्वास्थ्य सेवा अनुप्रयोग, नेचुरल लैंग्वेज प्रोसेसिंग, और कंप्यूटर विज़न। ये वो नींव हैं जिन पर असली AI इंजीनियर हर दिन काम करते हैं। आगे आने वाले पाठों में, हम AI और रचनात्मक कला में गहराई से जाएँगे — कैसे मशीनें संगीत, कला और कहानियाँ बनाती हैं!

Lesson 3 of 30 of 3 completed
←चैटबॉट्स और NLP — मशीनों को भाषा सिखाना🏕️ AI Canopy→