جيه بيه إي جي
جيه بي إي جي (بالإنجليزية: JPEG) في المعلوماتية هي طريقة معيارية شائعة لضغط الصور الرقمية مع خسارة في القيمة المعلوماتية للصورة.[1][2][3] ويسمى الشكل الذي يوظف هذا الضغط JPEG كذلك؛ أشهر الامتدادات المستخدمة لهذا الشكل هي.jpeg و.jfif و.jpg و.JPG و.JPE لكن.jpg يبقى أكثرها استخداما في جميع المنصات.
امتداد الملف |
جيه بيه إيه جي جيه بيه إيه جي |
---|---|
صيغة وسائط الإنترنت |
ملف صورة نقطية |
المطور |
Joint Photographic Experts Group |
موقع الويب |
jpeg.org… (الإنجليزية) |
وهذا الشكل - JPEG/JFIF - أكثر الشواكل استخداما لحفظ ونقل الصور الشمسية على شبكة الويب. إذ أنها مفضلة على شواكل أخرى مثل GIF، الذي لا يسمح إلا ب256 لون مختلف، وهذا غير كاف للصور الشمسية، و PNG الذي ينتج ملفات كبيرة مقارنة ب JPEG/JFIF. ويعود هذا إلى ضغطها العالي الذي يضغط البيانات بنسبة 20 مرة تقريبا فمثلا إذا كانت تحتاج صورة 200 بت فإن استعمال خوارزمية الضغط هذه يمكن تقليصها إلى 10 بتات.
لكن إذا كان هذا الشكل ملائما للصور، فإنه يبقى عاجزا عن منافسة GIF و PNG في الرسوم المتجيّة والبيانات الأيقونية والنسيجية، بسبب سوء أداء طريقة ضغطه على مثل هذه الأنواع من الصور، التي يشيع استعمال GIF و PNG بالنسبة لها.
و JPEG اختصار لكلمة Joint Photographic Expert Group، وهي الجهة القائمة على تطوير هذه الخوارزمية.
خوارزمية JPEG للضغط متناظرة أي أن الجهد اللازم للتشفير هو نفس الجهد اللازم لفك التشفير. وفي ما يلي شرح لكيفية عمل الخوارزمية في أبسط صيغاتها المسماة تشفير خط الأساس المتتالي Baseline Sequential Encoding والقائمة على الخطوات السبعة التالية:
الترقيم
عدلالترقيم أو digitalization هو عملية استعيان للقنوات الثلاثة الموجودة في الصورة ألا وهي الأحمر والأخضر والأزرق. ويتم حفظ كل بكسل (أي كل نقطة استمثال) في 8 بتات (لكل قناة).
يمكن أن نتصور أن الصورة الرقمية عبارة عن 3 مصفوفات يمثل كل بكسل فيها عنصر من عناصر المصفوفة. أي أنه مثلا إذا كان لديك صورة طولها أربع بكسلات وعرضها أربع بكسلات فإنه لديك 16 بكسل ويمكن أن تحفظ هذه الصورة في شاكلة 3 مصفوفات (مصفوفة لكل من اللون أو ما يسمى القناة الحمراء والخضراء والزرقاء). ويكون في كل عنصر عدد يدل على قوة اللون (مثلا رقم 255 في القناة الحمراء يدل على أحمر قان و 0 يدل على لون أحمر خافت).
تغيير التشفير
عدليتم تغيير التشفير من RGB (أحمر أخضر أزرق) إلى تشفير Y،U،V حيث Y هي الإضائة و Uو V هي التلون. كيف يتم هذا وما معناه؟؟
يتم التحويل بالطريقة التالية:
مع الإشارة إلى أن R،G،B،U،V،Y بين 0 و 255. كما أن المعاملات في التحويل تأتي من حساسية العين البشرية حيث أنها حساسة جدا في مجال اللون الأخضر في حين أنها أقل حساسية في مجال اللونين الأزرق والأحمر ذلك فإن المعامل للون الأخضر هو الأكبر قيمة مقارنة بالمعاملين الأخرين ولهذا السبب لا نقوم بارساله بل نرسل فقط اللونين الاحمر والازرق وفي الاستقبال نقوم باستنتاجه للتقليل من معدل البيانات المرسله
تقسيم الصورة إلى قطع 8x8 بكسل
عدليتم تقسم الصورة إلى قطع متكونة من 8x8 بكسل لتكون أسهل معالجة في الخطوة الموالية. (ما يحدث مع صور غير قابلة للقسمة على 8 معرف في المعيار الخاص بجايبغ)
تحويل جيب التمام
عدليتم تحويل كل من المصفوفات 8x8 عن طريق تحويل جيب التمام ونتحصل بذلك على مصفوفا تحتوي على التردد المكاني
استعيان التردد المثالي
عدلفي هذه الخطوة يمكن أن نفقد بعض البتات أو المعلومات من الصورة. حيث يتم استعيان الترددات Frequency Samplingالبطيئة بطريقة جيدة(بطريقة تسمح برؤية الفوارق الصغيرة بين ترددين مختلفين) في حين يتم استعيان الترددات السريعة بطريقة سيئة (أي أنه مثلا تردد 50 بكسل في وحدة طول و 60 بكسل في وحدة طول كلها تمثل ب 50 بكسل في وحدة طول أي لا يمكن التفريق بينهما. مع الإشارة إلى أنه يجب فهم كلمة بكسل في وحدة طول على أنها تردد مكاني حيث لا يمكن إتخاذ الهرتز كوحدة هنا لأن التردد ليس زمني). والسبب في عمل هذا هو أن العين البشرية لا يمكنها التمييز بين الترددات المكانية السريعة فإن تأملت في خط طوله سنتمتر مثلا يتكون من 100 بكسل فإنك لن تلحظ فرقا بالنسبة لخط فيه 1000بكسل
مسح الصورة
عدليتم بعد ذلك مسح الصورة بطريقة تجعل البيانات في شكل شعاع بدلا من مصفوفة ويتم المسح كما هو مبين في الصورة.
تشفير بطريقة RLC
عدليتم في هذه الخطوة تشفير الشعاع الذي تحصلنا عليه أعلاه (و هو في العادة يحتوي الكثير من الأصفار) بطريقة RLC وهي اختصار ل Run Length Coding. حيث أنه إذا كان لدينا الشعاع التالي:
12 0 0 0 36
فإنها تكتب:
و يعني الرقم الأول أنه يجب أن نتخطى 3 بتات (أي لا يتم حفظها) وأن الرقم القادم يكون -12
تشفير بطريقة VLC
عدلVLC اختصار ل Variable Length Coding أو ما يعرف بتشفير هوفمان Huffman-Coding. حيث يتم حفظ كل عدد يظهر بالشعاع بطريقة أمثل من ناحية حجم البيانات. حيث أن الأرقام التي تظهر بكثرة في الشعاع يتم تشفيرها بعدد صغير من البتات مثلا إذا كان الرقم 2 يظهر بكثرة في الشعاع فإنه يرمز له ب 0 عوض التشفير الثنائي العادي الذي يحتاج إلى بتان لحفض الرقم 2 لأنه يحفظها 10. أما الأرقام التي تظهر بقلة فإنه يتم تشفيرها بعدد كبير من البتات. يتم التشفير بطريقة حيث أنه لا يمكن أن يتشابه رقمان في بدايتهما يعني أنه لو كان أول بت تحصل عليه من الشعاع هو 0 فلا داعي لانتظار ما سيأتي بعده من بتات لمعرفة معنى هذا البت ويمكن القول مباشرة أن 0 هي التشفير المقابل لرقم 5 مثلا. و تمثل الخطوتان الأخيرتان ما يعرف ب تشفير إنتروبي وهي طريقة تشفير لا تضيع معها معلومات.
انظر أيضاً
عدلمراجع
عدل- ^ "Multi-Picture Format" (PDF). 2009. مؤرشف من الأصل (PDF) في 2017-10-10. اطلع عليه بتاريخ 2015-12-30.
- ^ "JPEG Patent's Single Claim Rejected (And Smacked Down For Good Measure)". Techdirt.com. 1 أغسطس 2008. مؤرشف من الأصل في 2018-07-17. اطلع عليه بتاريخ 2011-05-29.
- ^ Thomas G. Lane. "Advanced Features: Compression parameter selection". Using the IJG JPEG Library. مؤرشف من الأصل في 2018-01-01.
وصلات خارجية
عدل