İletişim

JPEG Nedir?

Kısa tanım

JPEG, adını standardı hazırlayan Joint Photographic Experts Group'tan alan ve fotoğraflar için tasarlanmış kayıplı bir görsel sıkıştırma formatıdır. Görüntüyü 8×8 piksellik bloklara bölüp ayrık kosinüs dönüşümüyle (DCT) frekans bileşenlerine ayırır ve gözün zor fark ettiği ayrıntıyı atar. Her tarayıcı ve cihazda açılır; ancak şeffaflığı ve animasyonu desteklemez, düşük kalitede ise blok ve halka bozulmaları gösterir.

Diğer adları: JPG, .jpg, image/jpeg, progressive JPEG

Fotoğrafın kayıplı JPEG sıkıştırmasıyla çok küçüldüğünü, metin ve logolarda ise bozulma izleri oluştuğunu gösteren akış

Kayıplı sıkıştırma adım adım

1992'de standartlaşan JPEG, insan gözünün iki zayıflığından yararlanır: parlaklık değişimlerine renk değişimlerinden daha duyarlıdır ve ince, yüksek frekanslı ayrıntıyı geniş tonlardan daha az fark eder. Kodlayıcı bu yüzden şu adımları izler:

  1. Renk dönüşümü: RGB pikseller parlaklık (Y) ve iki renk farkı kanalına (Cb, Cr) ayrılır.
  2. Renk alt örnekleme: Renk kanalları genellikle yatayda ve dikeyde yarı çözünürlükte saklanır (4:2:0). Fotoğrafta neredeyse görünmez; kırmızı metin gibi keskin renkli kenarlarda ise bulanıklık yapar.
  3. DCT: Her 8×8 blok, piksellerden frekans katsayılarına dönüştürülür.
  4. Nicemleme (quantization): Yüksek frekanslı katsayılar kabaca yuvarlanır ya da sıfırlanır. Kaybın gerçekleştiği adım budur ve “kalite” ayarı aslında bu tabloyu yönetir.
  5. Entropi kodlama: Kalan değerler Huffman kodlamasıyla kayıpsız biçimde paketlenir.

Baseline ve progressive JPEG

Baseline JPEG yukarıdan aşağıya satır satır çizilir; yavaş bağlantıda görselin üst kısmı görünürken alt kısmı boş kalır. Progressive JPEG ise aynı veriyi birden fazla taramaya böler: önce bütün görselin kaba bir hâli gelir, sonraki taramalar ayrıntıyı ekler. Büyük fotoğraflarda progressive kodlama çoğu zaman biraz daha küçük dosya da üretir. Yeni formatların bir kısmı kademeli görüntülemeyi desteklemediği için bu özellik JPEG'in hâlâ sahip olduğu bir avantajdır.

Kalite ayarı ve tekrar kaydetme kaybı

0–100 arası kalite değeri standart bir ölçek değildir; bir kodlayıcıdaki 80 ile diğerindeki 80 farklı dosya boyutu ve görüntü üretebilir. Web için fotoğraflarda orta-yüksek değerler genellikle yeterlidir, ama doğru değer görerek seçilmelidir. Daha önemli bir tuzak nesil kaybıdır: bir JPEG açılıp yeniden JPEG olarak kaydedildiğinde nicemleme tekrar uygulanır ve her döngüde biraz daha bozulma eklenir. Ana kopyaları kayıpsız saklamak ve web sürümlerini her seferinde bu kaynaktan üretmek gerekir.

JPEG'in zayıf olduğu içerikler de bellidir: ekran görüntüleri, metin içeren grafikler ve logolar. Keskin kenarların çevresinde halka şeklinde gölgeler ve bloklar oluşur; bu tür görseller için PNG ya da kayıpsız WebP daha uygundur.

EXIF, yönlendirme ve gizlilik

Kameralar ve telefonlar JPEG dosyasına EXIF meta verisi ekler: cihaz modeli, çekim tarihi, yönlendirme (orientation) etiketi ve çoğu zaman GPS koordinatları. Bir çalışanın evinde çektiği fotoğraf siteye ham hâliyle yüklenirse konum bilgisi de yayımlanmış olur; bu, kişisel veri açısından da dikkat edilmesi gereken bir durumdur. Web'e çıkacak görsellerde meta veriyi temizlemek hem gizliliği korur hem birkaç kilobayt kazandırır. Temizlerken iki şeye dikkat edin: yönlendirme etiketi silinmeden önce görsel fiziksel olarak döndürülmeli, geniş renk gamında çekilmiş görsellerde ise ICC renk profili korunmalıdır.

Bugün JPEG'in yeri

Aynı kalitede WebP ve AVIF genellikle daha küçük dosya üretir, bu yüzden modern sitelerde JPEG çoğu zaman yedek format rolündedir. Yine de e-posta istemcileri, sosyal ağ önizlemeleri ve görseli tarayıcı dışında işleyen sistemler için en güvenli seçenek olmaya devam ediyor. Format ne olursa olsun asıl kazanç, görselin gösterileceği boyutta sunulmasından gelir; bunun yolu duyarlı görseller tekniğidir. mozjpeg ve Google'ın jpegli kodlayıcısı gibi modern araçlar, standart JPEG uyumluluğunu bozmadan eski kodlayıcılara göre daha küçük dosyalar üretebilir.

İlgili terimler

← Sözlüğe dön