
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 المقترح لا يحقق فقط مقاييس PSNR وSSIM عالية ودقة فك ترميز عالية على ثلاث مجموعات بيانات عامة كبيرة، وهي ALASKA2 وVOC2012 وImageNet، بل إن الصور الإخفائية التي يولّدها CLPSTNet تتمتع أيضًا بدرجات تحليل إخفاء (steganalysis) منخفضة.
بيئتنا التجريبية كما يلي:
يرجى تشغيل الأمر التالي لتثبيت الحزم التابعة:
pip install -r requirement.txt
يتم تدريب النموذج وتقييمه على ثلاث مجموعات بيانات عامة:VOC2012;ImageNet;ALASKA2 مجموعة البيانات الافتراضية المستخدمة في الكود. يجب أن يكون هيكل الدليل كما يلي:
../VOC2012/
├── train/
├── val/
└── test/
يتكون CLPSTNet من ثلاثة مكونات رئيسية:
تتمثل نواة CLPSTNet في الكتلة التلافيفية التدريجية متعددة المقاييس (PMCB)، وهي مطبَّقة في ملف clpstnet.py.
شبكة الترميز (Encoder_Network في ملف clpstnet.py) مسؤولة عن إخفاء المعلومات السرية داخل صورة الغلاف (cover image). تستخدم سلسلة من الكتل التلافيفية التدريجية متعددة المقاييس لتضمين البيانات السرية تدريجيًا مع الحفاظ على الجودة البصرية لصورة الغلاف.
شبكة فك الترميز (decode_Network في ملف decoder.py) تستخرج المعلومات المخفية من الصورة الإخفائية (stego image). كما تستخدم بنية متعددة المقاييس مع فروع التفاف متنوعة لاستعادة البيانات السرية المضمّنة بفعالية.
شبكة الناقد (XuNet في ملف critic.py) مصمَّمة للتمييز بين صور الغلاف والصور الإخفائية. تعمل كخصم أثناء التدريب، مما يدفع شبكة الترميز إلى توليد صور إخفائية يصعب إدراكها.
لتدريب نموذج 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 أو التواصل معنا على: