Ultra HDR Resim Biçimi v1.0

Giriş

Bu belgede, kodlayıcı parçası olan yeni bir dosya biçiminin JPEG resim dosyasındaki logaritmik aralıktaki harita görüntüsü kazancı. Bunu yapmayan eski okuyucular yeni biçimi destekle; geleneksel düşük dinamikleri okuyup görüntüle resim dosyasındaki aralık görüntüsü.Biçimi destekleyen okuyucular, kazanç haritasına sahip birincil resmi görüntüler ve yüksek dinamik aralıklı uyumlu ekranlar kullanın.

Bu belgenin geri kalanında, bir projeyi tamamlamak için bu biçimi kullanın. Özetle, uyum sağlayan bir görüntünün yaşam döngüsü şu biçimi kullanın:

  1. Kodlama

    1. Harita oluşturma özelliğinden yararlanın
    2. Harita sıkıştırması elde edin
    3. Harita container'ı oluşturma işlevini elde edin
  2. Kod çözme


Örnek
İlişkili meta veriler ve ofset ile ultra HDR resim biçimi dosya düzeni
bilgi

Şekil 1. Örnek dosya düzeni ve ilgili meta veriler.

Motivasyon

Bu dosya biçiminin amacı, ek bilgileri SDR resmine kodlamaktır. görüntü oluşturmak için görüntüleme tekniğiyle birlikte kullanılabilecek en iyi HDR oluşturmalarını tek bir dosyada tutmasına yardımcı olur.

Bunun pratik olması için dosya biçiminin:

  • Geriye dönük uyumluluğa sahip olmanız gerekir. Bu sayede, naif izleyicilerde geleneksel SDR gösterilir.
  • Fazladan çok fazla yer kaplamamalıdır.

Ayrıca, görüntüleme tekniği şu şartları karşılamalıdır:

  • Kodu çözmek için yoğun işlem gerektirmez.
  • Ekranın HDR ve SDR beyaz noktaları arasındaki oranlara uyum sağlayabiliyor olmak. cihazlar arasında önemli ölçüde, hatta tek bir cihazda, olanak tanır.

Son olarak da teknik, önceki tüm eylemlerin hem de hiçbir zaman:

  • Öne çıkanlar kesiliyor.
  • Etkileyici gölgeler.
  • Yerel kontrastı değiştirme veya sıkıştırma.
  • Göreli ton ilişkilerinin değiştirilmesi (sahnedeki nesneler arasında).

Bağımlılıklar

Aşağıda, bu spesifikasyon için normatif referanslar verilmiştir:

