الإختزال بخوارزمية البت الأقل حظا (Lsb)

السلام عليكم و رحمة الله و بركاته
في سلسة مقالاتنا الجديدة حول تقنيات الإختزال و التي بدأناها في هذا المقال السابق حول التعريف بعلم الإختزال (يمكنكم قراءة المقال السابق من هنا : http://technawi.net/?p=5194 ) سنتحدث اليوم عن الإختزال بخوارزمية البت الأقل حظا(Lsb) .
الاختزال الصوري :
هو نوع من أنواع الإختزال و طرقها عن طريق إخفاء الرسالة المراد إرسالها تحت ملف صوري، ويعد هذا النوع من الإخفاء من أكثر الأنواع شيوعاً في الاستخدام لما تتميز به الصور من صفات تجعلها الوسط المثالي للإخفاء. ويتم تطبيق هذه النوع من الإخفاء باستخدام أحد الطرق التالية:
التحويل الزاوي المتقطع (direct cosine transformation )
التحويل الموجي (wavelet transformation)
والإخفاء باستخدام الإدخال في البت الأقل أهمية ( LSB )
وتعد طريقة الإدخال في البت الأقل أهمية من أكثر الطرق شيوعاً، وفي ما يلي شرح مبسط لهذه الطريقه مع مثال بسيط لتوضيح كيفية عملها
لنفرض أننا نريد إخفاء حرف واحد وهو الحرف A نقوم بتحويله للنظام الثنائي فتظهر لنا قيمته تتكون من 8 Bit اي 1 Bayt ويكون كالتالي :
1010111 مثلاً , الأن ناخذ البكسل الأول من الصوره الشخصيه وبتتكون من 4 Bay هي كالتالي : RGB & alpha وتكون قيمها مثلاً القيم الموجوده في الشكل (1)
10101011 = R
10111001 = G
10111100 = B
10111100 = Alpha
إن توزيع قیم Bits في bayt الواحد، يكون كالتالي:
وھذا ما يوضح أن Bit الواحد يمثل 256 قیمة (من 0 في حال جمیع البتات تحمل قیمة 0 ) الى ( 255 عند ما تكون كل قیم البتات = 1) فلو أردنا تمثیل الرقم 95 بطريقة النظام الثنائي، بالتأكید سیكون:
و في المرحلة الأساسية تعلمنا أن الرقم على الیمین يمثل أقل الأرقام تأثیراً، وكما يُسمى ( الأحاد) جرب معي أن تغیر الرقم الذي على الیمین من 0 الى 1، سیصبح الرقم 96 بدلاً من 95 ، وجرب معي أن تغیر البت على الیسار من 0 الى 1، سیصبح الرقم 223 ھذا معناه أن البت الأخیر ھو البت الأقل أھمیة
( البت الذي على الیمین طبع اً )،والذي لو جعلناه واحداً لأصبح الرقم 96
والان بتعويض حرف الـ A مع الـ Bit الأقل أهمية نجد أن قيم الـ RGB ستصبح كتالي :
بالنظر على الشكل (3) نلاحظ انه يجب علينا أن ناخذ 2 بكسل من الصوره حتى نستطيع إخفاء حرف واحد يتكون من 8 Bit
تستطيع مشاهدة هذه النتائج من خلال شاشة المخرجات على برمجية الـ C# من خلال الاكواد البرمجيه التالية , المكتوبه بشكل يدوي
والكود فهمه سهل , إذ اننا نتعامل مع صور هذا يعني اننا نتعامل مع مصفوفه ثنائيه نقوم بإنشاء عداد للمرور على الاعمده وعداد للمرور على الصفوف
ومن ثم أمر احضار قيمة البكسل لكل من الالوان الثلاث الاحمر والاخضر والازرق.
فهكذا سيكون شكل شاشة المخرجات
هذا يعني ان قيمة ASCII Code الـ R في البكسل 0و0 =19
هذا يعني ان قيمة ASCII Code الـ G في البكسل 0و0 =121
هذا يعني ان قيمة ASCII Code الـ B في البكسل 0و0 =205
وتكون قيمة ASCII Code للحرف A هي 56
فيتم تحويلها جميعها للنظام الثنائي ثم القيام بعملية الأستبدال
لمتابعة المزيد من الأخبار و المقالات و الفيديوهات التعليمية, تابعونا على صفحتنا على موقع فيسبوك عبر الرابط التالي : صفحة موقع تكناوي.نت
عبادة جميل جدا هذا الشرح المتواضع
اسلوبك جميل وسهل
مبدع دائما استمر على خطى ابداعك
شكرا دكتوري الحبيب
مشتاقينلك .. سعيد جدا جدا
لهذا المرور الطيب
بارك الله فيك
انا اشكرك جدا على الموضوع ولاني استفدت منه وذلك لكون رساله البكالوريوس لي في هذا المجال
شكرا جزيلا لكم على هذا الكرم
اتمنى مساعدتي في بحثي الي يتطلب عملية اخفاء نص داخل صورة , لكن اخفاء 2 بت من النص في LSB في واحد من الوان البكسل في الصورة
اتمنى المساعدة باسرع وقت