دراسة مقارنة

دراسة مقارنة بين WebP وJPEG وJPEG في عام 2000، أيلول (سبتمبر) 2010

ملاحظة: أجرينا هذه الدراسة الأولية باستخدام الإصدار الأول الذي أصدرناه من WebP، والذي يستخدم مكتبة libvpx. بالإضافة إلى ذلك، كانت صور المصدر صور JPEG قمنا بالزحف إليها من الويب. واستنادًا إلى الملاحظات الواردة من المنتدى، أجرينا الآن دراسة جديدة باستخدام الإصدار 0.1.2 من libwebp، بدءًا من الصور بدون فقدان البيانات (PNG) كمصدر. وتحل الدراسة الجديدة محل هذه الدراسة.

أجرى فريق WebP دراسة مقارنة لثلاث طرق لضغط الصور على مجموعة عشوائية تضم مليون صورة. وكانت أهداف الدراسة هي قياس الضغط الناتج عن تلك الطرق وتحليل المفاضلات بين أحجام الصور والضغط.

تم تطبيق ثلاث طرق ضغط، WebP وJPEG 2000 وRe-JPEG على 900,000 صورة JPEG في مجموعة البيانات. تمت إعادة ضغط صور JPEG باستخدام Re-JPEG بحيث تكون كل صورة قريبة قدر الإمكان من قيمة نسبة الإشارة إلى التشويش (PSNR) المستهدفة القصوى. تم تحليل الصور بعد أن تم ضغطها.

بالإضافة إلى الدراسة واسعة النطاق، فحص الفريق يدويًا 100 صورة عشوائية وتبيّن أنّ تنسيق WebP يوفّر في معظم الحالات جودة مرئية مقبولة.

الاستنتاجات

تحقّق تقنية WebP ضغطًا أعلى بشكل عام مقارنةً بضغط JPEG أو JPEG 2000. وتزداد المكاسب في تصغير حجم الملف بشكل خاص مع الصور الأصغر حجمًا التي تكون الأكثر شيوعًا على الويب.

مجموعة البيانات

كانت مجموعة البيانات المستخدَمة في الدراسة عبارة عن مجموعة من مليون صورة تم أخذ عيّنات منها عشوائيًا من مستودع صور تم الزحف إليها من الويب. يوضح الجدول التالي توزيع أنواع مختلفة من الصور في مجموعة البيانات.

Type الإحصاء
JPEG حوالى 900 ألف
PNG حوالى 47 ألف
GIF حوالى 47 ألف
غير ذلك حوالى 6 آلاف

تصميم التجربة

تم تنفيذ التجارب على مرحلتين:

  1. قام الفريق بتشغيل WebP على الصور مع استهداف PSNR يبلغ 42. وا ضبطوا مَعلمة الجودة (QP) في برنامج ترميز WebP إلى أن حقّقوا نتيجة أقرب ما يكون إلى 42 صورة. وبالتالي، لم يكن إجمالي PSNR الفعلي الذي تم تحقيقه لكل صورة بالضرورة هو 42 صورة بالضبط.

  2. استخدَم الفريق قيمة PSNR للصور المضغوطة بتنسيق WebP بصفتها الصور المستهدفة للصور بتنسيق JPEG 2000 وJPEG Re-JPEG. وأجرى الفريق أيضًا بحثًا خطيًا على معايير الجودة للصور بتنسيق JPEG 2000 وJPEG من أجل الاقتراب قدر الإمكان من رقم PSNR المستهدف.

تم قياس نتيجة الضغط الفعلية كنسبة مئوية باستخدام الصيغة التالية:

compression_percentage = 100 * (original_image.length - compressed_image.length) / original_image.length

النتائج

أسفرت الاختبارات عن النتائج التالية لزيادة الضغط السالبة وغير السالبة:

كسب الضغط غير السالب

لم يعاقب الفريق أي طريقة إذا أدت هذه الطريقة إلى زيادة حجم الصورة بعد الضغط. وهذا يعني أنه اعتبرت نسبة الضغط المئوية للضغط 0 عندما يكون zip_image.length أكبر من original_image.length.

كسب الضغط السلبي

سمح الفريق بالتعرّف على نتائج نسبة الضغط السالب للحصول على فهم أفضل للأداء الأولي للضاغط المختلفة.

في ما يلي متوسط النسب المئوية للضغط التي تم تحقيقها باستخدام كل طريقة من الطرق الثلاث.

Type متوسط PSNR الذي تم الحصول عليه متوسط الضغط %
(زيادة الضغط غير السالب)
متوسط نسبة الضغط: %
(زيادة في الضغط السلبي)
WebP 39,38 41.30 39,80
JPEG 2000 39,49 27.67 9.71
إعادة JPEG 39.36 22.37 14.62

عند السماح بزيادة الضغط السلبي، كان متوسط أداء JPEG 2000 أقل من أداء JPEG. وقد يرجع ذلك إلى وجود عناصر عالية التردد في الصور بتنسيق JPEG، ويمكن أن تساهم هذه العناصر في حالة ضغط غير مثالية.

تعذّر تنفيذ Kakadu المستخدم في التجربة للتحويل إلى تنسيق JPEG 2000 في تحويل حوالي 240,000 صورة.

كانت نسبة ضغط JPEG 2000 أقل من Re-JPEG، ويرجع ذلك أساسًا إلى أن نتيجة JPEG 2000 كانت ضغطًا سلبيًا للعديد من الصور. لهذا السبب، حققت صور JPEG درجة ضغط إجمالية أقل.

توضح الأشكال التالية توزيع الرسوم البيانية للطرق الثلاث:

الشكل 1: توزيع السكان لحجم الصورة

يوضّح الرسم البياني أنّ معظم الصور كانت صغيرة. وبشكل عام، فإن معدل تكرار الصور التي يزيد حجمها عن 500 كيلوبايت أقل من 100 كيلوبايت.

الشكل 2: النِسب المئوية للضغط للصور بتنسيق WebP وJPEG وJPEG لعام 2000

يوضّح هذا الرسم البياني أنّ هيكل الصور المضغوطة باستخدام WebP خضع لضغط أفضل من re-jpeg وjpeg 2000. بالإضافة إلى ذلك، حصلت الصور المضغوطة باستخدام تنسيق WebP على ضغط إيجابي أكثر من الصور الأخرى.

الشكل 3: مقارنة أحجام الصور ونسبة الضغط

يوضّح هذا الرسم البياني أنّ تنسيق WebP يحقِّق ضغطًا أفضل من التنسيقات الأخرى، لا سيّما للصور الأصغر حجمًا.