Tanımlar

  • SDR ekran

    • HDR içeriği görüntülemek için tasarlanmamış geleneksel ekran. Bu ekranlar genellikle yaklaşık 400 derecelik bir nominal en yüksek parlaklık üretir cd/m2 veya daha az.
  • HDR ekran

    • HDR içerikler için tasarlanmış bir ekran. Bu ekranlar genellikle bir SDR ekrana kıyasla daha yüksek bir nominal en yüksek parlaklık vardır. 800 cd/m2 veya daha yüksek ve genellikle daha iyi kontrasta sahiptir en az 160 oranında bulunur.
  • Birincil görsel

    • Bir GContainer dosyasındaki bir resmin ikincil medyaya sahip ilk örneği dosyası olarak eklenir. Birincil görüntü, GContainer XMP meta verisi içeriyor sonraki ikincil medya öğesinin sırasını ve özelliklerini tanımlama dosyalarını yüklemenizi sağlar.
  • İkincil resim

    • Bir GContainer dosyasına göz atın.
  • Aralık sıkıştırma

    • Fotoğrafçılıkta, gerçek dünyaya ait sahneler genellikle bir kareden daha dinamik bir aralığa sahiptir. SDR ekran temsil edebilir. Aralık sıkıştırma gibi işlemler de bir web sitesinin dinamik aralığını azaltmak için gereklidir görüntüsüdür. Bu azaltma işlemi, parlak alanların kırpılmasını veya parçalanmayı önlemelidir korumayı deneyin.Şunu denerseniz: katkıda bulunan, resimdeki büyük parlaklık kenarlarının boyutunu küresel zıtlıktan daha büyük bir boyut sunmaya çalışırken küçük parlaklık kenarları var.Her ne kadar söz konusu olabilir. Bu işlem çoğu modern sistemde standart dijital fotoğraf makineleri kullanıyor.
  • SDR beyaz nokta

    • SDR içeriğin belirli bir değerdeki maksimum doğrusal parlaklığı bir nokta olabilir.
  • HDR beyaz nokta

    • HDR içeriğin belirli bir ayardaki maksimum doğrusal parlaklığı bir nokta olabilir. Bu değer genellikle SDR beyaz noktasından yüksektir.
  • Artırma

    • HDR beyaz noktasının SDR beyaz noktasına bölümü.
  • Maksimum içerik artışı (denklemlerde max_content_boost)

    • Bu değer, içerik üreticinin bir resmin ne kadar parlaklığını SDR işlemeye göre HDR ekranda gösterildiğinde görüntü alabilir.
    • Bu değer, belirli bir resim için sabittir. Örneğin, değeri dörtse, herhangi bir piksel için pikselin doğrusal parlaklığı görüntülenen HDR oluşturma işleminin en fazla 4 kat daha fazla doğrusal parlaklığı SDR oluşturma kullanmaktan sorumlusunuz. Pratikte bu, iş akışının daha parlak kısımları sahne 4 kata kadar daha parlak gösterilebilir.
    • Pratikte bu değer genellikle 1, 0'dan büyüktür.
    • Her zaman Min. içerik artırma değerinden büyük veya bu değere eşittir.
  • Minimum içerik artışı (denklemlerde min_content_boost)

    • Bu değer, içerik üreticinin bir reklamın ne kadar koyu renk HDR ekranda gösterildiğinde, SDR'ye göre oluşturabilirsiniz.Bu değer, belirli bir resim için sabittir.
    • Örneğin değer 0,5 ise herhangi bir piksel için doğrusal Görüntülenen HDR oluşturma işleminin parlaklığı, en az SDR oluşturma işleminin doğrusal parlaklığı.
    • Pratikte bu değer genellikle 1,0'a eşit veya yalnızca 1,0'dan küçüktür.
    • Her zaman Maksimum içerik güçlendirme değerinden küçük veya bu değere eşittir.
  • Maksimum görüntüleme artışı (denklemlerde max_display_boost)

    • Bir ekranın belirli bir noktasında desteklenen maksimum güçlendirme gerekir. Bu değer, cihaz ayarlarına ve diğer ayarlara bağlı olarak zaman içinde değişebilir veya akıllı telefonların ışığında kaç parlak piksel ekranda görebilirsiniz.
    • Örneğin, bu değer 4, 0 ise ekran şunları yapabilir: SDR'den en fazla dört kat daha parlak bir piksel görüntüleniyor beyaz nokta. Bu değer her zaman >= 1, 0'dır çünkü görüntü her zaman en az SDR beyaz kadar parlak HDR beyaz görüntüler.
  • Ekran güçlendirme

    • Maksimum içerik güçlendirme ve maksimum görüntüleme artışından daha az olana eşittir. Bu değer her zaman >= 1,0 olur.
    • Örneğin maksimum içerik güçlendirme 4, 0 ve maksimum görüntüleme artışı 3,0 ise ekran güçlendirmesi 3.0 olur. Pikseller 3 kata kadar daha parlak görüntülenir çünkü görüntüleme özellikleri sınırlayıcı faktördür.
    • Başka bir örnek daha vermek gerekirse, maksimum içerik artışı 4,0 ve maksimum görüntüleme artışı ise 5,0, ekran güçlendirmesi ise 4,0'dır. Pikseller 4 kata kadar gösterilir içeriğin amacı sınırlayıcı faktör olduğundan SDR'den daha parlak olmalıdır.
  • Hedef HDR oluşturma

    • İçerik üreticiye göre ideal HDR oluşturma.
  • Uyarlanmış HDR oluşturma

    • Ekran görüntüsünde gösterilen son HDR oluşturma Hedef HDR oluşturma işlemini mevcut ekran güçlendirmesine göre ayarlama.
  • Harita kazan (denklemlerde recovery(x, y))

    • SDR oluşturmada her pikselin ne kadar parlaklaştırılacağını gösteren bir harita hedef HDR işlemesini üretmek için. Bu harita tek kanallı veya Çok kanallı. Çok kanallı harita, her kanal için ayrı bir kazancı gösterir. renk kanalını (örneğin, kırmızı, yeşil ve mavi) kullanabilirsiniz. Bu belgede oldukça benzerdir.
  • clamp(x, a, b)

    • x değerini [a, b] aralığına sabitleyin.
  • exp2(x)

    • 2. taban üsleme; 2x.
  • floor(x)

    • X'e eşit veya x'ten küçük en yakın tam sayıyı döndürür.
  • log2(x)

    • 2. taban logaritma; günlük2(x)
  • pow(b, x)

    • Üs oluşturma; bx.
  • XMP

  • Çoklu Resim Biçimi

  • GKapsayıcı

    • GContainer, bir görüntüde birden çok görüntüyü depolama yöntemidir Bu kapsayıcıda bir görüntünün birincil görüntü olduğu kabul edilir. Herhangi biri ek resimler, alternatif versiyon veya yardımcı olarak kabul edilir. XMP meta verileri, herhangi bir öğenin varlığını ve anlamını ek resim. Daha fazla bilgi için GContainer ayrıntılar bölümüne bakın.

