تعديل الصور بتقنية Ultra HDR

يعمل تنسيق الصور بدقة HDR فائقة على ترميز معلومات الإضاءة التي تتيح للأجهزة عرض صور أكثر سطوعًا بألوان أكثر كثافة. عندما يعدّل تطبيقك صورة بنطاق عالي الديناميكية للغاية، يجب الحرص على الاحتفاظ بمعلومات الإضاءة هذه. وهذا مهم حتى إذا كان جهاز المستخدم لا يتيح عرض صورة بدقة HDR الفائقة بكثافة كاملة. بعد كل شيء، قد يشارك المستخدم صورته مع شخص لديه جهاز متوافق مع تقنية Ultra HDR، أو قد يحفظ هذه الصورة ويشاهدها مرة أخرى على جهاز جديد بعد سنوات.

والخبر السارّ هو أنّ معظم طرق تعديل ملفات البِت المعروضة على Android متوافقة مع تنسيق الصور بدقة HDR الفائقة. إذا كنت بصدد إجراء تعديلات أساسية على صورة، مثل اقتصاصها أو تدويرها، يمكنك استخدام طرق Android العادية لإجراء ذلك، وستحصل في النهاية على صورة ذات نطاق عالي جدًا من الديناميكية باستخدام الأبعاد أو الاتجاه الجديدَين.

وتصبح المهمة أكثر صعوبة إذا كنت تعدّل محتوى الصورة. في هذه الحالات، تحافظ طرق التعديل العادية على معلومات الإضاءة في الصورة القديمة، ما قد لا يكون ما تريده. في هذه الحالات، قد تحتاج إلى تعديل أو إزالة خريطة الكسب (التي تُشفِّر معلومات سطوع الصورة) للحصول على النتيجة الصحيحة.

نظرة عامة على تنسيق "دقة HDR الفائقة"

يمكنك الاطّلاع على وصف مفصّل لتنسيق الصور بدقة HDR الفائقة في مواصفات الصور بدقة HDR الفائقة. من المهم معرفة أنّ الصور بدقة HDR الفائقة تحتوي على كل من الصورة الأساسية وخريطة الكسب.

  • تحتوي الصورة الأساسية على معلومات اللون لكل بكسل من الصورة.
  • خريطة الكسب هي صورة JPEG عادية بنسبة العرض إلى الارتفاع نفسها التي تتسم بها الصورة الأساسية، ولكن ليس بالضرورة أن تكون أبعاد البكسل متطابقة. يحدِّد كل بكسل من خريطة الكسب مستوى الإضاءة للجزء المقابل من الصورة الأساسية.

يمكن أن تكون خريطة الكسب إما بالأبيض والأسود أو بالألوان. إذا كانت خريطة الكسب ملونة، تحدِّد كل قناة لون على خريطة الكسب مستوى الإضاءة لتلك القناة على الجزء المقابل من الصورة الأساسية. إذا كانت خريطة الكسب ذات تدرج رمادي، يحدِّد كل بكسل من خريطة الكسب مستوى الإضاءة لجميع قنوات الألوان الثلاثة في هذا الجزء من الصورة الأساسية.

يجب أن تتطابق أبعاد خريطة الكسب مع أبعاد الصورة الأساسية، ولكن ليس بالضرورة أن تتطابق أبعاد البكسل. في الواقع، عندما تنشئ منصة Android صورًا بتقنية Ultra HDR، فإنّها تنشئ خريطة مكاسب بعرض وارتفاع أصغر مقارنةً بالصورة الأساسية، ما يجعل حجم الملف أصغر بكثير، ولكنه يظل يُشفِّر معلومات كافية للحصول على نتيجة جيدة. وهذا يعني أنّ كل بكسل في خريطة الكسب قد يخزّن معلومات الإضاءة لعدة بكسل في الصورة الأساسية.

التعديلات الأساسية في ميزة "دقة HDR الفائقة"

في حال استخدام واجهات برمجة التطبيقات Bitmap في Android لإجراء تحولات dasar في صورة Ultra HDR، ستُجري الطرق التغييرات المناسبة على خريطة الكسب. يمكن تنفيذ العمليات Bitmap التالية:

  • التدوير: في حال تدوير صورة بدقة HDR فائقة، ستؤدي الطريقة إلى تدوير منحنى الاستفادة أيضًا.
  • الاقتصاص: في حال اقتصاص صورة بدقة Ultra HDR، تقتطع الطريقة خريطة الكسب بشكل مناسب.
  • الحجم: في حال تغيير حجم صورة بدقة HDR فائقة، تعمل الطريقة على تغيير حجم خريطة الكسب لتكون نصف عرض الصورة الأساسية التي تم تغيير حجمها ونصف ارتفاعها.

في كلتا الحالتَين، يتم الاحتفاظ بمعلومات الإضاءة.

التعديلات المتقدّمة في ميزة "دقة HDR الفائقة"

إذا أجريت تعديلات أكثر تفصيلاً على صورة Ultra HDR، يتم الحفاظ على خريطة الكسب بدون تغيير، ما قد لا يمنحك النتائج التي تريدها.

تشمل التعديلات الشائعة التي قد تؤدي إلى حدوث ذلك ما يلي:

  • إضافة ملصقات أو رموز تعبيرية: سيحتوي الملصق المُضاف على قيم سطوع ودرجة وضوح اللون نفسها التي تتضمّنها المنطقة التي تم لصقه عليها.
  • تداخل صورة ثانية: ستستخدم الصورة الجديدة معلومات الإضاءة ودرجة حيوية الألوان للمحتوى الذي يتم تداخله.
  • إضافة فلاتر: قد لا تكون معلومات خريطة الكسب القديمة مناسبة للصورة الأساسية المعدَّلة.

في كلتا الحالتَين، يتم الاحتفاظ بمعلومات الإضاءة القديمة ودرجة وضوح الألوان، ولكن قد لا تكون هذه المعلومات مناسبة للصورة المعدَّلة.

إذا كانت خريطة الكسب الأصلية مناسبة للصورة المعدَّلة، ليس عليك اتّخاذ أي إجراء. إذا كنت تريد تعديل خريطة الكسب، اتّبِع سير العمل المعتاد:

  1. استرِج خريطة الكسب الحالية للصورة من خلال استدعاء دالة Bitmap.getGainmap() وتخزينها مؤقتًا.
  2. عدِّل الصورة الأساسية على النحو المطلوب.
  3. إجراء التعديلات المناسبة على خريطة المكاسب المخزّنة مؤقتًا على سبيل المثال، إذا لصقت رمزًا تعبيريًا على الصورة الأساسية، يمكنك ضبط الجزء المناظر من خريطة المكاسب على قيمة محايدة، مثل Color.GRAY.

  4. تطبيق خريطة الكسب المعدَّلة على الصورة مرة أخرى من خلال استدعاء Bitmap.setGainmap()

مصادر إضافية

لمزيد من المعلومات حول الصور بدقة HDR فائقة، اطّلِع على المراجع الإضافية التالية: