Gainmap Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
O Gainmap representa um mecanismo para aumentar uma imagem SDR para produzir um HDR com funcionalidade de ajuste de exibição variável.
[Android.Runtime.Register("android/graphics/Gainmap", ApiSince=34, DoNotGenerateAcw=true)]
public sealed class Gainmap : Java.Lang.Object, Android.OS.IParcelable, IDisposable
[<Android.Runtime.Register("android/graphics/Gainmap", ApiSince=34, DoNotGenerateAcw=true)>]
type Gainmap = class
inherit Object
interface IParcelable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- Herança
- Atributos
- Implementações
Comentários
O Gainmap representa um mecanismo para aumentar uma imagem SDR para produzir um HDR com funcionalidade de ajuste de exibição variável. É uma combinação de um conjunto de metadados que descreve como aplicar o gainmap, bem como um bitmap de canal 1 (como android.graphics.Bitmap.Config#ALPHA_8 ou 3 (como android.graphics.Bitmap.Config#ARGB_8888 com o canal alfa ignorado) bitmap que representa os próprios dados de gainmap.
Ao renderizar para uma android.content.pm.ActivityInfo#COLOR_MODE_HDR atividade, o hardware acelerado Canvas aplicará automaticamente o gainmap quando houver espaço para cabeçalho hdr suficiente disponível.
<Estrutura> de gainmap h3</h3>
O todo lógico de uma imagem gainmap'd consiste em um Bitmap base que representa a imagem original, como seria exibido sem suporte de gainmap, além de um gainmap com uma segunda imagem de aprimoramento. No caso de um JPEG, a imagem base seria a imagem SDR típica de 8 bits à qual o formato é comumente associado. A imagem de gainmap é inserida junto com a imagem base, geralmente em uma resolução inferior (como 1/4), juntamente com alguns metadados para descrever como aplicar o gainmap. A imagem de gainmap em si é então uma imagem em escala de cinza que representa a transformação a ser aplicada à imagem base para reconstruir uma representação hdr dela.
Como tal, essas "imagens gainmap" consistem em 3 partes - uma base Bitmap com uma Bitmap#getGainmap() que retorna uma instância dessa classe que, por sua vez, contém a camada de aprimoramento representada como outro Bitmap, acessível via#getGainmapContents()< h3>Aplicando um gainmap manualmente</h3>
Ao fazer renderização personalizada, como em um contexto OpenGL ES ou Vulkan, o gainmap não é aplicado automaticamente. Nessas situações, as etapas a seguir são apropriadas para renderizar o gainmap em combinação com a imagem base.
Suponha que nossa exibição tenha a taxa de HDR para SDR de H e desejamos exibir uma imagem com gainmap nesta exibição. Que B seja o valor de pixel da imagem base em um espaço de cor que tenha as primárias da imagem base e uma função de transferência linear. Deixe g ser o valor de pixel do gainmap. Que D seja o pixel de saída no mesmo espaço de cor que B. O valor de D é computado da seguinte maneira:
Primeiro, que W seja um parâmetro de peso determinando quanto o mapa de ganho será aplicado.
W = clamp((log(H) - log(minDisplayRatioForHdrTransition)) /
(log(displayRatioForFullHdr) - log(minDisplayRatioForHdrTransition), 0, 1)
Em seguida, deixe L ser o valor de gainmap no espaço de log. Calculamos isso do valor G que foi amostrado da textura da seguinte maneira:
L = mix(log(ratioMin), log(ratioMax), pow(G, gamma))
Por fim, aplique o gainmap para calcular D, o pixel exibido. Se a imagem base for SDR, então compute:
D = (B + epsilonSdr) * exp(L * W) - epsilonHdr
Na matemática acima, log() é um logaritmo natural e exp() é uma exponencialização natural. A base dessas funções é cancelada e não afeta o resultado, portanto, outras bases podem ser usadas se preferirem.
Java documentação para android.graphics.Gainmap.
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.
Construtores
| Nome | Description |
|---|---|
| Gainmap(Bitmap) |
Cria um gainmap de um determinado Bitmap. |
| Gainmap(Gainmap, Bitmap) |
Cria um novo gainmap usando o gainmap fornecido como a fonte de metadados e o bitmap fornecido como a substituição para gainmapContents |
Campos
| Nome | Description |
|---|---|
| GainmapDirectionHdrToSdr |
Obsoleto.
O gainmap será aplicado como se a imagem base fosse HDR e a aplicação completa dos resultados do gainmap em uma imagem SDR. |
| GainmapDirectionSdrToHdr |
Obsoleto.
O gainmap será aplicado como se a imagem base fosse SDR e a aplicação completa dos resultados do gainmap em uma imagem HDR. |
Propriedades
| Nome | Description |
|---|---|
| AlternativeImagePrimaries |
Obtém o colorspace no qual a matemática de gainmap deve ser aplicada. -ou- Define o colorspace no qual a matemática do gainmap deve ser aplicada. |
| Class |
Retorna a classe de runtime deste |
| Creator |
O Gainmap representa um mecanismo para aumentar uma imagem SDR para produzir um HDR com funcionalidade de ajuste de exibição variável. |
| DisplayRatioForFullHdr |
Obtém a taxa de hdr/sdr em que a aplicação do gainmap resulta em uma representação hdr -ou- Define a razão hdr/sdr em que a aplicação do gainmap resulta em uma representação HDR. |
| GainmapContents |
Define os dados de imagem do gainmap. |
| GainmapDirection |
Obtém a direção na qual a matemática de gainmap deve ser aplicada. -ou- Define a direção na qual a matemática do gainmap deve ser aplicada. |
| Handle |
O identificador para a instância subjacente do Android. (Herdado de Object) |
| JniIdentityHashCode |
Obtém o código de hash de identidade atribuído a esse par Java pelo runtime de interoperabilidade. (Herdado de Object) |
| JniManagedPeerState |
O Gainmap representa um mecanismo para aumentar uma imagem SDR para produzir um HDR com funcionalidade de ajuste de exibição variável. (Herdado de JavaObject) |
| JniPeerMembers |
O Gainmap representa um mecanismo para aumentar uma imagem SDR para produzir um HDR com funcionalidade de ajuste de exibição variável. |
| MinDisplayRatioForHdrTransition |
Obtém a taxa de hdr/sdr abaixo da qual a aplicação do gainmap resulta em uma representação de SDR. -ou- Define a taxa de hdr/sdr abaixo da qual a aplicação do gainmap resulta em uma representação de SDR. |
| PeerReference |
Obtém a referência de objeto JNI para este par Java. (Herdado de Object) |
| ThresholdClass |
Essa API dá suporte à infraestrutura do Mono para Android e não se destina a ser usada diretamente do seu código. (Herdado de Object) |
| ThresholdType |
Essa API dá suporte à infraestrutura do Mono para Android e não se destina a ser usada diretamente do seu código. (Herdado de Object) |
Métodos
| Nome | Description |
|---|---|
| Clone() |
Cria e retorna uma cópia desse objeto. (Herdado de Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
O Gainmap representa um mecanismo para aumentar uma imagem SDR para produzir um HDR com funcionalidade de ajuste de exibição variável. (Herdado de JavaObject) |
| DescribeContents() |
Nenhum conteúdo de pacote especial. |
| Dispose() |
Libera os recursos mantidos por esse par Java. (Herdado de Object) |
| Dispose(Boolean) |
Libera os recursos mantidos por esse par Java. (Herdado de Object) |
| DisposeUnlessReferenced() |
O Gainmap representa um mecanismo para aumentar uma imagem SDR para produzir um HDR com funcionalidade de ajuste de exibição variável. (Herdado de JavaObject) |
| Equals(Object) |
O Gainmap representa um mecanismo para aumentar uma imagem SDR para produzir um HDR com funcionalidade de ajuste de exibição variável. (Herdado de JavaObject) |
| Equals(Object) |
Indica se algum outro objeto é "igual a" este. (Herdado de Object) |
| GetEpsilonHdr() |
Obtém o hdr epsilon. |
| GetEpsilonSdr() |
Obtém o sdr epsilon. |
| GetGamma() |
Obtém o gama de gainmap. |
| GetHashCode() |
Retorna um valor de código hash para o objeto. (Herdado de Object) |
| GetRatioMax() |
Obtém a taxa máxima de gainmap. |
| GetRatioMin() |
Obtém a taxa máxima de gainmap. |
| JavaFinalize() |
Chamado pelo coletor de lixo em um objeto quando a coleta de lixo determina que não há mais referências ao objeto. (Herdado de Object) |
| Notify() |
Ativa um único thread que está aguardando no monitor deste objeto. (Herdado de Object) |
| NotifyAll() |
Ativa todos os threads que estão aguardando no monitor deste objeto. (Herdado de Object) |
| SetEpsilonHdr(Single, Single, Single) |
Define o hdr epsilon que é usado para evitar instabilidade numérica. |
| SetEpsilonSdr(Single, Single, Single) |
Define o epsilon de sdr que é usado para evitar instabilidade numérica. |
| SetGamma(Single, Single, Single) |
Define o gama de gainmap. |
| SetHandle(IntPtr, JniHandleOwnership) |
Define a propriedade Handle (Herdado de Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
O Gainmap representa um mecanismo para aumentar uma imagem SDR para produzir um HDR com funcionalidade de ajuste de exibição variável. (Herdado de JavaObject) |
| SetRatioMax(Single, Single, Single) |
Define a taxa máxima de gainmap. |
| SetRatioMin(Single, Single, Single) |
Define a taxa de ganho mínimo. |
| ToArray<T>() |
Cria uma matriz gerenciada com base nesse wrapper de matriz Java. (Herdado de Object) |
| ToString() |
Retorna uma representação de cadeia de caracteres do objeto. (Herdado de Object) |
| UnregisterFromRuntime() |
Cancela o registro desse par Java do runtime de interoperabilidade. (Herdado de Object) |
| Wait() |
Faz com que o thread atual aguarde até ser despertado, normalmente por ser <notificado/em> ou <em>interrompido</em>.<> (Herdado de Object) |
| Wait(Int64, Int32) |
Faz com que o thread atual aguarde até que ele seja despertado, normalmente por ser <>notificado</em> ou <em>interrompido</em>, ou até que uma determinada quantidade de tempo real tenha decorrido. (Herdado de Object) |
| Wait(Int64) |
Faz com que o thread atual aguarde até que ele seja despertado, normalmente por ser <>notificado</em> ou <em>interrompido</em>, ou até que uma determinada quantidade de tempo real tenha decorrido. (Herdado de Object) |
| WriteToParcel(Parcel, ParcelableWriteFlags) |
Escreva o gainmap no pacote. |
Implantações explícitas de interface
| Nome | Description |
|---|---|
| IJavaPeerable.Disposed() |
O Gainmap representa um mecanismo para aumentar uma imagem SDR para produzir um HDR com funcionalidade de ajuste de exibição variável. (Herdado de JavaObject) |
| IJavaPeerable.Finalized() |
O Gainmap representa um mecanismo para aumentar uma imagem SDR para produzir um HDR com funcionalidade de ajuste de exibição variável. (Herdado de JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
O Gainmap representa um mecanismo para aumentar uma imagem SDR para produzir um HDR com funcionalidade de ajuste de exibição variável. (Herdado de JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
O Gainmap representa um mecanismo para aumentar uma imagem SDR para produzir um HDR com funcionalidade de ajuste de exibição variável. (Herdado de JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
O Gainmap representa um mecanismo para aumentar uma imagem SDR para produzir um HDR com funcionalidade de ajuste de exibição variável. (Herdado de JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
O Gainmap representa um mecanismo para aumentar uma imagem SDR para produzir um HDR com funcionalidade de ajuste de exibição variável. (Herdado de JavaObject) |
| IJavaPeerable.UnregisterFromRuntime() |
O Gainmap representa um mecanismo para aumentar uma imagem SDR para produzir um HDR com funcionalidade de ajuste de exibição variável. |
Métodos de Extensão
| Nome | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtém o nome JNI do tipo da instância |
| JavaAs<TResult>(IJavaPeerable) |
Tente coagir a digitar |
| JavaCast<TResult>(IJavaObject) |
Executa uma conversão de tipo marcada por runtime do Android. |
| JavaCast<TResult>(IJavaObject) |
O Gainmap representa um mecanismo para aumentar uma imagem SDR para produzir um HDR com funcionalidade de ajuste de exibição variável. |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Tente coagir a digitar |