Kodla

Bu bölümde, uygun bir JPEG dosyasının nasıl kodlanacağı açıklanmaktadır. bkz. T.81 (09/92) Dijital sıkıştırma ve sürekli tonlama kodlama Bağımlılıklar bölümünde, daha fazla bilgi için JPEG biçimi hakkında.

Harita oluşturma özelliğinden yararlanın

Kamera görüntüleme ardışık düzenleri genellikle daha yüksek dinamik aralıklı parlaklık verilerini geleneksel parlaklığın alt aralığına sıkıştır SDR ekranlar. Kazanç haritası, 2024 yılında yürütülen, elde edilen orijinal, daha yüksek dinamik aralık parlaklık verilerini kurtarın.

Bu bölümde yer alan aşağıdaki hesaplamalarda, kayan nokta aritmetiği olduğu varsayılmıştır.

Aşağıdaki işlevler SDR görüntüsünü açıklar:

  • SDR'(x, y), üç kanallı, doğrusal olmayan (genellikle gama kodlamalı) birincil resimdir.
  • SDR(x, y), üç kanallı birincil resmin doğrusal sürümüdür. birincil resim renginin doğrusal sürümüne dönüştürülerek elde edilir boşluk oluşturur. Örneğin, sRGB aktarım işlevi içeren bir renk alanından renk primerlerini koruyan doğrusal renk alanıdır.

Ysdr(x, y) işlevi 0,0 - 1,0 aralığında tanımlanır ve standart dinamik aralık birincil resim doğrusal parlaklığı:

Ysdr(x, y) = primary_color_profile_to_luminance(SDR(x, y))

HDR resim için benzer tanımlar mevcuttur.

  • HDR'(x, y), doğrusal olmayan üç kanallı, yani PQ veya HLG kodlamalı bir değerdir görüntüsüdür.
  • HDR(x, y), üç kanallı doğrusal HDR görüntüdür.

Yhdr(x, y), HDR resmin belirli bir noktasındaki parlaklıktır:

Yhdr(x, y) = primary_color_profile_to_luminance(HDR(x, y))

Yhdr(x, y), 0,0 ile maksimum içerik güçlendirme aralığında tanımlanmıştır.

SDR ve HDR resimler aynı çözünürlükte olmalıdır. SDR'nin renk profili görüntüsü, HDR resmin renk alanını tanımlar.

Örneğin, SDR birincil resmi Display-P3 renk profiline sahipse HDR resmi, söz konusu profilin birincil renklerine göre tanımlanır. Bu HDR resmin aynı zamanda Display-P3 primerlerine sahip olduğu anlamına gelir.

Kazanç haritası, istenen HDR görüntüyü içeren iki doğrusal görüntüden hesaplanır parlaklık, Yhdr(x, y) ve standart parlaklık aralığı resmi, Ysdr(x, y).

pixel_gain(x, y) işlevi, Yhdr(x, y) değerleri arasındaki oran olarak tanımlanır. işlevi ve Ysdr(x, y) işlevi:

pixel_gain(x, y) = (Yhdr(x, y) + offset_hdr) / (Ysdr(x, y) + offset_sdr)

Ysdr(x, y) ve offset_sdr olduğunda pixel_gain(x, y) işlevi davranışı her ikisi de uygulama tanımlıdır.

Örneğin, uygulamalar Ysdr(x, y) ve pixel_gain(x, y) değeri 1,0 olarak tanımlandığından offset_sdr değerleri sıfırdır. Alternatif olarak: değerleri, sıfır olmayan bir offset_sdr kullanarak da bu senaryoyu önler.

Uygulama işleminde offset_sdr ve offset_hdr değerleri seçilebilir.

Kazanç haritası, pixel_gain(x, y) kodlayan bir skaler fonksiyondur maksimum içerik ve minimum içerik artışına göre logaritmik alan:

