
CLPSTNet: करिकुलम लर्निंग को एकीकृत करने वाला एक प्रगतिशील मल्टी-स्केल कन्वोल्यूशनल स्टेगानोग्राफ़ी मॉडल
Fengchun Liu; Tong Zhang; Chunying Zhang
इस रिपॉज़िटरी में शोधपत्र "CLPSTNet: A Progressive Multi-Scale Convolutional Steganography Model Integrating Curriculum Learning" का आधिकारिक कार्यान्वयन शामिल है।

CLPSTNet एक प्रगतिशील बहु-पैमाना कनवल्शनल स्टेगानोग्राफी नेटवर्क मॉडल है जो पाठ्यक्रम अधिगम (curriculum learning) को एकीकृत करता है। नेटवर्क में कई प्रगतिशील बहु-पैमाना कनवल्शनल मॉड्यूल होते हैं जो Inception संरचनाओं और विस्तारित कनवल्शन (dilated convolutions) को एकीकृत करते हैं। मॉड्यूल में कई शाखा पथ होते हैं, जो छोटे कनवल्शन कर्नेल और विस्तार दर से शुरू होकर फीचर मैप से बुनियादी, स्थानीय फीचर जानकारी निकालते हैं, और धीरे-धीरे बड़े कनवल्शन कर्नेल और विस्तार दर वाले कनवल्शन तक विस्तारित होते हैं ताकि बड़े रिसेप्टिव फील्ड की फीचर जानकारी का अनुभव किया जा सके। इस प्रकार उथले से गहरे और बारीक से मोटे तक बहु-पैमाना फीचर निष्कर्षण साकार होता है, जिससे उथली गुप्त सूचना विशेषताओं को विभिन्न संलयन चरणों में परिष्कृत किया जा सकता है।
प्रयोगात्मक परिणाम दर्शाते हैं कि प्रस्तावित CLPSTNet न केवल तीन बड़े सार्वजनिक डेटासेटों ALASKA2, VOC2012 और ImageNet पर उच्च PSNR, SSIM मेट्रिक्स और डिकोडिंग सटीकता प्राप्त करता है, बल्कि CLPSTNet द्वारा उत्पन्न स्टेगानोग्राफिक छवियों के स्टेगनालिसिस स्कोर भी कम होते हैं।
हमारा प्रयोगात्मक वातावरण इस प्रकार है:
कृपया निर्भरता पैकेज स्थापित करने के लिए निम्न कमांड चलाएँ:
pip install -r requirement.txt
मॉडल को तीन सार्वजनिक डेटासेटों पर प्रशिक्षित और मूल्यांकित किया जाता है:VOC2012;ImageNet;ALASKA2 कोड में उपयोग किया जाने वाला डिफ़ॉल्ट डेटासेट। निर्देशिका संरचना इस प्रकार होनी चाहिए:
../VOC2012/
├── train/
├── val/
└── test/
CLPSTNet तीन मुख्य घटकों से मिलकर बना है:
CLPSTNet का मूल प्रगतिशील बहु-पैमाना कनवल्शनल ब्लॉक (PMCB) है, जिसे clpstnet.py फ़ाइल में लागू किया गया है।
एन्कोडर नेटवर्क ( clpstnet.py में Encoder_Network ) कवर छवि के भीतर गुप्त सूचना छिपाने के लिए जिम्मेदार है। यह कवर छवि की दृश्य गुणवत्ता बनाए रखते हुए गुप्त डेटा को धीरे-धीरे एम्बेड करने के लिए प्रगतिशील बहु-पैमाना कनवल्शनल ब्लॉकों की एक श्रृंखला का उपयोग करता है।
डिकोडर नेटवर्क ( decoder.py में decode_Network ) स्टेगो छवि से छिपी हुई सूचना निकालता है। यह एम्बेडेड गुप्त डेटा को प्रभावी ढंग से पुनर्प्राप्त करने के लिए विभिन्न कनवल्शन शाखाओं के साथ बहु-पैमाना आर्किटेक्चर का भी उपयोग करता है।
आलोचक नेटवर्क ( critic.py में XuNet ) कवर छवियों और स्टेगो छवियों के बीच अंतर करने के लिए डिज़ाइन किया गया है। यह प्रशिक्षण के दौरान एक प्रतिद्वंद्वी के रूप में कार्य करता है, एन्कोडर को अधिक अगोचर स्टेगो छवियाँ उत्पन्न करने के लिए प्रेरित करता है।
CLPSTNet मॉडल को प्रशिक्षित करने के लिए, main.py स्क्रिप्ट चलाएँ:
python main.py
प्रशिक्षण प्रक्रिया में निम्नलिखित चरण शामिल हैं:
डेटा लोडिंग : निर्दिष्ट डेटासेट से छवियाँ लोड की जाती हैं।
गुप्त डेटा निर्माण : छिपाए जाने वाले गुप्त सूचना के रूप में यादृच्छिक बाइनरी डेटा उत्पन्न किया जाता है (D)।
फॉरवर्ड पास : कवर छवि और गुप्त डेटा को एन्कोडर के माध्यम से पारित किया जाता है ताकि एक स्टेगो छवि उत्पन्न हो, जिसे फिर डिकोडर के माध्यम से पारित करके गुप्त डेटा पुनर्प्राप्त किया जाता है।
लॉस गणना : कई लॉस फ़ंक्शनों की गणना की जाती है:
अनुकूलन : मॉडल मापदंडों को Adam अनुकूलक का उपयोग करके अद्यतन किया जाता है।
प्रशिक्षित मॉडल का मूल्यांकन करने के लिए, val.py स्क्रिप्ट का उपयोग करें:
python val.py
यह स्क्रिप्ट एक प्रशिक्षित मॉडल लोड करती है और सत्यापन डेटासेट पर उसका मूल्यांकन करती है, जिसमें गणना की जाती है:
प्रशिक्षित मॉडल से नमूना स्टेगो छवियाँ उत्पन्न करने के लिए, sample.py स्क्रिप्ट का उपयोग करें:
python sample.py

यदि आपको हमारा कार्य आपके शोध में उपयोगी लगे, तो कृपया उद्धृत करने पर विचार करें:
@article{liu2025clpstnet,
title={CLPSTNet: A Progressive Multi-Scale Convolutional Steganography Model Integrating Curriculum Learning},
author={Liu, Fengchun and Zhang, Tong and Zhang, Chunying},
journal={arXiv preprint arXiv:2504.16364},
year={2025}
}
यदि आपको इस रिपॉज़िटरी का उपयोग करते समय कोई समस्या आती है, तो कृपया बेझिझक issues में संदेश छोड़ें या हमसे संपर्क करें: