Catatan Saat ini tidak ada pengembangan yang terjadi di sini. Sebagian dari proyek ini telah digunakan dalam JPEG XL, yang sedang dalam pengembangan aktif.
PIK adalah format gambar lengkap untuk foto dan internet.
PIK adalah varian JPEG yang dimodernisasi dengan tujuan serupa: penyimpanan dan pengiriman foto dan gambar web yang efisien. Ini dirancang dari awal untuk kualitas tinggi dan decoding cepat .
Fitur yang memungkinkan kualitas tinggi (tidak ada kerugian):
Selain pengkodean lossless sepenuhnya dan perseptual, PIK mencapai keseimbangan kualitas/ukuran/kecepatan yang baik di berbagai bitrate (0,5 - 3 bpp). PIK memungkinkan kompresi otomatis/tanpa pengawasan karena menjamin kualitas target tetap terjaga di seluruh gambar. Ia memprioritaskan keaslian , representasi setia dari aslinya, dibandingkan estetika yang dapat dicapai dengan halusinasi detail atau 'meningkatkan' (misalnya mempertajam/menjenuhkan) masukan.
Fitur yang mengaktifkan decoding cepat (> 1 GB/s multithread):
Fitur lainnya:
Encoder mode responsif PIK mendukung pass yang setara dengan menurunkan resolusi sebesar 4x atau 8x. Formatnya mendukung lintasan yang lebih fleksibel, dengan tingkat detail apa pun, mulai dari downsampling setara 8x hingga resolusi penuh. Jumlah detail dalam sebuah pass tidak harus seragam: area gambar dapat dikirim dengan detail yang lebih tinggi. Dampak mode responsif pada ukuran gambar yang dikodekan rendah, rata-rata sekitar 2% untuk gambar responsif 3 pass (8x, 4x, resolusi penuh). Dalam konfigurasi seperti itu, dua lintasan pertama masing-masing mengambil rata-rata 20% ukuran gambar.
Perangkat lunak saat ini memerlukan CPU berkemampuan AVX2 dan FMA, misalnya Haswell. Bangunan saat ini memerlukan dentang 6 atau lebih baru.
Untuk membangun, petunjuk berikut dapat digunakan:
git submodule update --init
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
make -j8
Ini menciptakan biner cpik
dan dpik
di build/
.
Penggunaan dasar adalah sebagai berikut:
cpik [--distance ] input.png output.pik
Argumen baris perintah --distance
opsional untuk cpik adalah jarak Butteraugli (lihat http://github.com/google/butteraugli), yang menunjukkan kesalahan terbesar yang dapat diterima. Nilai yang lebih besar menyebabkan file lebih kecil dan kualitas lebih rendah. Nilai default 1.0 seharusnya menghasilkan hasil yang tidak menimbulkan kerugian.
Perhatikan bahwa bitstream masih dalam pengembangan dan belum dibekukan.