Ultra HDR-Bilder bearbeiten

Das Ultra HDR-Bildformat codiert die Leuchtdichteinformationen. mit der Geräte heller mit intensiveren Farben. Wenn Sie in Ihrer App ein Ultra-HDR-Bild bearbeiten, sollten Sie diese Informationen zur Leuchtkraft beibehalten. Das ist auch dann wichtig, wenn das Gerät des Nutzers die Anzeige eines Ultra-HDR-Bilds in voller Intensität nicht unterstützt. Schließlich kann der Nutzer sein Bild mit einer Person teilen, die ein Gerät mit Ultra-HDR-Unterstützung hat, oder es speichern und sich Jahre später auf einem neuen Gerät ansehen.

Die meisten Android-Methoden zum Bearbeiten von Bitmaps unterstützen das Ultra-HDR-Bildformat. Wenn Sie ein Bild nur grundlegend bearbeiten, z. B. zuschneiden oder drehen, reichen die Standardmethoden von Android aus. Sie erhalten ein Ultra-HDR-Bild mit den neuen Abmessungen oder der neuen Ausrichtung.

Die Aufgabe ist schwieriger, wenn Sie den Inhalt des Bildes ändern. In diesen Fällen bleiben bei den Standardbearbeitungsmethoden die Informationen zur Leuchtkraft des alten Bildes erhalten, was nicht unbedingt gewünscht ist. In diesen Fällen müssen Sie möglicherweise die Gain-Map (die die Luminanzinformationen des Bildes codiert) bearbeiten oder entfernen, um das richtige Ergebnis zu erhalten.

Ultra HDR-Format – Übersicht

Das Ultra HDR-Bildformat wird in der Ultra HDR-Bildspezifikation ausführlich beschrieben. Das Wichtigste ist, dass ein Ultra-HDR-Bild sowohl ein Primärbild als auch eine Gewinnkarte enthält.

  • Das Hauptbild enthält die Farbinformationen für jedes Pixel des Bilds.
  • Die Verstärkungskarte ist ein standardmäßiges JPEG-Bild mit denselben Proportionen wie das Hauptbild, aber nicht unbedingt mit denselben Pixelabmessungen. Jedes Pixel der Verstärkungskarte gibt die Leuchtkraft des entsprechenden Teils des primären Bildes an.

Die Verstärkungskarte kann entweder Graustufen oder Farbe haben. Wenn die Verstärkungskarte farbig ist, gibt jeder Farbkanal in der Verstärkungskarte die Leuchtkraft dieses Farbkanals im entsprechenden Teil des primären Bildes an. Wenn die Verstärkungskarte in Graustufen angezeigt wird, Pixel der Verstärkungskarte die Helligkeit aller drei Farbkanäle auf Teil des primären Bildes.

Die Gewinnkarte muss dieselben Proportionen wie das primäre Bild haben, aber nicht dieselben Pixelabmessungen. Wenn auf der Android-Plattform Ultra-HDR-Bilder erstellt werden, wird eine Gewinnkarte mit einer geringeren Breite und Höhe als das primäre Bild erstellt. Dadurch wird die Dateigröße deutlich reduziert, es werden aber trotzdem genügend Informationen für ein gutes Ergebnis codiert. Das bedeutet, dass jedes Pixel in der Verstärkungskarte die Leuchtdichteinformationen für mehrere Pixel im primäres Bild.

Einfache Ultra HDR-Bearbeitungen

Wenn Sie die Android Bitmap APIs verwenden, um einfache Umwandlungen in ein Ultra-HDR-Bild vornehmen, sorgen die Methoden dafür, Änderungen an der Verstärkungskarte. Die folgenden Bitmap-Vorgänge werden unterstützt:

  • Drehen: Wenn Sie ein Ultra-HDR-Bild drehen, wird auch die Gewinnkarte gedreht.
  • Zuschneiden: Wenn Sie ein Ultra-HDR-Bild zuschneiden, wird die Gewinnkarte entsprechend zugeschnitten.
  • Skalierung:Wenn Sie ein Ultra HDR-Bild skalieren, wird die Verstärkungskarte skaliert. sodass sie halb so breit und hoch wie das größenangepasste primäre Bild ist.

In jedem Fall bleiben die Informationen zur Leuchtkraft erhalten.

Erweiterte Bearbeitung in Ultra HDR

Wenn ihr ein Ultra HDR-Bild noch aufwendiger bearbeitet, wird die Verstärkung unverändert bleiben, sodass Sie möglicherweise nicht die gewünschten Ergebnisse erhalten.

Zu den häufigsten Änderungen, die zu dieser Situation führen können, gehören:

  • Sticker oder Emojis hinzufügen:Der hinzugefügte Sticker hat dieselben Leuchtkraft und Farbintensität der eingefügten Fläche.
  • Ein zweites Bild als Overlay hinzufügen:Das neue Bild würde die Leuchtkraft und Informationen zur Farbkraft des überlagernden Inhalts.
  • Filter hinzufügen: Die Informationen der alten Verstärkungskarte sind möglicherweise nicht angemessen. für das geänderte primäre Image.

In jedem Fall bleiben die alten Informationen zu Leuchtkraft und Farbintensität erhalten, aber möglicherweise für das geänderte Image nicht geeignet.

Wenn die ursprüngliche Verstärkungskarte für das bearbeitete Bild geeignet ist, müssen Sie nichts weiter tun. Wenn Sie die Gewinnkarte ändern möchten, gehen Sie so vor:

  1. Rufen Sie die aktuelle Verstärkungskarte des Bildes ab, indem Sie Folgendes aufrufen: Bitmap.getGainmap() und speichern Sie sie im Cache.
  2. Ändern Sie das Hauptbild nach Bedarf.
  3. Nehmen Sie die entsprechenden Änderungen an der im Cache gespeicherten Verstärkungskarte vor. Wenn Sie beispielsweise in das Hauptbild eingefügt haben, können Sie das entsprechende der Verstärkungskarte einem neutralen Wert wie Color.GRAY zu.

  4. Wende die geänderte Verstärkungskarte wieder auf das Bild an, indem du Bitmap.setGainmap() aufrufst.

Weitere Informationen

Weitere Informationen zu Ultra HDR-Bildern finden Sie in den folgenden zusätzlichen Ressourcen: