delphi4arab منتديات دلفي للعرب
خوارزمية Hufman - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي التقنية (https://delphi4arab.net/forum/forumdisplay.php?fid=6)
+--- قسم : دلفي والتعامل مع الملفات (https://delphi4arab.net/forum/forumdisplay.php?fid=22)
+--- الموضوع : خوارزمية Hufman (/showthread.php?tid=2488)



خوارزمية Hufman - kachwahed - 11-10-2010

[COLOR="black"]السلام عليكم
في المرفق مثال يستخدم خوارزمية Hufman لضغط (ترميز Encoding) صور bmp
[/COLOR]


خوارزمية Hufman - مبرمج هاوي - 11-10-2010

يعطيك العافية جاري الاطلاع ...

شوف هذا الفيديو هل له علاقة بالموضوع !!

كود :
http://www.youtube.com/watch_popup?v=kLSIOC_2c-Q&vq=medium



خوارزمية Hufman - kachwahed - 11-10-2010

شكرا على المشاركة Smile
تلك تعليمة سطر أوامر لنسخ Binary
كود :
http://www.online-tech-tips.com/computer-tips/hide-file-in-picture/
هذه خوارزمية ترميز شهيرة تستخدم بكثرة كجزء من خوارزميات الضغط لصيغ مختلفة، طالع المزيد:
كود :
http://en.wikipedia.org/wiki/Huffman_coding



خوارزمية Hufman - مبرمج هاوي - 12-10-2010

يعطيك العافية على المعلومات الاكثر من قيمهSmile


خوارزمية Hufman - issamdnn - 05-11-2010

السلام عليكم أخي العزيز

جزاك الله خيراً الحقيقة خوارزمية أكثر من جميلة


خوارزمية Hufman - kachwahed - 05-11-2010

[COLOR="black"]أهلا بعودتك أخي issamdnn
آمل أن نرى المزيد من مواضيعك المثيرة Smile[/COLOR]


خوارزمية Hufman - aljeelany - 25-11-2010

أخ sami هذه خوارزمية ضغط فقط لتقليص حجم البيانات بدون فقد لها
يعتبر تطبيق هذه الخوارزمية معقدة قليلا فزدتها تعقيدا أخي كاش وخصوصا ال Global Variable
هل ممكن تشرح الكود بشكل عام أو على شكل pseudo code


خوارزمية Hufman - kachwahed - 30-11-2010

السلام عليكم
أهلا ومرحبا بضيفنا العزيز aljeelany Smile
نقلت المثال من موقع صيني على ما أذكر للفائدة
لا علاقة لي بذلك Sad



خوارزمية Hufman - mohamedelsahart - 21-04-2012

جزاك الله خيرا


RE: خوارزمية Hufman - ALKO - 26-07-2017

(11-10-2010, 11:01 AM)kachwahed كتب : السلام عليكم
في المرفق مثال يستخدم خوارزمية Hufman لضغط (ترميز Encoding) صور bmp
بارك الله فبك يا استاذ
انا تعرفت على خوارزمبة هوفمن حديثا 
اعجبنني فكرة الضغط و بدأت ببرمجة برنامج يعمل بها
الا انني لم اعتمد على فكرة  هوفمن بالكامل 
فهو اعتمد على نصف  الاحتمالات فقط
و فضلت ان اكثر حرفبن تكرارا تمثلان ببت واحد  صفر و واحد
و ثم اثنان بت تمثل اربعة و سبعة بت تمثل ثمانبة و هكذا
اعتمد على المراحل
قراءة الملف 
ترتيب الملف من  الاكبر الى الاصغر
حساب عدد تكرار كل حرف او كلمة  اي على حسب عدد البايتات التى تربد الضغط 
حسبها 
اعادة الترتيب على على حسب عدد التكرار
انشاء مصفوفة احتمالات البت 
انشاء مصفوفة المستويات معتمدا على امربن
اكبر عدد  الاحرف دون تكرار  تعطينا حجم المستوى بالبت
اكبر عدد مكرر هو صاحب اقل حجم بت اي بت اما صفر او واحد
و المستوى نقصد بها عدد البت الذي سنستبدل به البايت او الكلمة
و في الاخيى وضعها في ملف ثنائي ز المصفوفات هي
الاحرف الاصلبة دون تكرار
المسنويات 
المصفوفة التي استبدلنا فيها الاحرف بالبت
و هيدر لكي نعرف كل قسم و بعض المعلومات عليه
انا متوقف في هذه المرحلة بسبب انني لاقيت صعوبة في التعامل مع الملف بصيغة ثنائية
ساعدني في التعامل مع الملفات كتتب الاخ tgm
لست اءكر الاسم ز عذرا على تلاخطاء غي الكتابة
والله اننبةبالكاد ارى الاحرف بااهاتف بارك الله فيكم