Sözlük

Kodlama Süreci Nedir?

Kodlama Süreci, bir JPEG dosyasının resim verisini sıkıştırmak için kullandığı yöntemi (örneğin baseline veya progressive) adlandırır. Bu bilgi, doğrudan resim verisinin kendisinden okunur.

encoding-process

Bir kodlama süreci, bir resmi sıkıştırılmış görüntü verisine dönüştüren yöntemdir. Bir metadata raporunda, Kodlama Süreci örneğin Baseline DCT, Huffman coding gibi bir JPG dosyasının kullandığı yöntemin adıdır.

Değerin 2 bölümü vardır. İlk bölüm, resim verisinin nasıl sıkıştırıldığını adlandırır. İkinci bölüm, sonucun bitlere nasıl paketlendiğini adlandırır.

Bunu hangi dosyalar içeriyor

Kodlama Süreci bir JPEG alanıdır ve her JPEG görüntüsünde bulunur. JPEG standardı bu bilgiyi, sıkıştırılmış resim verisinden önce gelen kısa bir başlığa koyar.

Değerin kaynağı

Hiçbir kamera veya program Kodlama Süreci'ni ayrı bir etiket olarak yazmaz. ExifTool gibi bir okuyucu, değeri bu başlığı açan Kare Başlangıcı (Start of Frame) işaretleyicisinden hesaplar. JPEG standardı her kodlama süreci için farklı bir işaretleyici tanımlar.

Aynı başlık, görüntü genişliği ve yüksekliğini, örnek başına bit sayısını ve renk bileşeni sayısını da saklar. ExifTool ayrıca kroma alt örneklemeyi de bu başlıktan hesaplar.

Değer görüntü verisinin nasıl saklandığını tanımladığı için, bunu normal bir etiket gibi düzenleyemezsiniz. Kodlama Süreci yalnızca bir program resmi farklı ayarlarla yeniden kaydettiğinde değişir.

Değerlerin görünümü

ExifTool 13 değerden birini gösterir. Library of Congress'e göre en yaygın olanlar temel (baseline) ve aşamalı (progressive) türlerdir.

  • Baseline DCT, Huffman coding
  • Extended sequential DCT, Huffman coding
  • Progressive DCT, Huffman coding
  • Lossless, Huffman coding
  • Sequential DCT, differential Huffman coding
  • Progressive DCT, differential Huffman coding
  • Lossless, Differential Huffman coding
  • Extended sequential DCT, arithmetic coding
  • Progressive DCT, arithmetic coding
  • Lossless, arithmetic coding
  • Sequential DCT, differential arithmetic coding
  • Progressive DCT, differential arithmetic coding
  • Lossless, differential arithmetic coding

Değerin her bir parçası ne anlama geliyor

  • DCT, ayrık kosinüs dönüşümünü ifade eder. DCT'ye dayalı JPEG süreçleri kayıplıdır: dosyayı küçültmek için bazı ayrıntıları atarlar.
  • Baseline temel DCT sürecidir. Örnek başına 8 bit ve Huffman kodlaması kullanır.
  • Sequential, her renk bileşeninin tek bir taramada saklandığı anlamına gelir.
  • Extended sequential temel sürece benzer çalışır, ancak örnek başına 12 bite ve aritmetik kodlamaya da izin verir.
  • Progressive resmi birkaç taramada saklar. Her tarama genellikle kaliteyi artırır, böylece bir görüntüleyici önce kaba bir resim gösterip sonra onu keskinleştirebilir.
  • Lossless DCT kullanmaz. Çözülen resim özgün haliyle birebir aynıdır.
  • differential hiyerarşik moda aittir. Burada her sonraki kare, yalnızca bir önceki kare ile arasındaki farkları saklar.
  • Huffman coding ve arithmetic coding, veriyi daha az bite paketlemek için kullanılan 2 kayıpsız yöntemdir.

Dosyanız için neden önemli

JPEG standardı, her programın her süreci desteklemesini zorunlu kılmaz. Her DCT çözücü temel modu desteklemek zorundadır, bu yüzden bir resmin her yerde açılması gerektiğinde temel moddaki bir dosya güvenli seçimdir.

Diğer süreçler bazı programlarda açılamayabilir. Library of Congress'e göre, özgün kayıpsız süreç uygulamalarda yaygın olarak desteklenmemiştir. Huffman kodlamalı kayıpsız bir varyant, Adobe DNG ham formatının 1.1 sürümünde kullanılır.

DCT içeren bir değer, resim kaydedilirken bazı ayrıntıların atıldığını gösterir. Dosyayı yeniden kaydetmek bu ayrıntıları geri getirmez. Alan yalnızca resmin nasıl saklandığını açıklar ve hiçbir kişisel bilgi içermez.