Pengantar
Kami melakukan evaluasi komparatif atas WebP dan kompresi gambar JPEG berdasarkan
encoder baru yang kami rilis di libwebp
. Tujuannya adalah untuk menjalankan serangkaian
eksperimen yang mudah diulang menggunakan alat yang tersedia secara publik dan membandingkan
kompresi gambar yang dicapai oleh WebP dan JPEG.
Studi komparatif WebP kami sebelumnya berfokus pada evaluasi gambar dalam jumlah besar dan dilakukan pada sumber JPEG yang di-crawl dari web. JPEG adalah format kompresi lossy dan memperkenalkan artefak kompresi ke sumber. Selain itu, awalnya kami menggunakan Peak Signal-to-Noise Ratio atau PSNR sebagai metrik kualitas. PSNR memiliki beberapa kelemahan saat digunakan sebagai metrik kualitas gambar. Berdasarkan masukan dari komunitas, kami melakukan eksperimen pada gambar PNG, termasuk gambar yang tersedia di beberapa rangkaian pengujian standar. Dalam studi ini, kami menggunakan Kemiripan Struktural atau SSIM sebagai metrik kualitas untuk studi ini. SSIM dianggap sebagai metrik kualitas visual yang lebih baik.
Metodologi
Kami menjelaskan dua jenis evaluasi. Dalam kasus pertama, kita mempelajari kompresi tambahan yang dicapai oleh WebP pada tingkat kualitas JPEG yang sama. Secara khusus, kami membuat gambar WebP dengan kualitas yang sama (sesuai indeks SSIM) sebagai gambar JPEG, lalu membandingkan ukuran file WebP dan gambar JPEG. Dalam kasus kedua, kami menganalisis plot SSIM vs bit per piksel (bpp) untuk WebP dan JPEG. Plot ini menunjukkan keseimbangan distorsi rasio untuk WebP dan JPEG.
Set data untuk eksperimen terdiri dari gambar PNG. Gambar ini diperoleh dari rangkaian gambar pengujian standar yang dapat diakses secara publik serta kumpulan besar gambar PNG yang di-crawl dari web.
Setiap eksperimen terdiri dari menjalankan serangkaian perintah. Hanya alat command line yang tersedia untuk publik yang digunakan untuk menjaga agar eksperimen tetap dapat diproduksi ulang bagi yang lain. Alat command line yang digunakan untuk eksperimen ini adalah:
identify
danconvert
adalah alat command line yang merupakan bagian dari ImageMagick. Kami menggunakan versi 6.5.7 untuk analisis ini. Kami menggunakanconvert
untuk mengonversi antara format PNG dan PPM. Kami menggunakanidentify
untuk mengekstrak informasi lebar dan tinggi gambar.cwebp
dandwebp
adalah alat command line yang merupakan bagian dari librarylibwebp
yang kami rilis pada K1 2011. Kami menggunakan library versi 0.1.2. Kami menggunakancwebp
dandwebp
untuk mengenkode dan mendekode gambar WebP. Kami menggunakan parameter encoding dan decoding default alat ini.cjpeg
dandjpeg
adalah alat command line yang merupakan bagian dari librarylibjpeg
. Kami menggunakan library versi 6b. Kami menggunakancjpeg
dandjpeg
untuk mengenkode dan mendekode gambar JPEG. Kami menggunakancjpeg
dengan flag-optimize
untuk mengoptimalkan ukuran file. Kita menyetel semua parameter lain ke nilai defaultnya.
Kualitas gambar diukur menggunakan SSIM. Seperti disebutkan sebelumnya, SSIM secara umum diterima sebagai metrik berkualitas yang lebih baik daripada PSNR. Untuk penghitungan indeks SSIM, kami menggunakan implementasi yang tersedia untuk umum di C++. Pembaca dapat mendownload skrip Python yang kami gunakan dalam eksperimen dari repositori kode untuk referensi.
Set Data Gambar
Kami memilih set data untuk mengevaluasi koleksi gambar pengujian standar serta pada sejumlah besar gambar. Berikut adalah daftar set data yang digunakan dalam eksperimen.
Lenna: banyak menggunakan gambar Lenna (512 x 512 piksel).
Kodak: 24 gambar dari Kodak true color image suite.
Tecnick: 100 gambar dari koleksi tersedia di Tecnick.com. Kami menggunakan 100 gambar warna RGB ukuran asli.
Image_crawl: Untuk menguji gambar dalam jumlah besar, kami mengumpulkan sampel acak gambar PNG dari database crawl web Google Penelusuran Gambar. Sebagian besar gambar PNG yang di-crawl adalah ikon, grafik, diagram, dokumen yang dipindai, dll. Namun, sebagian besar gambar dalam koleksi pengujian standar adalah seperti foto, bukan gambar yang dihasilkan komputer. Agar set data ini mirip dengan rangkaian pengujian standar, kami menjalankan algoritme deteksi wajah pada gambar PNG ini dan hanya mempertimbangkan gambar tersebut (sekitar 11.000) untuk eksperimen ini, yang lulus pengujian deteksi ini.
Eksperimen 1: WebP vs. JPEG pada Indeks SSIM yang Setara
Dalam eksperimen ini, kami menghasilkan gambar JPEG dan WebP pada nilai SSIM yang sebanding dan mengukur rasio ukuran file. Langkah-langkah eksperimen tersebut adalah sebagai berikut:
Kompresi gambar PNG sumber untuk JPEG dengan parameter kualitas tetap Q dan rekam SSIM antara gambar PNG sumber dan gambar JPEG yang dikompresi.
Kompresi gambar sumber yang sama ke WebP dengan parameter kualitas yang mencapai SSIM yang dicatat di atas sedekat mungkin.
Kami menjalankan dua langkah di atas pada semua gambar dalam set data, lalu mengukur ukuran file rata-rata dan SSIM untuk gambar JPEG dan WebP.
Tabel berikut menunjukkan hasil eksperimen ini untuk tiga nilai yang berbeda (50, 75, dan 95) pada parameter kualitas JPEG Q. Parameter kualitas 50 dan 95 masing-masing mewakili kompresi gambar pada kecepatan bit rendah dan tinggi. Kami juga telah menyertakan parameter kualitas JPEG 75 karena secara umum merupakan tingkat kualitas untuk gambar JPEG.
Tabel 1: Ukuran file rata-rata untuk WebP dan JPEG untuk indeks SSIM yang sama sesuai dengan JPEG Q=50
Lenna | Kodak | Musik Tecnik | Gambar_crawl | |
---|---|---|---|---|
WebP: Ukuran File Rata-Rata (SSIM Rata-Rata) |
17,4 KB (0,841) |
31,0 KB (0,898) |
92,4 KB (0,917) |
6,5 KB (0,901) |
JPEG: Ukuran File Rata-Rata (SSIM Rata-Rata) |
23,5 KB (0,840) |
42,7 KB (0,897) |
124,6 KB (0,916) |
9,9 KB (0,899) |
Rasio WebP dengan ukuran file JPEG | 0,74 | 0,72 | 0,74 | 0,66 |
Tabel 2: Ukuran file rata-rata untuk WebP dan JPEG untuk indeks SSIM yang sama yang sesuai dengan JPEG Q=75
Lenna | Kodak | Musik Tecnik | Gambar_crawl | |
---|---|---|---|---|
WebP: Ukuran File Rata-Rata (SSIM Rata-Rata) |
26,7 KB (0,864) |
46,5 KB (0,932) |
139,0 KB (0,939) |
9,9 KB (0,930) |
JPEG: Ukuran File Rata-Rata (SSIM Rata-Rata) |
37,0 KB (0,863) |
66,0 KB (0,931) |
191,0 KB (0,938) |
14,4 KB (0,929) |
Rasio WebP dengan ukuran file JPEG | 0,72 | 0,70 | 0,73 | 0,69 |
Tabel 3: Ukuran file rata-rata untuk WebP dan JPEG untuk indeks SSIM yang sama sesuai dengan JPEG Q=95
Lenna | Kodak | Musik Tecnik | Gambar_crawl | |
---|---|---|---|---|
WebP: Ukuran File Rata-Rata (SSIM Rata-Rata) |
74,3 KB (0,910) |
118,0 KB (0,978) |
356,0 KB (0,970) |
23,4 KB (0,969) |
JPEG: Ukuran File Rata-Rata (SSIM Rata-Rata) |
104 KB (0,907) |
162 KB (0,976) |
492 KB (0,970) |
31,3 KB (0,968) |
Rasio WebP dengan ukuran file JPEG | 0,71 | 0,73 | 0,72 | 0,75 |
Dari tabel di atas, kita dapat mengamati bahwa WebP memberikan peningkatan kompresi tambahan sebesar 25%-34% dibandingkan dengan JPEG pada indeks SSIM yang sama atau sedikit lebih baik.
Eksperimen 2: Plot SSIM vs. BPP untuk WebP dan JPEG
Kami mempelajari kompromi distorsi rasio JPEG dan WebP. Secara khusus, kami mempelajari plot SSIM vs. bit per piksel (bpp) untuk JPEG dan WebP. Kami mengambil gambar PNG sumber, mengompresinya ke JPEG dan WebP menggunakan semua kemungkinan nilai kualitas (0-100). Kemudian, untuk setiap nilai kualitas, kami memetakan SSIM dan bpp yang dicapai untuk JPEG dan WebP. Gambar berikut menunjukkan plot SSIM vs bpp untuk 3 gambar yang dipilih dari 3 set data publik yang telah kami gunakan.
Gambar 1: SSIM vs. BPP untuk Lenna
Gambar 2: SSIM vs. BPP untuk kodim19.png dari set data Kodak
Gambar 3: SSIM vs. BPP untuk RGB_OR_1200x1200_061.png dari set data Tecnick
Selain itu, kami telah mempelajari perilaku rata-rata plot SSIM vs bpp untuk set data Kodak dan Tecnick. Untuk memetakan perilaku rata-rata, kami mengompresi semua gambar dalam set data menggunakan WebP dan JPEG pada 100 nilai kualitas yang berbeda. Kemudian, kami memetakan rata-rata SSIM dan bpp untuk setiap nilai kualitas. Set data crawl gambar berisi gambar heterogen yang tidak cocok dengan agregasi data ini. Plot berikut menunjukkan perilaku rata-rata SSIM dan bpp untuk set data Kodak dan Tecnick.
Gambar 4: SSIM vs. BPP untuk set data Kodak
Gambar 5: SSIM vs. BPP untuk set data Tecnick
Secara keseluruhan, dari plot di atas, kita dapat mengamati bahwa WebP secara konsisten memerlukan lebih sedikit bit per piksel daripada JPEG untuk mencapai indeks SSIM yang sama.
Kesimpulan
Studi ini mengevaluasi kompresi WebP dibandingkan dengan JPEG. Kami mengamati bahwa ukuran file WebP rata-rata 25%-34% lebih kecil dibandingkan ukuran file JPEG pada indeks SSIM yang setara. Plot SSIM vs bpp menunjukkan bahwa WebP secara konsisten memerlukan lebih sedikit bit per piksel dibandingkan JPEG untuk indeks SSIM yang sama. Hasil ini menunjukkan bahwa WebP dapat memberikan peningkatan kompresi yang signifikan dibandingkan JPEG.
1 Huynh-Kam, Q.; Ghanbari, Jepang (2008). "Cakupan validitas PSNR dalam penilaian kualitas gambar/video". Elektronik Surat 44:800-801.YT:10.1049/el:20080522.
2 Z. Wang, A. C. Bovik, H. R. Sheikh, dan E. P. Simoncelli, "Penilaian kualitas gambar: Dari pengukuran error hingga kesamaan struktural," Pemrosesan Gambar, Transaksi IEEE, Volume 13, Edisi 4, hlm. 600-612, 2004.