AI-For-Beginners/translations/hi/lessons/4-ComputerVision/12-Segmentation/README.md

78 lines
12 KiB
Markdown

<!--
CO_OP_TRANSLATOR_METADATA:
{
"original_hash": "d7f8a25ff13cfe9f4cd671cc23351fad",
"translation_date": "2025-08-24T09:52:48+00:00",
"source_file": "lessons/4-ComputerVision/12-Segmentation/README.md",
"language_code": "hi"
}
-->
# विभाजन
हमने पहले ऑब्जेक्ट डिटेक्शन के बारे में सीखा था, जो हमें *बाउंडिंग बॉक्सेस* की भविष्यवाणी करके इमेज में ऑब्जेक्ट्स को लोकेट करने की अनुमति देता है। हालांकि, कुछ कार्यों के लिए हमें केवल बाउंडिंग बॉक्सेस की आवश्यकता नहीं होती, बल्कि ऑब्जेक्ट्स का अधिक सटीक स्थानीयकरण चाहिए। इस कार्य को **विभाजन (Segmentation)** कहा जाता है।
## [Pre-lecture quiz](https://red-field-0a6ddfd03.1.azurestaticapps.net/quiz/112)
विभाजन को **पिक्सल वर्गीकरण** के रूप में देखा जा सकता है, जहां इमेज के **प्रत्येक** पिक्सल के लिए हमें उसका वर्ग (*पृष्ठभूमि* भी एक वर्ग है) की भविष्यवाणी करनी होती है। विभाजन के दो मुख्य प्रकार हैं:
* **सामान्य विभाजन (Semantic segmentation)** केवल पिक्सल का वर्ग बताता है और एक ही वर्ग के अलग-अलग ऑब्जेक्ट्स के बीच भेद नहीं करता।
* **इंस्टेंस विभाजन (Instance segmentation)** वर्गों को अलग-अलग इंस्टेंस में विभाजित करता है।
उदाहरण के लिए, इंस्टेंस विभाजन में ये भेड़ें अलग-अलग ऑब्जेक्ट्स हैं, लेकिन सामान्य विभाजन में सभी भेड़ों को एक ही वर्ग में दर्शाया जाता है।
<img src="images/instance_vs_semantic.jpeg" width="50%">
> चित्र [इस ब्लॉग पोस्ट](https://nirmalamurali.medium.com/image-classification-vs-semantic-segmentation-vs-instance-segmentation-625c33a08d50) से लिया गया है।
विभाजन के लिए विभिन्न न्यूरल आर्किटेक्चर हैं, लेकिन उनकी संरचना समान होती है। एक तरह से, यह उस ऑटोएन्कोडर के समान है जिसके बारे में आपने पहले सीखा था, लेकिन यहां हमारा लक्ष्य मूल इमेज को पुनर्निर्मित करने के बजाय एक **मास्क** को पुनर्निर्मित करना है। इस प्रकार, विभाजन नेटवर्क में निम्नलिखित भाग होते हैं:
* **एन्कोडर (Encoder)** इनपुट इमेज से फीचर्स निकालता है।
* **डिकोडर (Decoder)** उन फीचर्स को **मास्क इमेज** में बदलता है, जिसका आकार और चैनल्स की संख्या वर्गों की संख्या के अनुसार होती है।
<img src="images/segm.png" width="80%">
> चित्र [इस प्रकाशन](https://arxiv.org/pdf/2001.05566.pdf) से लिया गया है।
हमें विशेष रूप से उस लॉस फंक्शन का उल्लेख करना चाहिए जो विभाजन के लिए उपयोग किया जाता है। जब क्लासिकल ऑटोएन्कोडर्स का उपयोग करते हैं, तो हमें दो इमेजेस के बीच समानता को मापने की आवश्यकता होती है, और इसके लिए हम मीन स्क्वायर एरर (MSE) का उपयोग कर सकते हैं। विभाजन में, टारगेट मास्क इमेज का प्रत्येक पिक्सल वर्ग संख्या का प्रतिनिधित्व करता है (तीसरे आयाम के साथ वन-हॉट-एन्कोडेड), इसलिए हमें वर्गीकरण के लिए विशिष्ट लॉस फंक्शन का उपयोग करना होता है - क्रॉस-एंट्रॉपी लॉस, जिसे सभी पिक्सल्स पर औसत किया जाता है। यदि मास्क बाइनरी है, तो **बाइनरी क्रॉस-एंट्रॉपी लॉस** (BCE) का उपयोग किया जाता है।
> ✅ वन-हॉट एन्कोडिंग एक तकनीक है जिसमें वर्ग लेबल को वर्गों की संख्या के बराबर लंबाई वाले वेक्टर में एन्कोड किया जाता है। [इस लेख](https://datagy.io/sklearn-one-hot-encode/) में इस तकनीक के बारे में अधिक जानें।
## मेडिकल इमेजिंग के लिए विभाजन
इस पाठ में, हम विभाजन को क्रियान्वित होते हुए देखेंगे, जहां नेटवर्क को मेडिकल इमेजेस में मानव नेवी (जिसे तिल भी कहा जाता है) को पहचानने के लिए प्रशिक्षित किया जाएगा। हम <a href="https://www.fc.up.pt/addi/ph2%20database.html">PH<sup>2</sup> डेटाबेस</a> का उपयोग करेंगे, जो डर्मोस्कोपी इमेजेस का स्रोत है। इस डेटासेट में तीन वर्गों के 200 इमेजेस हैं: सामान्य नेवस, असामान्य नेवस, और मेलानोमा। सभी इमेजेस में एक संबंधित **मास्क** भी होता है जो नेवस को रेखांकित करता है।
> ✅ यह तकनीक विशेष रूप से इस प्रकार की मेडिकल इमेजिंग के लिए उपयुक्त है, लेकिन आप अन्य वास्तविक दुनिया के अनुप्रयोगों की कल्पना कैसे कर सकते हैं?
<img alt="navi" src="images/navi.png"/>
> चित्र PH<sup>2</sup> डेटाबेस से लिया गया है।
हम एक मॉडल को प्रशिक्षित करेंगे जो किसी भी नेवस को उसकी पृष्ठभूमि से विभाजित कर सके।
## ✍️ अभ्यास: सामान्य विभाजन
नीचे दिए गए नोटबुक्स खोलें ताकि आप विभिन्न सामान्य विभाजन आर्किटेक्चर के बारे में अधिक जान सकें, उनके साथ काम करने का अभ्यास कर सकें, और उन्हें क्रियान्वित होते हुए देख सकें।
* [सामान्य विभाजन PyTorch](../../../../../lessons/4-ComputerVision/12-Segmentation/SemanticSegmentationPytorch.ipynb)
* [सामान्य विभाजन TensorFlow](../../../../../lessons/4-ComputerVision/12-Segmentation/SemanticSegmentationTF.ipynb)
## [Post-lecture quiz](https://red-field-0a6ddfd03.1.azurestaticapps.net/quiz/212)
## निष्कर्ष
विभाजन इमेज वर्गीकरण के लिए एक बहुत ही शक्तिशाली तकनीक है, जो बाउंडिंग बॉक्सेस से आगे बढ़कर पिक्सल-स्तरीय वर्गीकरण तक जाती है। यह तकनीक मेडिकल इमेजिंग सहित अन्य अनुप्रयोगों में उपयोग की जाती है।
## 🚀 चुनौती
शरीर विभाजन इमेजेस में लोगों के साथ किए जाने वाले सामान्य कार्यों में से एक है। अन्य महत्वपूर्ण कार्यों में **कंकाल पहचान** और **पोज़ पहचान** शामिल हैं। [OpenPose](https://github.com/CMU-Perceptual-Computing-Lab/openpose) लाइब्रेरी को आज़माएं और देखें कि पोज़ पहचान का उपयोग कैसे किया जा सकता है।
## समीक्षा और स्व-अध्ययन
यह [विकिपीडिया लेख](https://wikipedia.org/wiki/Image_segmentation) इस तकनीक के विभिन्न अनुप्रयोगों का अच्छा अवलोकन प्रदान करता है। इस क्षेत्र में इंस्टेंस विभाजन और पैनॉप्टिक विभाजन के उप-डोमेन के बारे में स्वयं अधिक जानें।
## [असाइनमेंट](lab/README.md)
इस लैब में, [Segmentation Full Body MADS Dataset](https://www.kaggle.com/datasets/tapakah68/segmentation-full-body-mads-dataset) का उपयोग करके **मानव शरीर विभाजन** करने का प्रयास करें।
**अस्वीकरण**:
यह दस्तावेज़ AI अनुवाद सेवा [Co-op Translator](https://github.com/Azure/co-op-translator) का उपयोग करके अनुवादित किया गया है। जबकि हम सटीकता के लिए प्रयासरत हैं, कृपया ध्यान दें कि स्वचालित अनुवाद में त्रुटियां या अशुद्धियां हो सकती हैं। मूल भाषा में उपलब्ध मूल दस्तावेज़ को प्रामाणिक स्रोत माना जाना चाहिए। महत्वपूर्ण जानकारी के लिए, पेशेवर मानव अनुवाद की सिफारिश की जाती है। इस अनुवाद के उपयोग से उत्पन्न किसी भी गलतफहमी या गलत व्याख्या के लिए हम उत्तरदायी नहीं हैं।