map_min_log2 = log2(min_content_boost)
map_max_log2 = log2(max_content_boost)

log_recovery(x, y) = (log2(pixel_gain(x, y)) - map_min_log2)
                   / (map_max_log2 - map_min_log2)
clamped_recovery(x, y) = clamp(log_recovery(x, y), 0.0, 1.0)
recovery(x, y) = pow(clamped_recovery(x, y), map_gamma)

pixel_gain(x, y) değerinin sıfır olduğu recovery(x, y) işlevinin davranışı log2(0) tanımlanmamış olduğundan uygulama tanımlandı.

map_gamma, 0,0'dan büyük olması gereken ve tarafından seçilir.

Maksimum içerik güçlendirme ve minimum içerik artışı değerleri şu şekildedir: tarafından belirlenir ve içerik üretici tarafından isteğe bağlı olarak karar verilebilir. Maksimum içerik güçlendirme değeri 1,0 veya daha büyük olmalıdır. Minimum içerik güçlendirme şarttır (0,0, 1,0] aralığında olmalıdır.

recovery(x, y) hücresindeki değerler [0,0, 1,0] aralığıyla sınırlıdır.

Kazanç haritası ikincil bir resim JPEG'sinde depolanır ve bu nedenle kodlanması gerekir kullanılması nedeniyle [0, 255] aralığında olur. Her bir değer bir recovery(x, y) değerini temsil eder ve ikincil öğenin bir pikselinde depolanır görüntüsüdür.

8 bit imzasız tam sayı depolama için, kodlanmış değer takip etmek için:

encoded_recovery(x, y) = floor(recovery(x, y) * 255.0 + 0.5)

Kodlama işlevinin hesaplanması, kayan noktada yapılır ve işlemini belirtilen şekilde yuvarlayarak 8 bitlik işaretsiz tam sayı sonucunun sonuna ekleyin.

Bu kodlama, dosyanın 8 bitlik işaretsiz tam sayı gösterimiyle sonuçlanır 0,0 ile 1,0 arasında recovery(x, y) değerleri. Kodlanmış kazanç haritası, ikincil resim öğesi yükleyebilirsiniz. Uygulama, kullanılacak sırasında kullanılacak sıkıştırma algoritmasıyla ayarlanır.

Kazanç eşlemesi ikincil bir görüntüde depolandıktan sonra, resim dosyasıdır. Birincil resim GContainer'ı dizini kazanım harita görüntüsü için bir öğe içermelidir.

Depolanan kazanç haritasının çözünürlüğü uygulama tarafından tanımlanır ve birincil resmin çözünürlüğünden farklı olacaktır. Kazanç Harita, depolama için birincil resimden farklı bir çözünürlüğe ölçeklenir. örnekleme yöntemi iki doğrusal veya daha iyi olmalıdır ve uygulama tanımlanmıştır.

Kazanç haritasının yönü, birincil resmin yönüyle eşleşmelidir. Eğer depolanan kazanç haritası resmindeki herhangi bir yön meta verisi, EXIF'de olduğu gibi, kullanılmaz.

Görünüyorsa kazanç haritasının renk profili kullanılmaz.

Harita kapsayıcısı elde etme

Renk profili

Resmin renk profili, kullanılacak resim için bir ICC Profili aracılığıyla birincil resimdir.

XMP özellikleri

Birincil resim, ekstra ile en az iki resmi tanımlamak için XMP meta verileri içerir HDR kazanç haritası biçimi için anlamsal bilgiler.

Aşağıdaki alt bölümler bu biçime özel ayrıntıları içerir. Ek bilgiler GContainer'a genel uygunlukla ilgili bilgi için GContainer ayrıntıları bölümüne bakın.

Aşağıdaki tablolarda açıklanan özellik değerleri XMP basit olarak depolanır belirtilen XMP temel değer türlerinin değerleri.

Öğe semantik değerleri

Item:Semantic özelliği, uygulamaya özel anlamı tanımlar her medya öğesinin bir parçasıdır.

Değer Açıklama
Birincil Medya öğesinin, görüntülenmeye hazır birincil resim olduğunu ve emin olmanız gerekir. Dizin bir "Birincil" içermelidir öğe.
GainHarita Medya öğesinin bir kazanç haritası olduğunu belirtir. Dizin, en fazla bir "Kazanç Haritası" öğe.

HDR Kazanç harita meta verisi

