المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : طلب خوارزمية لضغط البيانات



Eng.EAM
01-01-2018, 16:52
السلام عليكم ورحمة الله وبركاته
لو سمحتوا انا أحتاج مساعدة في مشروع تخرجي وهي إضافة خوارزمية ضغط الملفات (zip) الى الأكواد الخاصة بالمشروع الي عندة مساعدة او طريقة أقدر فيها أعرف الخوارزمية ياليت يساعد وله جزيل الشكر مقدماً

البعد الخامس
03-01-2018, 00:04
وعليكم السلام ورحمه الله وبركاته

ممكن استفسار ما هى انواع الملفات التى سوف تتم ضغطها ؟

مثل صور ، كلمات وحروف ، افلام ؟؟

abdalhaliem
03-01-2018, 01:57
هو الأخ يسـأل عن الخوارزمية

أى الطريقه أو الأسلوب أو الخطوات

الخوارزمية هي مجموعة من الخطوات الرياضية والمنطقية والمتسلسلة

اللازمة لحل مشكلة ما

وسميت الخوارزمية بهذا الاسم

نسبة إلى العالم أبو جعفر محمد بن موسى الخوارزمي

الذي ابتكرها في القرن التاسع الميلادي

والأخ يقصد هنا

الطريقه أو الأسلوب المتبع بضغط الملفات

( طريقه ضغطه )

كمثال خوارزمية هافمان

Huffman Codes

وأسهل الطرق طالما دراستك تتطلب ذلك

عليك باليوتيوب

كل ماعليك أن تكتب بخانه البحث

huffman coding image compression

ستجد غايتك والعديد من الفيديوهات التى تشرح ذلك

كهذا الفيديو


https://www.youtube.com/watch?v=iiGZ947Tcck

بالتوفيق

تحياتى

Eng.EAM
03-01-2018, 08:33
شكراً على الأهتمام ، خوارزمية لضغط جميع أنواع الملفات

Eng.EAM
03-01-2018, 08:41
هو الأخ يسـأل عن الخوارزمية

أى الطريقه أو الأسلوب أو الخطوات

الخوارزمية هي مجموعة من الخطوات الرياضية والمنطقية والمتسلسلة

اللازمة لحل مشكلة ما

وسميت الخوارزمية بهذا الاسم

نسبة إلى العالم أبو جعفر محمد بن موسى الخوارزمي

الذي ابتكرها في القرن التاسع الميلادي

والأخ يقصد هنا

الطريقه أو الأسلوب المتبع بضغط الملفات

( طريقه ضغطه )

كمثال خوارزمية هافمان

Huffman Codes

وأسهل الطرق طالما دراستك تتطلب ذلك

عليك باليوتيوب

كل ماعليك أن تكتب بخانه البحث

huffman coding image compression

ستجد غايتك والعديد من الفيديوهات التى تشرح ذلك

كهذا الفيديو


https://www.youtube.com/watch?v=iiGZ947Tcck

بالتوفيق

تحياتى



شكراً أخي الكريم على الاهتمام بالموضوع ، ولكن لي طلب لو أستطعت ان تشرح لي ما الفرق بين خوارزمية هفمان وخوارزمية ال zip

abdalhaliem
03-01-2018, 13:31
الأخ الكريم


الموضوع كدراسه لابد أن تتعمق به جداا

وتبحث من هنا وهناك

لكن كتبسيط للقصه

خوارزمية ال zip

وهى

coding compression

والضغط هنا يعنى ضغط الملفات

compression أو Compaction

المعنيان متقاربان


ضغط البيانات هي عملية هدفها التقليل من كمية البيانات

التي نحتاج إلى تخزينها في إحدى وسائط التخزين

أو التي تحتاج إلى نقل عبر الشبكة

ويتم ذلك عادة باستخدام تقنية الترميز



https://s3.amazonaws.com/authorstream/content/177396_633757163690050000.jpg




والجدير بالذكر بأن تقنية الترميز تسبق عصر التكنولوجيا

حيث أن أول من استخدمها المخترع الأمريكي

صاموئيل مورس

عام 1836

وسميت باسمه

Morse Code


لماذا نحتاج إلى ضغط البيانات؟

لعدة أسباب منها توفير المساحة التخزينية التي تحتلها الملفات كبيرة الحجم

وبالنسبة لعالم الشبكات فالموضوع حيوي وهام للغاية

حيث أننا اليوم نتعامل مع ملفات كبيرة الحجم كملفات الصوت والصورة وغيرها

كل هذه لو أرسلناها بصيغتها الأصلية

بدون أي عملية ضغط بيانات ستحتاج إلى وقت طويل في عملية الإرسال والاستقبال

بالإضافة إلى حدوث اختناق في حركة المرور عبر الشبكة

