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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

تتضمن التعديلات الشائعة التي قد تؤدي إلى هذا الموقف ما يلي:

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

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

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

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

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

مصادر إضافية

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