Harita meta verileri elde etmek, elde edilen kazancın nasıl yorumlanacağı ve uygulanacağıyla ilgili eşleyerek birincil görüntünün HDR sunumunu oluşturun.

Kazanç harita meta verileri XMP uzantısı için XMP ad alanı URI'si http://ns.adobe.com/hdr-gain-map/1.0/ Varsayılan ad alanı öneki hdrgm

Bu meta veri, kazanç harita görüntüsünün XMP paketinde saklanır ve özellikleri, kazanç harita görüntüsü XMP'nin rdf:Description öğesinde görünmelidir:

Ad Tür Açıklama
hdrgm:Sürüm Metin Kullanımdaki kazanç haritası biçiminin sürümü. Bu sürüm "1.0"dır. Required.
hdrgm:BaseRenditionIsHDR Boole Birincil resmin dinamik aralığını belirtir. "Yanlış" şunu gösterir: birincil görüntü SDR'dir ve kazanç haritası bununla birleştirilebilir. HDR oluşturma. "Doğru" Birincil resmin HDR ve kazanç haritası olduğunu gösterir üretilmesi için bununla birleştirilebilir. "False" olmalıdır. İsteğe bağlı; "False" (Yanlış) değerine ayarlanır.
hdrgm:GainHaritaMin Reel veya sıralı Real dizisi map_min_log2 değerlerini depolar. Bu İzin verilen minimum oran olan log2 minimum içerik güçlendirmesi hedef HDR oluşturma işleminin doğrusal parlaklığının (bölünmüş) tarafından), SDR resmin belirli bir pikseldeki Tek bir Real veya bir sıralı bir Reals dizisidir. Sıralı bir Reals dizisi, bir içerebilir tüm kanallar için geçerli olan veya Kırmızı, Yeşil ve Sırasıyla mavi kanallar. Şundan küçük veya şuna eşit olmalıdır: hdrgm:GainMapMax İsteğe bağlı; varsayılan değer 0,0'dır.
hdrgm:GainMapMax Reel veya sıralı Real dizisi map_max_log2 değerlerini depolar. Bu İzin verilen maksimum oran olan maks. içerik artışının log2 kadarı Hedef HDR oluşturma işleminin doğrusal parlaklığının (bölünmüş tarafından), SDR resmin belirli bir pikseldeki Tek bir Real veya bir sıralı bir Reals dizisidir. Sıralı bir Reals dizisi, bir içerebilir tüm kanallar için geçerli olan veya Kırmızı, Yeşil ve Sırasıyla mavi kanallar. Şundan büyük veya şuna eşit olmalıdır: hdrgm:GainMapMin Zorunludur.
hdrgm:Gama Reel veya sıralı Real dizisi map_gamma değerlerini depolar. Bu, CANNOT TRANSLATE uygulanan harita değerlerine uygulanır. Tek bir Real veya sıralı bir dizi olabilir. Reals. Sıralı bir Reals dizisi olduğunda, bu dizede geçerli olan bir öğe tüm kanallara veya Kırmızı, Yeşil ve Mavi kanallar için üç öğeye tıklayın. 0,0'dan büyük olmalıdır. İsteğe bağlı; varsayılan değer 1.0.
hdrgm:OfsetSDR Reel veya sıralı Real dizisi offset_sdr değerlerini depolar. Bu, harita oluşturma ve uygulama sırasında SDR piksel değerlerine uygulanır. Tek bir Real veya sıralı bir Real dizisi olabilir. Sıralı bir dizi Reals, tüm kanallar için geçerli olan bir veya üç öğe içerebilir. kanalları için dönüşüm izleme oranını gösterir. 0,0 veya daha büyük olmalıdır. İsteğe bağlı; varsayılan değer 0,015625 (1/64) şeklindedir.
hdrgm:OfsetHDR Reel veya sıralı Real dizisi offset_hdr değerlerini depolar. Bu, geçerli harita oluşturma ve uygulama sırasında HDR piksel değerlerine uygulanır. Tek bir Real veya sıralı bir Real dizisi olabilir. Sıralı bir dizi Reals, tüm kanallar için geçerli olan bir veya üç öğe içerebilir. kanalları için dönüşüm izleme oranını gösterir. 0,0 veya daha büyük olmalıdır. İsteğe bağlı; varsayılan değer 0,015625 (1/64) şeklindedir.
hdrgm:HDRCapacityMin Gerçek hdr_capacity_min değerini depolar. Bu Haritanın sahip olduğu minimum görüntüleme güçlendirme değerinin log2 kadarı hiçbir şekilde uygulanmadı. Bu değer, her bir kullanıcı sayfasına göre kazanç haritasına ne kadar arttı. 0,0 veya daha büyük olmalıdır. İsteğe bağlı; varsayılan değeri 0,0'dır.
hdrgm:HDRCapacityMax Gerçek hdr_capacity_max değerini depolar. Bu Haritanın bulunduğu maksimum görüntüleme güçlendirme değerinin log2 kadarı tamamen uygulandı. Bu değer, kazanç haritasının ne kadar uygulanacağını da etkiler artırılabilir. Şundan büyük olmalıdır: hdrgm:HDRCapacityMin Zorunludur.

