Ultra HDR resimleri düzenleyin

Ultra HDR resim biçimi, cihazların daha parlak renklerle daha parlak görüntüler görüntüleyebilmesini sağlayan parlaklık bilgilerini kodlar. Uygulamanız bir Ultra HDR resmi düzenlerken bu parlaklık bilgilerini koruduğunuzdan emin olmalısınız. Kullanıcının cihazı Ultra HDR görüntüleri tam yoğunlukta görüntülemeyi desteklemiyorsa bile bu önemlidir. Sonuçta kullanıcı, görüntüsünü Ultra HDR'yi destekleyen bir cihazla başka biriyle paylaşabilir veya bu resmi kaydedip yıllar sonra yeni bir cihazda tekrar görebilir.

Bununla birlikte, Android'de bit eşlemleri düzenlemek için kullanılan çoğu yöntem Ultra HDR görüntü biçimini destekler. Kırpma veya döndürme gibi temel düzenlemeler yapıyorsanız bu işi standart Android yöntemleriyle yaparsınız. Sonuçta, yeni boyut veya yöne sahip bir ultra HDR görüntü elde edersiniz.

Görselin içeriğini değiştiriyorsanız işiniz daha zordur. Bu durumlarda, standart düzenleme yöntemleri eski resmin parlaklık bilgilerini korur, ancak bu istediğiniz olmayabilir. Böyle durumlarda, doğru sonucu almak için kazanç haritasını (resmin parlaklık bilgilerini kodlayan) düzenlemeniz veya kaldırmanız gerekebilir.

Ultra HDR biçimine genel bakış

Ultra HDR görüntü biçimi, Ultra HDR Görüntü spesifikasyonunda ayrıntılı olarak açıklanmıştır. Anlaşılması gereken en önemli nokta, bir Ultra HDR görüntünün hem birincil resim hem de kazanç haritası içermesidir.

  • Birincil resimde, resmin her bir pikselinin renk bilgileri bulunur.
  • Kazanma haritası, birincil resimle aynı oranlara sahip standart bir JPEG resmidir ancak aynı piksel boyutlarına sahip olması gerekmez. Kazanç haritasının her bir pikseli, birincil resmin karşılık gelen bölümünün parlaklığını belirtir.

Kazanç haritası gri tonlamalı veya renkli olabilir. Kazanç haritası renkliyse kazanç haritasındaki her renk kanalı, birincil resmin karşılık gelen kısmındaki renk kanalının parlaklığını belirtir. Kazanç haritası gri tonlamalıysa kazanç haritasının her bir pikseli, birincil resmin bu bölümündeki üç renk kanalının tümünün parlaklığını belirtir.

Kazanç haritası, birincil resimle aynı oranlara sahip olmalıdır ancak aynı piksel boyutlarına sahip olmak zorunda değildir. Aslında, Android platformu Ultra HDR görüntüler oluşturduğunda, birincil resimden daha küçük bir genişlik ve yüksekliğe sahip bir kazanç haritası oluşturur. Bu işlem, dosya boyutunu önemli ölçüde küçültür, ancak iyi bir sonuç için yeterli bilgiyi kodlamaya devam eder. Bu da, kazanç haritasındaki her bir pikselin, birincil resimde birkaç pikselin parlaklık bilgilerini depolayabileceği anlamına gelir.

Temel Ultra HDR düzenlemeleri

Bir Ultra HDR görüntüye temel dönüştürme işlemleri yapmak için Android Bitmap API'lerini kullanıyorsanız yöntemler, kazanç haritasında uygun değişiklikleri yapar. Aşağıdaki Bitmap işlemleri desteklenir:

  • Döndürme: Bir Ultra HDR görüntüyü döndürürseniz yöntem kazanç haritasını da döndürür.
  • Kırp: Ultra HDR resmi kırparsanız bu yöntem, haritayı uygun şekilde kırpar.
  • Ölçeklendirme: Bir Ultra HDR resmi ölçeklendirirseniz yöntem, kazanç haritasını, yeniden boyutlandırılan birincil resmin yarısı kadar genişliğe ve yarı yüksekliğine sahip olacak şekilde ölçeklendirir.

Her durumda, parlaklık bilgileri korunur.

Gelişmiş Ultra HDR düzenlemeleri

Bir Ultra HDR görüntü üzerinde daha ayrıntılı düzenlemeler yaparsanız kazanç haritası değiştirilmeden korunur ve istediğiniz sonuçları elde edemeyebilirsiniz.

Bu duruma neden olabilecek genel düzenlemeler şunları içerir:

  • Çıkartma veya emoji ekleme: Eklenen çıkartma, yapıştırıldığı alanla aynı parlaklık ve renk canlılığı değerlerine sahip olur.
  • İkinci bir görüntünün üzerine yerleştirme: Yeni resim, üzerine yerleştirdiği içeriğin parlaklık ve renk canlılığı bilgilerini kullanır.
  • Filtre ekleme: Eski kazanç haritasının bilgileri, değiştirilmiş birincil resim için uygun olmayabilir.

Her durumda, eski parlaklık ve renk canlılığı bilgileri korunur, ancak değiştirilen resim için uygun olmayabilir.

Orijinal kazanç haritası düzenlenen resim için uygunsa herhangi bir işlem yapmanız gerekmez. Kazanç haritasını değiştirmek istiyorsanız normal iş akışı şöyledir:

  1. Bitmap.getGainmap() yöntemini çağırarak resmin geçerli kazanç haritasını getirin ve önbelleğe alın.
  2. Birincil resmi istediğiniz gibi değiştirin.
  3. Önbelleğe alınan kazanç haritasında ilgili düzenlemeleri yapın. Örneğin, birincil resme bir emoji yapıştırdıysanız kazanç haritasının karşılık gelen bölümünü Color.GRAY gibi nötr bir değere ayarlayabilirsiniz.

  4. Bitmap.setGainmap() yöntemini çağırarak değiştirilen kazanç haritasını resme geri uygulayın.

Ek kaynaklar

Ultra HDR görüntüler hakkında daha fazla bilgi edinmek için aşağıdaki ek kaynaklara bakın: