Gainmap Clase

Definición

Gainmap representa un mecanismo para aumentar una imagen de SDR para generar un HDR con la capacidad de ajuste de pantalla variable.

[Android.Runtime.Register("android/graphics/Gainmap", ApiSince=34, DoNotGenerateAcw=true)]
public sealed class Gainmap : Java.Lang.Object, Android.OS.IParcelable, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("android/graphics/Gainmap", ApiSince=34, DoNotGenerateAcw=true)>]
type Gainmap = class
    inherit Object
    interface IParcelable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Herencia
Gainmap
Atributos
Implementaciones

Comentarios

Gainmap representa un mecanismo para aumentar una imagen de SDR para generar un HDR con la capacidad de ajuste de pantalla variable. Se trata de una combinación de un conjunto de metadatos que describen cómo aplicar el mapa de ganancia, así como un mapa de bits de canal 1 (como android.graphics.Bitmap.Config#ALPHA_8 o 3 (por android.graphics.Bitmap.Config#ARGB_8888 ejemplo, con el canal alfa omitido) que representa los propios datos de mapa de ganancia.

Al representar en una android.content.pm.ActivityInfo#COLOR_MODE_HDR actividad, el hardware acelerado Canvas aplicará automáticamente el mapa de ganancia cuando haya disponible suficiente espacio para la cabeza HDR.

<h3>Gainmap Structure</h3>

La totalidad lógica de una imagen de mapa de ganancia consta de un mapa de bits base que representa la imagen original como se mostraría sin compatibilidad con el mapa de ganancia, además de un mapa de ganancia con una segunda imagen de mejora. En el caso de un JPEG, la imagen base sería la imagen SDR típica de 8 bits con la que el formato se asocia normalmente. La imagen de mapa de ganancia se incrusta junto con la imagen base, a menudo en una resolución inferior (como 1/4th), junto con algunos metadatos para describir cómo aplicar el mapa de ganancia. La propia imagen de mapa de ganancia es una imagen de escala gris que representa la transformación que se va a aplicar a la imagen base para reconstruir una representación HDR de ella.

Por lo tanto, estas "imágenes de mapa de ganancia" constan de tres partes: una base Bitmap con un Bitmap#getGainmap() que devuelve una instancia de esta clase que, a su vez, contiene la capa de mejora representada como otro mapa de bits, accesible a través<#getGainmapContents() de h3>Aplicando un mapa de ganancia manualmente</h3>

Al realizar una representación personalizada como en un contexto de OpenGL ES o Vulkan, el mapa de ganancia no se aplica automáticamente. En tales situaciones, los pasos siguientes son adecuados para representar el mapa de ganancia en combinación con la imagen base.

Supongamos que nuestra pantalla tiene una relación HDR a SDR de H y queremos mostrar una imagen con mapa de ganancia en esta pantalla. Deje que B sea el valor de píxel de la imagen base en un espacio de colores que tenga las principales de la imagen base y una función de transferencia lineal. Deje que G sea el valor de píxel del mapa de ganancia. Deje que D sea el píxel de salida en el mismo espacio de colores que B. El valor de D se calcula de la siguiente manera:

En primer lugar, deje que W sea un parámetro de peso que determine cuánto se aplicará el mapa de ganancia.

W = clamp((log(H)                      - log(minDisplayRatioForHdrTransition)) /
                        (log(displayRatioForFullHdr) - log(minDisplayRatioForHdrTransition), 0, 1)

A continuación, deje que L sea el valor de mapa de ganancia en el espacio de registro. Calculamos esto a partir del valor G que se muestreó a partir de la textura de la siguiente manera:

L = mix(log(ratioMin), log(ratioMax), pow(G, gamma))

Por último, aplique el mapa de ganancia para calcular D, el píxel mostrado. Si la imagen base es SDR, calcule:

D = (B + epsilonSdr) * exp(L * W) - epsilonHdr

En las matemáticas anteriores, log() es un logaritmo natural y exp() es exponente natural. La base de estas funciones cancela y no afecta al resultado, por lo que se pueden usar otras bases si se prefiere.

Documentación de Java para android.graphics.Gainmap.

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código y se usan según los términos descritos en la creative Commons 2.5.

Constructores

Gainmap(Bitmap)

Crea un mapa de ganancia a partir de un mapa de bits determinado.

Propiedades

Class

Devuelve la clase en tiempo de ejecución de este Objectobjeto .

(Heredado de Object)
Creator

Gainmap representa un mecanismo para aumentar una imagen de SDR para generar un HDR con la capacidad de ajuste de pantalla variable.

DisplayRatioForFullHdr

Obtiene la relación hdr/sdr en la que el mapa de ganancia se aplica completamente. -o bien- Establece la relación hdr/sdr en el que se aplica completamente el mapa de ganancia.

GainmapContents

Establece los datos de imagen del mapa de ganancia.

Handle

Identificador de la instancia de Android subyacente.

(Heredado de Object)
JniIdentityHashCode

Gainmap representa un mecanismo para aumentar una imagen de SDR para generar un HDR con la capacidad de ajuste de pantalla variable.

(Heredado de Object)
JniPeerMembers

Gainmap representa un mecanismo para aumentar una imagen de SDR para generar un HDR con la capacidad de ajuste de pantalla variable.

MinDisplayRatioForHdrTransition

Obtiene la relación hdr/sdr por debajo de la que solo se muestra la imagen de SDR. -o bien- Establece la relación hdr/sdr por debajo de la cual solo se muestra la imagen de SDR.

PeerReference

Gainmap representa un mecanismo para aumentar una imagen de SDR para generar un HDR con la capacidad de ajuste de pantalla variable.

(Heredado de Object)
ThresholdClass

Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código.

(Heredado de Object)
ThresholdType

Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código.

(Heredado de Object)

Métodos

Clone()

Crea y devuelve una copia de este objeto.

(Heredado de Object)
DescribeContents()

No hay contenido especial de parcelas.

Dispose()

Gainmap representa un mecanismo para aumentar una imagen de SDR para generar un HDR con la capacidad de ajuste de pantalla variable.

(Heredado de Object)
Dispose(Boolean)

Gainmap representa un mecanismo para aumentar una imagen de SDR para generar un HDR con la capacidad de ajuste de pantalla variable.

(Heredado de Object)
Equals(Object)

Indica si algún otro objeto es "igual a" este.

(Heredado de Object)
GetEpsilonHdr()

Obtiene el epsilon hdr.

GetEpsilonSdr()

Obtiene el sdr epsilon.

GetGamma()

Obtiene el mapa de ganancia gamma.

GetHashCode()

Devuelve un valor de código hash del objeto.

(Heredado de Object)
GetRatioMax()

Obtiene la relación de mapa de ganancia máxima.

GetRatioMin()

Obtiene la relación de mapa de ganancia máxima.

JavaFinalize()

Llamado por el recolector de elementos no utilizados en un objeto cuando la recolección de elementos no utilizados determina que no hay más referencias al objeto.

(Heredado de Object)
Notify()

Activa un único subproceso que está esperando en el monitor de este objeto.

(Heredado de Object)
NotifyAll()

Activa todos los subprocesos que están esperando en el monitor de este objeto.

(Heredado de Object)
SetEpsilonHdr(Single, Single, Single)

Establece el epsilon hdr que se usa para evitar inestabilidad numérica.

SetEpsilonSdr(Single, Single, Single)

Establece el epsilon sdr que se usa para evitar inestabilidad numérica.

SetGamma(Single, Single, Single)

Establece el mapa de ganancia gamma.

SetHandle(IntPtr, JniHandleOwnership)

Establece la propiedad Handle.

(Heredado de Object)
SetRatioMax(Single, Single, Single)

Establece la relación de mapa de ganancia máxima.

SetRatioMin(Single, Single, Single)

Establece la relación de mapa de ganancia mínima.

ToArray<T>()

Gainmap representa un mecanismo para aumentar una imagen de SDR para generar un HDR con la capacidad de ajuste de pantalla variable.

(Heredado de Object)
ToString()

Devuelve una representación de cadena del objeto.

(Heredado de Object)
UnregisterFromRuntime()

Gainmap representa un mecanismo para aumentar una imagen de SDR para generar un HDR con la capacidad de ajuste de pantalla variable.

(Heredado de Object)
Wait()

Hace que el subproceso actual espere hasta que se despierte, normalmente por ser em notificado/em> o <em>interrumpido</em>.<><

(Heredado de Object)
Wait(Int64)

Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <notificado<>/em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real.

(Heredado de Object)
Wait(Int64, Int32)

Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <notificado<>/em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real.

(Heredado de Object)
WriteToParcel(Parcel, ParcelableWriteFlags)

Escriba el mapa de ganancia en la parcela.

Implementaciones de interfaz explícitas

IJavaPeerable.Disposed()

Gainmap representa un mecanismo para aumentar una imagen de SDR para generar un HDR con la capacidad de ajuste de pantalla variable.

(Heredado de Object)
IJavaPeerable.DisposeUnlessReferenced()

Gainmap representa un mecanismo para aumentar una imagen de SDR para generar un HDR con la capacidad de ajuste de pantalla variable.

(Heredado de Object)
IJavaPeerable.Finalized()

Gainmap representa un mecanismo para aumentar una imagen de SDR para generar un HDR con la capacidad de ajuste de pantalla variable.

(Heredado de Object)
IJavaPeerable.JniManagedPeerState

Gainmap representa un mecanismo para aumentar una imagen de SDR para generar un HDR con la capacidad de ajuste de pantalla variable.

(Heredado de Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Gainmap representa un mecanismo para aumentar una imagen de SDR para generar un HDR con la capacidad de ajuste de pantalla variable.

(Heredado de Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Gainmap representa un mecanismo para aumentar una imagen de SDR para generar un HDR con la capacidad de ajuste de pantalla variable.

(Heredado de Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Gainmap representa un mecanismo para aumentar una imagen de SDR para generar un HDR con la capacidad de ajuste de pantalla variable.

(Heredado de Object)

Métodos de extensión

JavaCast<TResult>(IJavaObject)

Realiza una conversión de tipos comprobados en tiempo de ejecución de Android.

JavaCast<TResult>(IJavaObject)

Gainmap representa un mecanismo para aumentar una imagen de SDR para generar un HDR con la capacidad de ajuste de pantalla variable.

GetJniTypeName(IJavaPeerable)

Gainmap representa un mecanismo para aumentar una imagen de SDR para generar un HDR con la capacidad de ajuste de pantalla variable.

Se aplica a