XMP kazanç haritası örneği

Aşağıdaki geçerli bir kazanç haritası XMP paketi örneği, alınan meta veriler Giriş bölümünde gösterilen örnek dosyayı inceleyin.

<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="XMP Core 5.5.0">
  <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
    <rdf:Description rdf:about=""
     xmlns:hdrgm="http://ns.adobe.com/hdr-gain-map/1.0/"
     hdrgm:Version="1.0"
     hdrgm:GainMapMin="-0.57609993"
     hdrgm:GainMapMax="4.7090998"
     hdrgm:Gamma="1"
     hdrgm:OffsetSDR="0.015625"
     hdrgm:OffsetHDR="0.015625"
     hdrgm:HDRCapacityMin="0"
     hdrgm:HDRCapacityMax="4.7090998"
     hdrgm:BaseRenditionIsHDR="False"/>
  </rdf:RDF>
</x:xmpmeta>

Kazanç haritası için MPF depolama

Kazanç harita görüntüsü, CIPA'da tanımlandığı gibi ek bir resim olarak depolanmalıdır. Aşağıdaki gibi: DC-x 007-2009 Çoklu Resim Biçimi: Bağımlılıklar bölümü.

Kodu çöz

Bu bölümde, uygun bir JPEG dosyasından kazanç haritasının nasıl çözüleceği açıklanmaktadır.

Biçimin sinyali

Bu biçime uygun bir JPEG dosyası, Birincil görüntünün XMP paketinde hdrgm:Version="1.0"; burada hdrgm http://ns.adobe.com/hdr-gain-map/1.0/ ad alanı URI'si.

Kazanç harita görüntüsünü bulun

Görüntünün ayrıştırılması ve kodunun çözülmesiyle ilgili ayrıntılar için aşağıdaki GContainer ayrıntılar bölümüne bakın. Bir "GainMap" XMP içindeki anlamsal öğe rdf:Directory, kazanç bir harita görüntüsünün konumunu işaret etmek için kullanılır. Alternatif olarak MPF Dizini IFD ve tarama görüntüleri XMP, kullanılan öğe sayısını kazanç haritasının konumudur.

Geçersiz meta verileri işleme

Zorunlu bir alan yoksa meta veri geçersiz kabul edilir alanı geçersiz bir değere sahip. Bir değer, veya beklenen aralığın dışında olduğu için ayrıştırılabilir.

Geçersiz meta verilerle karşılaşılırsa kazanç haritası yoksayılmalıdır ve SDR, görüntülenecektir.

Ekran

HDR kazanç haritası biçiminde kodlanan dosyalar, geleneksel SDR ekranlar veya daha yüksek parlaklığa sahip HDR ekranlarda çıktı.

Uyarlanmış HDR oluşturma işlemini oluşturmak için kazanç haritasını kullanma

Bu bölümde yer alan aşağıdaki hesaplamalarda, kayan nokta aritmetiği olduğu varsayılmıştır.

encoded_recovery(x, y) tek kanallı, 8 bit, imzasız tam sayı değeridir elde edilir.

Kazanç haritası birincil resimden farklı bir çözünürlükte olursa, encoded_recovery(x, y), bunun yerine x ve y için birincil resmin genişlik ve yükseklik aralığında harita görüntüsü elde edebilir, tıklayın. Filtreleme yöntemi doğrusal veya daha iyi olmalıdır. tanımlarını öğreneceksiniz.

map_gamma, hdrgm:Gamma meta veri alanı tarafından belirlenir.

log_recovery(x, y), bir logaritmik boşluk:

recovery(x, y) = encoded_recovery(x, y) / 255.0
log_recovery(x, y) = pow(recovery(x, y), 1.0 / map_gamma)

Maksimum ekran artışı, 2008'e kadarki oran olarak tanımlanan skaler bir kayan nokta değeridir mevcut HDR beyaz noktası ve mevcut SDR beyaz noktasına bölünür. Bu değeri görüntüleme sistemi tarafından sağlanır ve zaman içinde değişebilir.

hdr_capacity_max, hdrgm:HDRCapacityMax meta veri alanı tarafından belirlenir. hdr_capacity_min, hdrgm:HDRCapacityMin meta veri alanı tarafından belirlenir.

hdrgm:BaseRenditionIsHDR olduğunda weight_factor şu şekilde belirlenir: "Yanlış":

unclamped_weight_factor = (log2(max_display_boost) - hdr_capacity_min)
                        / (hdr_capacity_max - hdr_capacity_min)
weight_factor = clamp(unclamped_weight_factor, 0.0, 1.0)

hdrgm:BaseRenditionIsHDR değeri "Doğru" olduğunda ikinci denklem şu şekilde olur:

weight_factor = 1.0 - clamp(unclamped_weight_factor, 0.0, 1.0)

gain_map_max, hdrgm:GainMapMax meta veri alanı tarafından belirlenir. gain_map_min, hdrgm:GainMapMin meta veri alanı tarafından belirlenir. offset_sdr, hdrgm:OffsetSDR meta veri alanı tarafından belirlenir. offset_hdr. hdrgm:OffsetHDR meta veri alanı tarafından belirlenir.

Doğrusal olarak uyarlanmış HDR oluşturma aşağıdaki gibi hesaplanabilir:

log_boost(x, y) = gain_map_min * (1.0f - log_recovery(x, y))
                + gain_map_max * log_recovery(x, y)
HDR(x, y) = (SDR(x, y) + offset_sdr) * exp2(log_boost(x, y) * weight_factor)
          - offset_hdr

Gerekirse uygulama,HDR(x, y) alanda verileri göstermeniz gerekir. Bu tür dönüşümler olması gerekir.

GContainer ayrıntıları

Bu bölümde, söz konusu biçimin uyumlu olması için içe aktarılmalıdır. Meta veriler, ISO'ya göre serileştirilir. 166841:2011(E) XMP Spesifikasyonu Bölüm 1 ve yerleşik (bkz. Adobe XMP Spesifikasyonu Bölüm 3'te açıklandığı gibi) birincil resim dosyasının içinde Dosyalarda Depolama. Birincil resim dosyası, aşağıdaki öğeler RDF/XML olarak biçimlendirilmiştir.

XMP paketi gereksinimleri

XMP paketi, http://ns.adobe.com/hdr-gain-map/1.0/ ad alanı URI'si. Varsayılan ad alanı önek hdrgm şeklindedir.

XMP paketi hdrgm:Version="1.0" öğesini tanımlar.

Kapsayıcı öğesi

GContainer XMP uzantısının XMP ad alanı: http://ns.google.com/photos/1.0/container/ Varsayılan ad alanı öneki Container

Birincil resim, XMP meta verisinde bir Container:Directory öğesi içeriyor. dosyada sonraki medya dosyasının sırasını ve özelliklerini tanımlama emin olun. Kapsayıcıdaki her dosyanın, Container:Directory Medya öğesi, dosyadaki konumu açıklar ve birleştirilen her dosyanın temel özelliklerini gösterir.

Kapsayıcı öğesi, birincil görüntünün XMP meta verilerine kodlanır. kapsayıcıdaki medya öğelerinin dizinini tanımlar. Medya öğeleri konumlandırılmalıdır medya öğesi öğeleriyle aynı sıralamaya sahip olacak şekilde dizinini oluşturur ve sıkıca paketlenmiş olmalıdır.

Dizin yalnızca bir "Birincil" içerebilir ve bu öğenin en başta öğesine ekleyebilirsiniz.

Öğe adı Tür Açıklama
Kapsayıcı:Dizin Sıralı Yapı Dizisi Her biri bir Container:Item içeren sıralı struct dizisi kapsayıcının düzenini ve içeriğini tanımlamayı sağlar.

Öğe öğesi

Öğe öğeleri, her medya öğesinin uygulama tarafından nasıl kullanıldığını açıklar.

GContainer Item XMP uzantısının XMP ad alanı URI'si http://ns.google.com/photos/1.0/container/item/ Varsayılan ad alanı öneki Item.

İlk medya öğesi, birincil resim olmalıdır.Item:Semantic = "Primary" ve şurada listelenen bir Item:Mime belirtilmelidir: Öğe MIME türü değerleri.