لأنها لاتكون حزمه واحده


https://www.percona.com/blog/wp-content/uploads/2016/03/Database-Compression-Methods-300x200.jpg




في حين لو تم ضغط نفس البيانات ونقلها ستنتقل أسرع بكثير

وبالتالي نكون قد قلصنا من زمن الإرسال لنفس البيانات

ليس لموضوع الحجم فقط ولكن لكونها حزمه واحده مضغوطه

هنالك نوعان لإجراء عملية الضغط


Lossy


https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRd5JD0jOr3NcHy1MM7DEbEbQgCUNDvp Z3JR9CeqkZh7_AzZdoCRQ



في هذا النوع عند فك ضغط الملف سنحصل على نسخة مشابهة للملف الأصلي

(ليست مطابقة تماماً للملف الأصلي)

حيث يتم فقدان بعض التفاصيل

وبالتالي هذا النوع مقبول لضغط الصور والفيديو

https://vpnpick.com/wp-content/uploads/2016/11/data-compression.jpg


(حيث تكون الصورة بعد فك الضغط مشابهة للصورة الأصلية مع فقدان بعض الجودة)

( نسبه لاتكاد تذكر )



والنوع الأخر

Lossless

https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRd5JD0jOr3NcHy1MM7DEbEbQgCUNDvp Z3JR9CeqkZh7_AzZdoCRQ


في هذا النوع إن الملف الناتج عن عملية فك الضغط مطابق تماماً للملف الأصلي

أي لايوجد أي فقدان للتفاصيل ومن هنا جاءت سبب التسمية

وبالتالي فهو مناسب لضغط الملفات النصية حيث من المهم الحصول على نسخة مطابقة للملف الأصلي



وأشهر ثلاث برامج لضغط البيانات العامة

كلهم من نوع Lossless

Zip: للأجهزة التي تعمل بنظام windows

Stufflt: للأجهزة التي تعمل بنظام Apple

Gzip: للأجهزة التي تعمل بنظام UNIX



وأشهر الخوارزميات المستخدمة في ضغط البيانات


RLE

(Run-Length Encoding)
********************


LZ

(Lempel-Ziv)
***********************


LZW

(Lempel-Ziv-Welch)
**************************

الموضوع كبير جداا كما هو واضح كدراسه

لابد من البحث الدؤوب من جانبك


أليك بعض الراوبط المفيده


https://en.wikipedia.org/wiki/Data_compression

https://en.wikipedia.org/wiki/Data_compression


بالتوفيق

تحياتى

Eng.EAM
03-01-2018, 16:22
أشكرك أخي عبد الحليم لكن على مايبدو أنك فهمت الموضوع على انه موضوع دراسة ويتطلب عمل دوؤب لكن الحقيقة هي اني اريد فقط استخدام الخوارزمية كمساندة لي في مشروعي (إخفاء بيانات داخل صورة) الفكرة تتمثل في اننا في مشروعنا نريد تصغير حجم البيانات لكي نستطيع إخفاءها داخل صورة وفكرنا انو نحط الخوارزمية حق الضغط داخل الخوارزمية حق الإخفاء والي بنصممها احنا وعلى كذا احنا الان نبحث عن للاستخدام وليس للدراسة المطلقة واشكرك بعمق على شرحك الأكثر من رائع والذي افادنا كثير بتكوين فكرة راسخة عن موضوع الضغط وأقدم لك الشكر من أعضاء المشروع أيضاً ولكني اريد حالياً ان ابحث عن خوارزمية جاهزة للتنفيذ وبلغة الجافا تحديداً

abdalhaliem
03-01-2018, 17:04
تمام أخى الكريم

الأن فهمتك

الحقيقه مجال الجافا أيضا كبير

لكن على كل حال أذا أردت طرق أبسط

لأخفاء بيانات داخل صوره قم بمشاهده هذا الفيديو


https://www.youtube.com/watch?v=VBKtCCsqAtM


أو



https://www.youtube.com/watch?v=MVzTua-e2pA


وأذا أردت عن طريق الجافا

فقط أكتب بمربع البحث

Minimize data size so that we can hide it in an image using Java

بالتوفيق

Eng.EAM
03-01-2018, 18:47
أشكرك أخي الكريم وإن شاء الله نستفيد من ما قدمت لنا مشروعنا هو تطوير خوارزمية لذلك فاننا نحاول الاستفادة من جميع الافكار للاخفاء

abdalhaliem
03-01-2018, 19:08
أشكرك أخي الكريم وإن شاء الله نستفيد من ما قدمت لنا مشروعنا هو تطوير خوارزمية لذلك فاننا نحاول الاستفادة من جميع الافكار للاخفاء

الشكر لله أخى الكريم

بالتوفيق دائماا

تحياتى