Birincil resim öğesinin uzunluğu, birincil başlangıcından itibaren MIME türüne göre bir resmi.

Medya öğeleri, ek bilgiler belirten bir Item:Padding özelliği içerebilir medya öğesinin sonu ile bir sonraki medyanın başlangıcı arasındaki dolgu öğe. Container:Directory içindeki son medya öğesinde olduğunda Item:Padding, öğenin sonu ile dosyası olarak kaydedebilirsiniz.

Her medya öğesi, Item:Mime türünü ve Item:Semantic özelliklerini içermelidir. İkincil resim medya öğeleri, Item:Length özelliklerini içermelidir.

Sıralı medya öğeleri, kaynak verilerini dosya kapsayıcısı içinde paylaşabilir. İlgili içeriği oluşturmak için kullanılan ilk medya öğesi, kaynağın dosya kapsayıcısındaki konumunu belirler. ve sonraki paylaşılan medya öğelerinde Item:Length değeri 0 olarak ayarlandı. Böyle bir durumda, kaynak verilerinin kendisi bir container'dır; Item:URI, medya öğesi verilerinin kaynak içindeki konumu.

Kapsayıcıdaki medya öğesi kaynaklarının konumu toplanarak belirlenir birincil resim kodlamasının uzunluğunu, Item:Length önceki ikincil medya öğesi kaynakları ve önceki tüm Item:Padding değerler. Item:Padding, şunları yapmayan medya öğesi kaynaklarında 0 olarak kabul edilir: değerini belirtin.

Özellik adı Tür Açıklama
Öğe:Mime Metin Şuradaki medya öğesinin MIME türünü gösteren basit dize: emin olun. Tanım için Öğe MIME türü değerleri bölümüne bakın. Required.
Öğe:Anlamsal Metin Medyanın uygulamaya özgü anlamını gösteren basit dize öğe. Tanım için Öğe anlamsal değerleri bölümüne bakın. Required.
Öğe:Uzunluk Tam sayı Öğenin bayt cinsinden pozitif tam sayı uzunluğunu içeren basit dize. Uzunluk 0, medya öğesi kaynağının önceki medya öğesi. İkincil medya öğeleri için gereklidir. Birincil resim medya öğesine dokunun.
Öğe:Etiket Metin Birden fazla öğeyi belirginleştirmek için kullanılan, uygulama tanımlı dize öğeleri aynı Item:Semantic öğesine sahip. İsteğe bağlıdır.
Öğe:Dolgu Tam sayı Ekstra bayt cinsinden pozitif tam sayı uzunluğunu içeren bir dize medya öğesinin sonu ile sonrakinin başlangıcı arasındaki dolgu son medya öğesinde kullanıldığında dosyanın sonu Container:Directory Mevcut olmadığında 0 değeri varsayılır. İsteğe bağlıdır.
Öğe:URI Metin ISO/IEC 14496-12 bölüm 8.11.9'a uygun olan ve medya öğesi kaynağı içindeki medya verilerinin göreli URI'si. Varsayılan değer: birincil görüntü kaynağı olur. ISO temel medya dosyası biçimi ISO/IEC 14496-12 MIME türleri için isteğe bağlıdır. Aksi takdirde kullanılamaz.

Öğe MIME türü değerleri

Item:Mime özelliği, her medya öğesinin MIME türünü tanımlar dışı verilerdir.

Değer Açıklama
resim/jpeg JPEG resmi.

Örneği GContainer XMP

Aşağıdaki geçerli bir GContainer XMP paketi örneğinde, Giriş bölümünde gösterilen örnek dosyaya gidin.

<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.1.2">
  <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
    <rdf:Description
     xmlns:Container="http://ns.google.com/photos/1.0/container/"
     xmlns:Item="http://ns.google.com/photos/1.0/container/item/"
     xmlns:hdrgm="http://ns.adobe.com/hdr-gain-map/1.0/"
     hdrgm:Version="1.0">
      <Container:Directory>
        <rdf:Seq>
          <rdf:li rdf:parseType="Resource">
            <Container:Item
             Item:Semantic="Primary"
             Item:Mime="image/jpeg"/>
          </rdf:li>
          <rdf:li rdf:parseType="Resource">
            <Container:Item
             Item:Semantic="GainMap"
             Item:Mime="image/jpeg"
             Item:Length="66171"/>
          </rdf:li>
        </rdf:Seq>
      </Container:Directory>
    </rdf:Description>
  </rdf:RDF>
</x:xmpmeta>